$put_perv_real = "/home/www/dvakompa-ru/dopol/"; ?>
Начиная с 2016 в Windows 10 появилась возможность использования подсистемы Windows для Linux (WSL - Windows Subsystem for Linux), позволяющей легко и просто установить из 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
или
wsl --list
Первым в списке дистрибутивов отображается дистрибутив по умолчанию:
kali-linux (по умолчанию)
Ubuntu
SLES-15
ubuntu2
Ubuntu-18.04
Дистрибутив по умолчанию можно сменить с помощью команд wsl илиwslconfig:
wsl --setdefault kali-linux - определить дистрибутив kali-linuxдистрибутивом по умолчанию.
wslconfig /setdefault ubuntu - определить дистрибутив ubuntuдистрибутивом по умолчанию.
При запуске bash.exe без параметров, программа выполняется в интерактивном режиме, ожидая ввода команд пользователем. Строка приглашения содержит имя пользователя, компьютера и текущий каталог, унаследованный из среды windows:
root@win10n:/mnt/c/WINDOWS/system32
Логические диски 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:/usr/games: /usr/local/games: /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/apb/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
apt upgrade
Для удобства работы можно установить файловый менеджер Midnight Commander:
apt install mc
И, например, на левой панели отобразить файловую структуру Linux, а на правой – файловую структуру Windows: