Меню Рубрики

Что такое bash в windows 10

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] [опции] файл_со_скриптом.

—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 используется команда:

bash -c help команда

В системе могут быть установлены несколько дистрибутивов Linux, и один из них является дистрибутивом по умолчанию. Утилита работает именно с данным дистрибутивом. Список зарегистрированных в системе дистрибутивов можно получить с помощью команд:

Первым в списке дистрибутивов отображается дистрибутив по умолчанию:

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 :

Для случая выполнения оболочки 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 вместо стандартной консоли.

Источник

Запуск графической оболочки Linux Bash в Windows 10

В первую очередь необходимо установить Linux Bash в Windows 10. Инструкция по установке Linux Bash описана в следующей статье:

Для установки Ubuntu из Microsoft Store предлагаем выбрать версию Ubuntu 18.04 LTS в операционной системе Windows 10 May 2019 Update (версия 1903).

Параметры установленного дистрибутива Linux расположены в меню Windows Параметры > Приложения > Приложения и возможности. Из списка установленных программ выберите Ubuntu 18.04 и нажмите на Дополнительные параметры.

Так же открыть параметры Ubuntu 18.04 можно нажав правой кнопкой мыши по значку Ubuntu 18.04 в меню Пуск, в открывшемся меню выбираем Дополнительно > Параметры приложения.

Параметры установленного Линукс дистрибутива в Windows 10 (версия 1903):

Расположена файловая система Ubuntu на локальном диске С по следующему адресу:

Таким образом можно получить доступ к нужным файлам и папкам Linux.

После установки и первоначальной настройки системы нужно обновить систему и установить рабочее окружение.

Обновление системы и установленных пакетов:

Установка рабочего окружения и пакета программ Ubuntu (Gnome):

Меняем права доступа к папке кэша:

Далее в систему Windows 10 нам нужно установить приложение для обеспечения оконной системы Linux, которая отвечает за построение и отображение графического интерфейса.

VcXsrv Windows X Server

Таких программ несколько. Предлагаем выбрать активно развивающуюся программу VcXsrv Windows X Server. Устанавливаем с настройками по умолчанию.

После запуска программы VcXsrv Windows X Server в окне Display Settings есть выбор отображения интерфейса оконной системы Linux. В нашем случае отлично работал вариант с большим оконным режимом (One large window). Там же в настройках Display number выставляем значение 0 (если возникнут проблем с запуском интерфейса, то значение нужно изменить, кроме того нужно будет изменить и значение в команде запуска).

Далее оставляем настройки по умолчанию. По окончанию настройки у нас запустится пустое окно.

Переходим в запущенную Linux систему, у нас она открыта в виде командной строки и вводим следующие команды:

Для дальнейших запусков графического окружения нужно вводить команду выше, при этом программа VcXsrv Windows X Server должна быть предварительно открыта.

Также создайте сценарий оболочки start-ubuntu (имя файла необязательно):

Сделайте скрипт оболочки исполняемым:

Запустить скрипт оболочки:

Известные проблемы и их решения

Из недостатков, с которыми столкнулись, отметим следующие: проблема с правами доступа различных приложений и системных функций. В качестве решения можно систему запустить с правами root. В целях безопасности не рекомендуется запускать систему с полными правами администратора, но если есть в этом необходимость, то запустить можно следующим образом: после того как открыли приложение VcXsrv и Linux систему, которая открылась в виде командной строки, нужно ввести команду: sudo su , затем вводим команду для запуска графического окружения:

Теперь нам будут доступны ранее неработающие функции системы, например, русификация и работа некоторых расширений Gnome.

Так же мы столкнулись с тем, что предустановленный браузер Firefox не устанавливает дополнения. Можно воспользоваться другим браузером, например, браузером Opera. В режиме суперпользователя запускать его нужно с помощью терминала командой: opera --no-sandbox.

Система установится на английском языке, установка другого языка доступна только под системой с правами администратора (sudo su). Установить русский язык в систему можно следующими командами:

После этого в настройках системы Ubuntu нужно выбрать и активировать установленный русский язык.

Источник

Как установить и использовать оболочку Linux Bash в Windows 10

Подсистема Windows для Linux (Windows Subsystem for Linux, WSL), впервые представленная в Windows 10 версии 1607, стала действительно стабильной функцией в Windows 10 (версия 1709). Теперь пользователи получают среду для тестирования Linux-приложений прямо внутри Windows, которая работает быстрее, чем в виртуальной машине.

Что нужно знать про оболочку Bash в Windows 10

Функция WSL на самом деле не является виртуальной машиной, контейнером или программным обеспечением Linux, скомпилированным для Windows. Windows 10 предлагает полноценную подсистему Windows 10, предназначенную для запуска программного обеспечения Linux. Подсистема основана на проекте Microsoft Astoria, который первоначально предназначался для запуска приложений Android в Windows.

WSL можно рассматривать как противоположность Wine. В то время как Wine позволяет вам запускать приложения Windows прямо в Linux, подсистема Windows для Linux позволяет запускать приложения Linux непосредственно в Windows.

При создании среды оболочки на базе Bash Ubuntu, Microsoft работала совместно с компанией Canonical. Оболочка работает поверх подсистемы и технически не является Linux. Linux является основным ядром операционной системы, которое недоступно в подсистеме. Вместо этого функция WSL позволяет запускать оболочку Bash и исполнять такие же бинарные файлы, которые работают в Ubuntu Linux. Многие сторонники открытого программного обеспечения считает, что операционную систем Linux правильно называть именно “GNU/Linux”, потому что на ядре Linux работает много программного обеспечения GNU. Оболочка Bash, которую вы получаете в Windows 10, как раз содержит утилиты GNU и другое программное обеспечение.

Хотя эта функция изначально называлась “Ubuntu Bash в Windows”, она также позволяет запускать Zsh и другие оболочки командной строки. Сейчас поддерживаются и другие дистрибутивы Linux. Вы можете выбрать openSUSE Leap или SUSE Enterprise Server вместо Ubuntu, поддержка Fedora скоро будет реализована.

При использовании оболочки имеются некоторые ограничения. По умолчанию фоновое серверное ПО и графические приложения Linux не поддерживаются. Кроме того, в данной среде работают не все приложения командной строки, потому что функция не идеальна.

Как установить Bash в Windows 10

Данная функция не работает в 32-разрядной версии Windows 10, поэтому убедитесь, что вы используете 64-разрядную версию.

Если вы используете 64-битную версию Windows, то для начала работы перейдите в Панель управления > Программы и компоненты > Включение и отключение компонентов Windows. Отметьте галочкой пункт Подсистема Windows для Linux и нажмите кнопку ОК.

Затем нажмите “Перезагрузить сейчас”, чтобы перезапустить компьютер и применить изменения. Функция не будет работать до перезагрузки.

Примечание: начиная с Windows 10 (версия 1709), чтобы использовать эту функцию вам больше не нужно включать режим разработчика в приложении Параметры. Вам просто нужно включить подсистему в окне “Компоненты Windows”.

После перезагрузки ПК откройте Магазин Microsoft и выполните поисковый запрос “Linux”. Откроется список доступных для установки приложений.

Примечание: начиная с Windows 10 (версия 1709), вы больше не сможете устанавливать Ubuntu, выполнив команду bash. Вместо этого вам нужно установить Ubuntu или другой дистрибутив Linux из Магазина Microsoft.

Итак, вы увидите список всех дистрибутивов Linux, доступных в Магазине Microsoft. Начиная с Windows 10 (версия 1709), в магазине предлагаются Ubuntu, openSUSE Leap, openSUSE Enterprise, Debian Linux, Arch Linux и Kali Linux.

Чтобы установить конкретный дистрибутив, выберите его и нажмите кнопку “Получить” или “Установить”. В результате запуститься обычная установка, как и в случае с другими приложениями из Магазина Microsoft.

Если вы не знаете, какую среду Linux установить, мы рекомендуем Ubuntu. Этот популярный дистрибутив Linux был ранее единственным доступным вариантом, но теперь доступны другие системы Linux для различных нужд пользователей.

Вы также можете установить несколько дистрибутивов Linux, и каждый из них получит свои собственные уникальные ярлыки. Вы даже можете запускать несколько разных дистрибутивов Linux одновременно в разных окнах.

Как использовать оболочку Bash и устанавливать программное обеспечение Linux

После успешной установки вы получаете полноценную командную оболочку Bash на основе Ubuntu или другого выбранного дистрибутива Linux.

Поскольку в системах Linux используются одинаковые бинарные файлы, вы можете использовать команды Ubuntu apt или apt-get, чтобы установить программное обеспечение из репозитория Ubuntu. Просто используйте любую команду, которую вы обычно используете в этом дистрибутиве Linux. У вас будет доступ ко всему программному обеспечению командной строки Linux там, хотя некоторые приложения могут работать не идеально.

Чтобы открыть установленную среду Linux, просто откройте меню Пуск и выполните поиск любого дистрибутива, который вы установили. Например, если вы установили Ubuntu, запустите ярлык Ubuntu.

Вы можете закрепить плитку приложения в меню Пуск, на панели задач или разместить ярлык на рабочий стол для быстрого доступа.

При первом запуске среды Linux вам будет предложено ввести имя пользователя и пароль UNIX. Они не должны совпадать с вашим именем пользователя и паролем Windows, и будут использоваться в среде Linux.

Например, если вы введете “comss” и “qwerty” в качестве своих учетных данных, ваше имя пользователя в среде Linux будет “comss”, а пароль, который вы используете в среде Linux, будет “qwerty”, независимо от имени пользователя и пароля Windows.

Вы можете запустить установленную среду Linux с помощью команды wsl. Если у вас установлено несколько дистрибутивов Linux, вы можете выбрать среду Linux по умолчанию, которую будет запускаться этой командой.

Если у вас установлен Ubuntu, вы также можете запустить команду ubuntu для ее запуска. Для OpenSUSE Leap 42 используйте opensuse-42. Для SUSE Linux Enterprise Server 12 используйте sles-12. Эти команды перечислены на странице каждого дистрибутива Linux в Магазине Microsoft.

Кроме того, вы можете запустить стандартную среду Linux, выполнив команду bash, но Microsoft заявляет, что данный метод устаревает. Это означает, что команда bash может перестать функционировать в будущем.

Если у вас есть опыт использования оболочки Bash в Linux, MacOS или на других платформах, вы будете чувствовать себя уверенно.

В Ubuntu нужно использовать префикс команд sudo чтобы запускать их с правами root. Пользователь “root” на платформах UNIX имеет полный доступ к системе, аналогично “Администратору” в Windows. Файловая система Windows расположена по пути в /mnt/c в среде оболочки Bash.

В WSL можно использовать привычные команды терминала Linux. Если вы привыкли к стандартной командной строке Windows с ее командами DOS, вот несколько основных команд, общих для Bash и Windows:

  • Изменить директорию: cd в Bash, cd или chdir в DOS
  • Показать содержимое директории: ls в Bash, dir в DOS
  • Переместить или переименовать файл: mv в Bash, move и rename в DOS
  • Копировать файл: cp а Bash, copy в DOS
  • Удалить файл: rm в Bash, del или erase в DOS
  • Создать директорию: mkdir in Bash, mkdir в DOS
  • Использовать текстовые редактор: vi или nano в Bash, edit в DOS

Важно помнить, что, в отличие от Windows, оболочка Bash и имитирующая ее Linux среда чувствительны к регистру. Другими словами, файл с названием “File.txt” отличается от файла с названием “file.txt”.

Для установки и обновления программного обеспечения среды Ubuntu нужно будет воспользоваться командой apt. Обязательно прикрепите эти команды к sudo, что заставляет их запускаться от пользователя root. Ниже представлены базовые команды apt-get, которые вам нужно знать:

  • Загрузить обновленную информацию о доступных пакетах: sudo apt update
  • Установить пакет приложения: sudo apt install packagename (замените packagename на название пакета)
  • Удалить пакет приложения: sudo apt remove packagename (замените packagename на название пакета)
  • Выполнить поиск доступных пакетов: sudo apt search word (замените word на ключевое слово в названии или описании пакета)
  • Загрузить и установить новейшие версии установленных пакетов: sudo apt upgrade

После того, как вы загрузили и установили приложение, вы можете ввести его имя в оболочку и нажать Enter для его запуска.

Примечание: Программное обеспечение, которое вы устанавливаете в оболочке Bash, ограничено оболочкой Bash. Вы можете получить доступ к этим программам из командной строки, PowerShell или из другого места в Windows, но только если вы запустите команду bash -c.

Дополнительно: установка родного шрифта Ubuntu

Если вы хотите получить более точный опыт использования Ubuntu в Windows 10, то можете использовать следующую инструкцию, чтобы установить родные шрифты Ubuntu в терминал.

Чтобы установить шрифт, сначала загрузите семейство шрифтов Ubuntu с веб-сайта Ubuntu. Откройте загруженный .zip-файл и найдите файл UbuntuMono-R.ttf. Это шрифт Ubuntu с фиксированный шириной, который используется только в терминале. Это единственный шрифт, который вам нужно установить.

Дважды щелкните файл UbuntuMono-R.ttf, и вы увидите предварительный просмотр шрифта. Нажмите “Установить”, чтобы установить шрифт в систему.

Чтобы моноширинный шрифт Ubuntu стал доступен в консоли, вам нужно добавить параметр в реестр Windows.

Запустите редактор реестра, используя сочетание Windows + R , введя запрос regedit и нажав Enter.

Перейдите по следующему пути:

Щелкните правой кнопкой мыши в правой панели и выберите Создать > Строковый параметр . Назовите новое значение 000. Дважды щелкните на строке “000”, которую вы создали, а затем введите Ubuntu Mono в качестве значения.

Затем запустите окно Ubuntu, щелкните правой кнопкой мыши строку заголовка и выберите команду “Свойства”. Перейдите на вкладку “Шрифт” и выберите “Ubuntu Mono” в списке шрифта.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Что такое bad pool header windows 7
  • Что такое backup windows
  • Что такое asus giftbox в windows 10
  • Что такое app explorer в windows 10
  • Что такое anniversary update windows 10