- BASH – оболочка пользователя подсистемы Windows для Linux (WSL) в Windows 10.
- Как установить и использовать Bash в Windows 10
- Немного пояснений
- Как установить Bash в Windows 10
- Как использовать Bash Ubuntu под Windows
- ‼️ 4 способа запустить команды Linux в Windows
- Использование команд Linux внутри Windows
- 1. Используйте оболочку Linux Bash в Windows 10
- 2. Используйте Git Bash для запуска команд Bash в Windows
- 3. Использование команд Linux в Windows с Cygwin
- 4. Используйте Linux на виртуальной машине
BASH – оболочка пользователя подсистемы Windows для Linux (WSL) в Windows 10.
Начиная с 2016 в Windows 10 появилась возможность использования подсистемы Windows для Linux (WSL — W indows S ubsystem for L inux), позволяющей легко и просто установить из Microsoft Store некоторые дистрибутивы Linux, в том числе Debian, Ubuntu, Kali, Suse. Подробности — Linux в среде Windows 10. При использовании WSL, пользователь получает не изолированную виртуальную машину с Linux, а интегрированную в Windows подсистему с возможностью выполнения утилит командной строки из обеих ОС, запуск программ одной ОС из среды другой и т.п. Кроме того, WSL предоставляет пользователю Windows 10 возможность использования нескольких дистрибутивов Linux одновременно.
bash.exe — утилита командной строки в подсистеме Windows для Linux (Windows Subsystem for Linux), обеспечивающая оболочку bash пользователя (shell) операционной системы Linux. Представляет собой командный процессор, работающий, как правило, в интерактивном режиме в текстовом окне. Bash также может читать команды из файла, который называется скриптом или сценарием. Нужно отметить, что команда разработчиков подсистемы WSL, в том числе и bash.exe , проделала огромную работу над программой, и с каждым новым релизом Windows 10, ее возможности становятся все более приближенными к возможностям классической оболочки bash Linux, и приобретают дополнительные качества, направленные на обеспечение максимальной совместимости Windows и Linux.
Формат командной строки:
bash [длинные опции GNU] [опции] .
bash [длинные опции GNU] [опции] файл_со_скриптом.
Длинные опции GNU:
—debug
—debugger
—dump-po-strings
—dump-strings
—help
—init-file
—login
—noediting
—noprofile
—norc
—posix
—rcfile
—restricted
—verbose
—version
-ilrsD или -c команда или -O короткие параметры ( только при запуске)
-abefhkmnptuvxBCHP или опция -o
Для получения дополнительной информации о параметрах командной строки используется команда:
bash -c «help set»
Для получения подсказки по внутренним командам bash используется команда:
bash -c help команда
В системе могут быть установлены несколько дистрибутивов Linux, и один из них является дистрибутивом по умолчанию. Утилита работает именно с данным дистрибутивом. Список зарегистрированных в системе дистрибутивов можно получить с помощью команд:
wslconfig /l
или
Первым в списке дистрибутивов отображается дистрибутив по умолчанию:
kali-linux (по умолчанию)
Ubuntu
SLES-15
ubuntu2
Ubuntu-18.04
Дистрибутив по умолчанию можно сменить с помощью команд wsl или wslconfig :
wsl —setdefault kali-linux — определить дистрибутив kali-linux дистрибутивом по умолчанию.
wslconfig /setdefault ubuntu — определить дистрибутив ubuntu дистрибутивом по умолчанию.
При запуске bash.exe без параметров, программа выполняется в интерактивном режиме, ожидая ввода команд пользователем. Строка приглашения содержит имя пользователя, компьютера и текущий каталог, унаследованный из среды windows:
Логические диски Windows монтируются в среде Linux в точки монтирования /mnt/c для диска C: , /mnt/d для диска D: и т.д. Путь /mnt/c/WINDOWS/system32 соответствует C:\WINDOWS\system32 в Windows. Оболочка для дистрибутива Ubuntu запускается в контексте учетной записи суперпользователя root , но, например, для kali-linux — в контексте учетной записи пользователя.
Для просмотра переменных окружения можно воспользоваться командой env . Пример выводимой информации:
SHELL=/bin/bash
WSL_DISTRO_NAME=kali-linux
NAME=Win10n
PWD=/mnt/c/WINDOWS/system32
LOGNAME=user
HOME=/home/user
LANG=en_US.UTF-8
TERM=xterm-256color
USER=user
SHLVL=1
WSLENV=
PATH=/usr/local/sbin:/usr/local/bin: /usr/sbin:/usr/bin:/sbin:/bin /mnt/c/WINDOWS/system32: /mnt/c/WINDOWS: /mnt/c/WINDOWS/System32/Wbem: /mnt/c/WINDOWS/System32 /WindowsPowerShell/v1.0/: /mnt/c/WINDOWS/System32 /OpenSSH/: /mnt/c/Users/usr/AppData/Local/ Microsoft/WindowsApps
HOSTTYPE=x86_64
_=/usr/bin/env
Переменная WSL_DISTRO_NAME определяет имя дистрибутива Linux в подсистеме WSL . Переменная WSLENV может быть использована для обмена данными между скриптами, выполняющимися как в среде Linux, так и в среде Windows. Переменная PATH задает пути поиска исполняемых файлов в обеих ОС.
Работу в среде выбранного дистрибутива Linux следует начать с обновления пакетов программ, например, для пользователя kali-linux :
sudo apt update
sudo apt upgrade
Для случая выполнения оболочки bash в контексте учетной записи root, команда sudo не нужна:
apt update
Для удобства работы можно установить файловый менеджер Midnight Commander :
И, например, на левой панели отобразить файловую структуру Linux, а на правой – файловую структуру Windows:
Оболочка позволяет выполнять запуск программ как Linux, так и Windows:
ping yandex.ru — выполнить опрос узла yandex.ru утилитой ping из среды Linux
/mnt/c/WINDOWS/system32/notepad.exe — запустить приложение Блокнот из среды Windows
В случае запуска из текущего каталога, полный путь указывать не обязательно:
По соображениям безопасности, текущий каталог в Linux не включается в пути поиска исполняемых файлов, и должен быть указан явно — ./
Выполняемые командой bash скрипты (сценарии) могут находиться как в файловой системе Linux, так и в файловой системе Windows:
bash /home/user/scripts/test.sh — выполнить скрипт test.sh из домашнего каталога пользователя user Linux
bash /mnt/d/scripts/test.sh — выполнить скрипт test.sh из каталога файловой системы Windows D:\scripts
bash ./test.sh — выполнить скрипт test.sh из текущего каталога файловой системы (Windows или Linux).
Подсистема Windows для Linux не предоставляет пользователю полноценное ядро Linux, по крайней мере, на момент реализации в Windows 10.0.18362.295. По этой причине, например, невозможно установить драйверы ядра (kernel drivers), что накладывает определенные ограничения на использование программного обеспечения, которому необходим доступ к оборудованию – датчикам температуры, напряжения, контроля скорости вращения вентиляторов и т.п. (lm-sensors и ему подобное ПО).
При работе с командной строкой в Windows 10 вместо bash удобнее пользоваться новой командой wsl, а также новым Терминалом Windows вместо стандартной консоли.
Как установить и использовать Bash в Windows 10
С недавним Anniversary Update пользователи Windows 10 получили много новых улучшений и возможностей. Одной из них стала возможность использовать обычную, знакомую всем Linux-оидам командную оболочку Bash. На самом деле о данном нововведении было известно еще с весны, но на тот момент попробовать Bash на Windows 10 могли лишь участники программы предварительной оценки. Теперь же он доступен для всех желающих. И ниже мы покажем, каким образом можно установить и как использовать Bash в Windows 10. А на самом деле все, конечно, очень интересно: в Linux теперь можно установить PowerShell, а Bash в Windows.
Немного пояснений
Microsoft назвала реализацию запуска Bash в Windows не иначе как — Windows подсистема для Linux. Чтобы вы понимали, это не виртуальная машина, не контейнер или перекомпилированное под Windows Linux ПО.
Принцип работы Windows подсистемы для Linux похож на Wine: системные вызовы Linux приложений в реальном времени транслируются в системные вызовы Windows. Так же, как Wine позволяет запускать Window приложения под Linux новая технология Microsoft дает возможность запускать Linux ПО в своей ОС.
Работа редмондовцев над новой функцией велась совместно с Canonical, поэтому сейчас в Windows 10 используется Ubuntu.
Тем не менее, в отличии от того же Wine, где можно запускать графические приложения, Ubuntu под Windows работает только в текстовом режиме, то есть вы можете пользоваться лишь башем и консольными утилитами. Ни о каком серверном или графическом ПО речь не идет (хотя были новости и о том, что некоторым умельцам все же удавалось запускать графические оболочки).
Как установить Bash в Windows 10
Чтобы установить Bash в Windows 10 вы должны либо быть участником программы предварительной оценки, либо у вас должно быть установлено Windows 10 Anniversary Update. Так же обратите внимание, что новая возможность доступна лишь для 64-битных систем.
Если ваш компьютер соответствует всем выше перечисленным требованиям, можно приступать к установке:
- откройте параметры Windows и перейдите в раздел «Обновление и безопасность»:
- в левой колонке выберите пункт «Для разработчиков» и в правой части активируйте «Режим разработчика»:
- нужно будет подтвердить данное действие:
- начнется загрузка компонентов, а после их установки необходимо будет перезагрузить компьютер:
- после перезагрузки откройте «Панель управления» и выберите раздел «Программы»;
- нажмите на ссылку «Включение или отключение компонентов Windows» и в открывшемся окне активируйте «Подсистема Windows для Linux (бета-версия)», затем нажмите «OK»:
- еще раз перезагружаем компьютер:
Пришло время запустить установленный Bash:
- откройте меню «Пуск», в строке поиска наберите bash и запустите его:
- откроется окно терминала и первое, что нас попросят — нажать «y» для доустаноавки нужных пакетов из магазина Windows;
- затем нужно будет создать нового пользователя, для чего нужно указать его имя и пароль, и уже после этого можно будет приступать к работе в Bash:
В следующий раз, когда вам понадобиться Bash в Windows 10, откройте поиск и введите «bash». Теперь у нас для его запуска будет ярлык «Bash на Ubuntu на Windows»:
Как использовать Bash Ubuntu под Windows
Теперь у вас есть командная строка Bash из Ubuntu. Так как это тот же шелл, что и в обычной Ubuntu, вы можете использовать стандартные ее команды apt-get для установки ПО с репозиториев. У вас есть доступ ко всем консольным Linux утилитам, однако имейте в виду, что не все они будут работать стабильно, поскольку данная подсистема находится еще в бета.
Как говорилось выше, для запуска шелла нужно через поиск открыть «Bash на Ubuntu на Windows», который для удобства лучше вынести на рабочий стол. Если вы имеете опыт работы с Bash в Linux или macOS, то в открывшемся окне ничего нового вы не увидите. Вы можете использовать те же команды, что и в nix системах:
- cd — для того, чтобы перейти в другой каталог;
- ls — для просмотра его содержимого;
- mv — для перемещения или переименования файлов;
- rm — для их удаления;
- mkdir — чтобы создавать новые директории.
Важно помнить, что в отличии от Windows, Bash чувствителен к регистру. То есть Text.txt и text.txt для него разные файлы.
Установка и удаление программ происходит при помощи менеджера пакетов APT, для чего используется команда apt-get. Кроме того, помните об утилите sudo которая дает повышенные права для установки ПО и добавляется в самое начало команды:
- sudo apt-get update — проверяет наличие обновлений;
- sudo apt-get upgrade — устанавливает обновления;
- sudo apt-get install имя_пакета — устанавливает необходимый пакет;
- sudo apt-get remove имя_пакета — удаляет ненужный пакет;
- sudo apt-cache search слово — поиск доступных пакетов.
Установив приложение, для запуска необходимо лишь ввести в терминале его имя и нажать «Enter».
Помните, что ПО установленное в Bash доступно лишь в нем. Вы не сможете его запустить через командную строку, PowerShell или каким-либо другим способом.
Вкратце это все. Надеюсь вам было интересно и вы теперь сможете попробовать Bash в Windows 10. Напишите в комментариях о своем опыте.
‼️ 4 способа запустить команды Linux в Windows
Краткое описание: Хотите использовать команды Linux, но не хотите выходить из Windows? Вот несколько способов запуска команд Linux bash в Windows.
Если вы изучаете скрипты оболочки, вероятно, как часть вашей учебной программы, вам нужно использовать команды Linux для практики команд и скриптов.
В вашей школьной лаборатории может быть установлен Linux, но лично у вас нет ноутбука с Linux, а обычный компьютер с Windows, как и у всех.
Ваша домашняя работа должна выполняться с командами Linux, и вы задаетесь вопросом, как запускать команды и скрипты Bash в Windows.
Вы можете установить Linux вместе с Windows в режиме двойной загрузки.
Этот метод позволяет вам выбрать Linux или Windows при запуске компьютера.
Но взять на себя все усилия, чтобы связываться с разделами с единственной целью запуска команды Linux, может быть не для всех актуальна.
Вы также можете использовать терминалы Linux онлайн, но ваша работа не будет сохранена.
Хорошая новость заключается в том, что есть несколько способов запуска команд Linux внутри Windows, как и в любом обычном приложении. Разве это не круто?
Использование команд Linux внутри Windows
Как “промоутер” Linux, я бы хотел, чтобы все больше и больше людей использовали «настоящий» Linux, но я понимаю, что иногда это не является приоритетом.
Если вы просто хотите попрактиковаться в Linux, вы можете использовать один из этих методов для запуска команд Bash в Windows.
1. Используйте оболочку Linux Bash в Windows 10
Знаете ли вы, что вы можете запустить дистрибутив Linux внутри Windows 10?
Подсистема Windows для Linux (WSL) позволяет запускать Linux внутри Windows.
В следующей версии WSL будет использоваться настоящее ядро Linux внутри Windows.
Этот WSL, также называемый Bash для Windows, дает вам дистрибутив Linux в режиме командной строки, работающий как обычное приложение Windows.
Не пугайтесь режима командной строки, потому что ваша цель – запускать команды Linux. Это все, что вам нужно.
Вы можете найти некоторые популярные дистрибутивы Linux, такие как Ubuntu, Kali Linux, openSUSE и т. д. В Магазине Windows.
Вам просто нужно скачать и установить его, как любое другое приложение Windows.
После установки вы можете запускать все необходимые вам команды Linux.
2. Используйте Git Bash для запуска команд Bash в Windows
Вы, наверное, знаете, что такое Git.
Это система контроля версий, разработанная создателем Linux Линусом Торвальдсом
Git для Windows – это набор инструментов, который позволяет использовать Git как в командной строке, так и в графических интерфейсах.
Одним из инструментов, включенных в Git для Windows, является Git Bash.
Приложение Git Bash предоставляет и слой эмуляции для командной строки Git.
Помимо команд Git, Git Bash также поддерживает множество утилит Bash, таких как ssh, scp, cat, find и т. д.
Другими словами, вы можете запускать множество общих команд Linux / Bash, используя приложение Git Bash.
Вы можете установить Git Bash в Windows, скачав и бесплатно установив инструмент Git для Windows с веб-сайта:
3. Использование команд Linux в Windows с Cygwin
Если вы хотите запускать команды Linux в Windows, рекомендуется Cygwin.
Cygwin был создан в 1995 году для обеспечения POSIX-совместимой среды, которая изначально работает в Windows.
Cygwin – это бесплатное программное обеспечение с открытым исходным кодом, поддерживаемое сотрудниками Red Hat и многими другими добровольцами.
В течение двух десятилетий пользователи Windows используют Cygwin для запуска и выполнения команд Linux / Bash.
Вы можете скачать Cygwin с официального сайта, который будет показан ниже.
4. Используйте Linux на виртуальной машине
Другой способ – использовать программное обеспечение для виртуализации и установить в него Linux.
Таким образом, вы устанавливаете дистрибутив Linux (с графическим интерфейсом) внутри Windows и запускаете его как обычное приложение Windows.
Этот метод требует, чтобы в вашей системе было достаточно оперативной памяти, по крайней мере, 4 ГБ, но лучше, если у вас более 8 ГБ.
Здесь хорошо то, что вы по-настоящему почувствуете использование настольного Linux. Если вам нравится интерфейс, вы можете позже полностью перейти на Linux.
Существует два популярных инструмента для создания виртуальных машин в Windows: Oracle VirtualBox и VMware Workstation Player.
Вы можете использовать любой из двух. Лично я предпочитаю VMware.