Включение подсистемы Linux в Windows 10

    Недавно мы опубликовали пост про новый билд Windows 10 Insider Preview Build 14316, в котором говорилось про подсистему Ubuntu Linux в этой ОС. Нам написали многие пользователи, которые столкнулись с тем, что не смогли сразу обнаружить эту подсистему и запустить командный интерпретатор bash. Действительно, эта подсистема выключена по умолчанию, а ее драйверы LXss.sys и LXCore.sys не располагаются в системной директории (см. WinSxS). Для тех пользователей, которые не смогли разобраться с данной проблемой, мы укажем шаги по включению подсистемы и проверке ее активности.



    Для включения подсистемы следует выполнить следующие шаги:

    1. Активировать режим разработчика (Developer Mode). Без него Windows 10 откажется устанавливать подсистему Ubuntu Linux.
    2. Включить компонент подсистемы в настройках Windows.
    3. Установить подсистему (выполняется автоматически.)



    Рис. Настройка функций developer по умолчанию, нужно выбрать Developer mode (Start->Settings->Update and security).


    Рис. Подтверждаем.


    Рис. В том же окне, в поиске набираем «Windows features».


    Рис. Ставим галочку напротив «Windows Subsystem for Linux (Beta)».


    Рис. Запускаем командный интерпретатор Windows — cmd, набираем bash и дожидаемся установки Linux.


    Рис. Появившиеся в системной директории драйверы Linux.


    Рис. Активный сервис подсистемы Linux.
    ESET NOD32 124,70
    Компания
    Поделиться публикацией
    Комментарии 110
    • +5
      Для тех, кто как и я безуспешно пытался подобрать перевод «Windows features», чтобы вбить в поиск:
      Панель управления -> Программы и компоненты -> Включение или отключение компонентов Windows
      • 0
        Ну и с кириллицей оно, видимо, не дружит:
        image

        При вводе «y» (да и вообще любого символа), консоль просто закрывается. Видимо, не может переварить имя пользователя.
        • 0
          В дополнение, если указать больше 1 символа, «выскакивает» некий хелп с описанием ключей /install /y и прочих для установки-удаления-обновления юзерспейса. Только вот непонятно, какой ехе-ник вызывать с этими ключами, т.к. для bash.exe они не подходят…
        • +1
          Поставьте Английски языковой пак. Под кириллицей пока не работает.
          • 0
            То есть проблема исключительно в языке системы? С кириллицей в имени пользователя проблем нет? Или они тоже решатся установкой языка?
          • +1
            Это запрос подтверждения на установку убунты. В англоязычной версии там написано 'Type «Y» to continue', если ввести что-либо другое, то консоль закрывается. В русскоязычной версии, видимо, имеется баг с кодировкой, из-за чего ни Y, ни Д не работают.

            Русскоязычное имя пользователя на работу линукса повлиять не должно, так как консоль всё равно запускается от рута (whoami: root, pwd: /root), но всегда можно сделать sudo -u. Такие дела :)
          • +2
            Win+R, optionalfeatures
          • 0
            Не могли бы вы пояснить, в каком отношении активация Developer mode подвергнет мое устройство и «личную информацию» рискам?
            • +2
              В этом режиме появляется возможность устанавливать приложения не только из Windows Store.
              Тем самым MS снимает с себя ответственность.
              • 0
                А с Sideload apps?
                • +1
                  Sideload apps в этом плане работает также.

                  Developer mode дополнительно дает определенные возможности для разработчика приложений: отладка, деплой на устройство.
                  https://msdn.microsoft.com/en-us/windows/uwp/get-started/enable-your-device-for-development
            • 0
              Windows Features not found! Что-то я не могу включить
              • 0
                … а прочитать первый коммент к статье слабо))
                • 0
                  Пока коммент был на модерации — меня опередили)
                  • –2
                    У меня по прежнему ничего нет( Я один такой?
                    http://take.ms/tYIsV
                    • 0
                      Сборка 14316? Developer mode включили?
                      • 0
                        Всё включено) Скорей всего дело именно в сборке. Я её скачивал ещё в октябре… Надо-бы обновить флешечку
                • +3
                  Не используйте в настройках консоли «Use legacy console». После включения данной настройки консоль в bash крашится.
                  Error: 0x80070057

                  take.ms/ycYfX
                  • 0
                    У кого-нибудь работает сеть в Bash консоли?
                    • +2
                      В /etc/resolv.conf пропишите nameserver 8.8.8.8
                      ping не заработает, а apt-get, wget заработают

                      Тут можно почерпнуть часть решенных проблем https://github.com/Microsoft/BashOnWindows/issues
                      • 0
                        В баге говорят, что даже UDP не поддерживается. Так ли это?
                        • 0
                          У меня тоже пинг не работает.
                          • 0
                            То, что не работает ICMP, в целом, ожидаемо, т.к. ему нужны RAW-сокеты, но вот то, что не работает UDP (если это действительно так) — странно.
                            Правда, это же бета, добавят еще поддержку, наверняка.
                            • +2
                              root@localhost:~# nc -vz -u 8.8.8.8 53
                              Connection to 8.8.8.8 53 port [udp/domain] succeeded!
                              root@localhost:~# nc -vz -u 8.8.8.8 54
                              Connection to 8.8.8.8 54 port [udp/*] succeeded!
                              root@localhost:~# nc -vz -u 8.8.8.8 59
                              Connection to 8.8.8.8 59 port [udp/*] succeeded!
                              • 0
                                И соединения принимаются?
                                • 0
                                  Как протестировать?
                                  • 0
                                    В первом терминале:
                                    nc -u -l -p 4545
                                    Во втором терминале:
                                    echo test | nc -u IP 4545
                                    • 0
                                      Неа, не работает в отличие от tcp :(
                                      • 0

                                        На второй команде выводит:


                                        nc: getaddrinfo: Name or service not known
                                        • 0
                                          Вы IP на IP-адрес заменили?
                                          • 0

                                            Ой, нет. Не заменил. С локалхостом можно проверять на одном пк или лучше через локальную сеть с разных машин?
                                            P.S. На локальной машине просто впадает в ступор и чего-то ждет.

                                            • 0
                                              Я не знаю, как сеть там организована, поэтому не могу подсказать.
                                              • 0
                                                На первом терминале должна появиться строка test после выполнения команды на втором. Если убрать ключи -u (UDP-режим), то данные передаются.
                              • 0
                                ICMP не поддерживается и RAW-сокеты тоже пока не поддерживается.
                                Я так понимаю эмуляцию системных вызовов для этих вещей еще не выкатили.

                                Это пока даже не бета-версия интеграции, а скорее пре-альфа.
                              • 0
                                Спасибо! apt-get заработал.

                                Может знаете как переустановить Ubuntu не переустанавливая сам Windows, пробовал отключение и включение Windows System for Linux, не помогло. Проблема в том что после команд apt-get update && apt-get upgrade появилась куча ошибок, которые я не в силах победить.
                                • 0
                                  Какие ошибки?
                                  • +1
                                    lxrun /uninstall /full /y
                                    lxrun /install /y
                                    • 0
                                      У меня тоже была какая-то не устранимая ошибка после попытки подправить указанный файл из Far.
                                      Выполнил
                                      lxrun /uninstall /full /y
                                      и убедился что папки C:\Users\user\AppData\Local\lxss\ не стало
                                      После этого выполнил
                                      lxrun /install /y
                                • –1
                                  Что там ещё есть? apt-get, yum?
                                  Какие-нибудь HHVM, Tarantool компилятся?
                                  Сколько памяти это ест?
                                  В чём отличие от SUA (Subsystem for UNIX-based Applications), которая давны давно есть на Windows от MS?
                                  • +1
                                    apt-get есть (и даже aptitude, только он криво отображается), это же Ubuntu. Подключены стандартные репозитории trusty из archive.ubuntu.com и security.ubuntu.com.
                                    • +1
                                      Спасибо за ответ. Рад когда отвечают на вопросы по делу, а не как толпа почему-то набежавших минусаторов с нежной натурой. Это как спросить у прохожего как пройти туда-то, а ответ получить в морду.
                                      • 0
                                        Минусы ставят вероятно из-за того, что на хабре каждый в курсе, что есть в этом обновлении.
                                        С начала Апреля это довольно громкая новость которая шумит ежедневно.
                                        Ну и вероятно последняя строчка.
                                        • +1
                                          Тем не менее ответов кроме apt-get я ни от кого не услышал и не увидел.
                                          У нас же любят затыкать рот вместо того чтобы ответить. На каком-нибудь opennet и то люди дружелюбнее :)
                                          • 0
                                            Попробовал собрать HHVM. Действовал по стандартному мануалу для 14.04 (https://docs.hhvm.com/hhvm/installation/building-from-source#ubuntu-14.04-trusty). Компилировалось 3,5 часа (виртуалка), затем при линковке результирующего бинарника сломалось с ошибкой /usr/bin/ld.gold: fatal error: hhvm: Invalid argument. Надо сказать, что эта проблема не единичная: https://github.com/Microsoft/BashOnWindows/issues?q=is%3Aissue+is%3Aopen+ld.gold — по крайней мере node.js и ethereum тоже не линкуются. Придётся ждать решения проблемы.
                                            • –2
                                              Спасибо.
                                              Скорее всего разработчиком пакетов придётся добавлять отдельную проверку именно на эту подсистему и её особенности, как они сейчас это делают с cygwin? То есть вот так сразу большинство таких специфичных пакетов не заработают.
                                              Полноценный Lamp уже кто-то пробовал собирать?
                                              • 0
                                                Invalid argument это текстовый вариант ошибки EINVAL, Lxcore.sys кидает эту ошибку на все системные вызовы, которые не умеет. Поэтому эту ошибку можно заметить много где.
                                    • +22
                                      — Здравствуйте! Это тема про Windows?
                                      — Да.
                                      — Как мне включить Linux?

                                      По мотивам цитаты с баша bash.im/quote/42
                                      • +1
                                        А как получить сам билд? В Settings -> Updates -> Advanced включил Insiders builds и переключил ползунок на Fast Ring, но апдейта нет. В инете пишут, что «надо подождать до 4-х суток» да и рядом с ползунком тоже написано, что может не сразу билд прийти. Кто знает, ждать надо с включенной машиной?
                                        • 0
                                          Я переключился на Fast Ring и сразу же получил обновление.
                                          • +1

                                            У меня тоже не приходил апдейт и я обновился с *.iso образа.
                                            Можно скачать отсюда
                                            Потом запустить интсаллер из образа и тем самым обновиться или же установить чистую сборку с загрузочной флешки.

                                            • +1
                                              Ждал около двух суток, потом прилетел апдейт. Ждите)
                                              • 0
                                                теперь и у меня пришло, тоже двое суток
                                            • –7
                                              cygwin гораздо лучше…
                                              • +3
                                                Может потому что нативный Bash только что вышел и находится в бете?
                                                • –2
                                                  То есть скомпилированный под винду bash вы не считаете нативным?
                                              • –9
                                                > Чтобы получать сборки Insider Preview вам необходимо подключить к своему устройству учетную запись Майкрософт

                                                совсем охренели
                                                • +8
                                                  не нравится — не ешьте, в чем проблема
                                                  • +4
                                                    У родителей на ноутбуке стояла учётка microsoft с паролем. Сейчас они временно не пользуются интернетом. И пароль от учётки им не нужен и их жутко бесит. Но его нельзя убрать у этой учётки потому что для этого требуется выход в интернет.
                                                    Это лишь один подводный камень, но не известно сколько ещё может выплыть.

                                                    Одно дело когда кто-то реализовывает фичу. И вам решать пользоваться ей или нет, и совсем другое когда для нетривиальных действий производитель фичи специально создаёт усложнения навязывая свои другие «фичи».

                                                    Представ те себе музей в который может попасть каждый желающий. И вот он находится на 5-м этаже 20-ти этажки. И есть лифт. И есть лестница. Но для того что бы лифт поднял вас на 5-тый этаж вам надо с начало подняться по лестнице на 20-тый, потому что тамбурная двери на всех этажах кроме 20-го закрыты.
                                                    Не нравится не посещай музей, но знай что мы такие хорошие все из себя. Мы такие молодцы, но вы не увидите в живую что мы там сделали потому что вам лень поднять свою задницу на 20-ый.

                                                    Я конечно понимаю что windows это их детище и они могут творить с ним что вздумают. Но я думаю что выражая слово «охренели» IvanPanfilov выражал не то что они «обязаны» делать, а то какие чувства вызывают их действия.
                                                    • 0
                                                      Можно включить автоматический вход. Пароль хранится в открытом виде, но эти же пароли можно вытащить из любого браузера
                                                      • 0
                                                        Ставите пин-код вместо пароля и интернет при входе не нужен будет.
                                                        • 0
                                                          Тогда нужно вводить пин. Не пользуюсь учеткой MS по этой же причине.
                                                        • +2
                                                          негодование в вашем случае как раз абсолютно понятно: учетка микрософта затрудняет работу, однако требование учетки для участия в инсайдер-программе вообще не вызывает у меня отторжения: это опциональная фича, результаты которой со временем получат все
                                                      • +29
                                                        Вот он, страшный сон линуксоида — создавать учётную запись в Майкрософт, чтобы установить Убунту.
                                                        • 0
                                                          И качать Ubuntu с Windows store.
                                                        • +1
                                                          Можете и скачать iso без учётной записи и в сети.
                                                      • –2
                                                        Error: 0x800c0005 — кто с таким стыкался??? в чем проблема??? как решить??
                                                        • –7
                                                          О_о, это всё серьёзно? Читая Вашу прошлую статью, я был уверен, что это первоапрельский юмор. (Да, я видел дату «31 марта в 11:18», но думал, что это тоже часть шутки — что шуточные первоапрельские статьи отображаются с рандомными датами.)
                                                          • +1
                                                            Можно запустить х-сервер и гуевые приложения линукс прямо в винде… Что происходит, черт возьми? о_О

                                                            источник: https://www.reddit.com/r/Windows10/comments/4ea4w4/fyi_you_can_run_gui_linux_apps_from_bash/
                                                            на русском: http://windowstips.ru/notes/23552

                                                            *ушел качать образ
                                                            • 0

                                                              У меня приложение сразу крашит
                                                              Fatal IO error: client killed
                                                              Пробовал запускать несколько приложений, но без особого успеха. Где-то в гугле прочел, что проблема может возникать из-за большних иконок (o_O), но протестировать пока не могу.

                                                              • 0
                                                                Тоже немного побаловался — Пиджин работает отлично, в аське логинися. А Файрфокс вылетает постоянно, но главную страницу Хабра вроде загружает:
                                                                Скрытый текст

                                                                • 0

                                                                  Так у вас работает? А можете поэтапно описать как вам удалось? У меня любое приложение крашит сразу же в ту самую ошибку IO
                                                                  Какой у вас X сервер? Как запускаете?

                                                                  • 0
                                                                    Отсюда скачал «Xming X Server for Windows», установил его тупо как windows-программу «далее-далее-далее-готово», затем запустил с ярлыка рабочего стола (снова «далее-далее-готово» ), затем из оболочки bash программы запускаются так: «DISPLAY=:0 firefox».
                                                                    • 0

                                                                      Странно. У меня все тоже так же сделано, однако у меня крашит почти каждое приложение. Ну ладно. Подождем, может сами MS чего допилят для этого.

                                                            • 0
                                                              Интересно, как работает fork? Cygwin/mingw имеют огромное количество проблем именно из-за эмуляции форка, есть ли здесь проблемы?
                                                              • 0
                                                                Из любопытства — какого рода проблемы?
                                                              • +3
                                                                В ядре NT с самого начала была возможность честного форка процесса — с клонированием таблиц страниц и copy-on-write. Она недокументирована и до неё нельзя достучаться через Win32 API, но для отдельной подсистемы это не проблема. Cygwin/MinGW работают через Win32 API, поэтому у них, да, проблемы.
                                                                • 0
                                                                  Что за функция?
                                                                  • +3
                                                                    NtCreateProcess/NtCreateProcessEx с ненулевым четвёртым аргументом и нулевым шестым.
                                                                    • 0
                                                                      А, да. Это есть у Небета.
                                                                • 0
                                                                  Работает. Скомпилированный пример процесса демона работает и висит в списке процессов без родителя, вот так:

                                                                  image
                                                                • 0
                                                                  del
                                                                  • 0
                                                                    В русскоязычном Windows компонента Linux нет.
                                                                    • 0
                                                                      Только что поставил на русскую винду, работает. Надо просто дождаться, когда прилетит обновление с Insider версией (у меня оно появилось через пары дней, после подключения к программе Insider Preview) и установить режим разработчика, как в статье написано.
                                                                      • 0
                                                                        А с русской кодировкой вы как справились?
                                                                        • 0
                                                                          Нужно установить английскую локализацию как основную, установить bash, потом можно вернуть русскую, все будет работать.
                                                                          • 0
                                                                            Воспользовался советом в комментариях выше. Установку можно запустить командой:
                                                                            lxrun /install /y
                                                                            Она запускается установку молча, без подтверждения.
                                                                            Потом уже bash запускается. Правда в нем тоже с кодировками не особо работает, но вроде там уже не критично, играться и так можно.
                                                                            Пока правда первое впечатление, что это все таки сильная бета, работает далеко не все
                                                                          • 0
                                                                            А как вы подключались? На сайте микрософта мне предлагают полностью переустановить ось ( сейчас 10-ка ). То есть он не просто тащит всякие предварительные фичи, а ставит «специальную» версию системы?
                                                                      • 0
                                                                        Кто еще из «копирайтеров» не отписался на эту тему? Вроде простенькое howto, да еще и растиражированное уже везде…
                                                                        • 0
                                                                          народ у меня в Settings -> Updates -> Advanced кнопка Insiders builds не активна. Что делать?
                                                                          • 0
                                                                            А у вас MS учетка? Может из-за этого?
                                                                            • –1
                                                                              сам загуглил… короче это из-за antispy.
                                                                              частично помог возврат настроек по умолчанию с помощью проги O&O ShutUp10
                                                                              но теперь другая ппроблема — вылетает такое окно:
                                                                              http://i11.pixs.ru/storage/2/7/4/Bezimyanni_3885740_21532274.png
                                                                              затем оно говорит типо всё исправлено и предлагает перезапуститься. После перезагрузки ничего не меняется.
                                                                              • 0
                                                                                Ну зато телеметрию отключили.
                                                                                • 0
                                                                                  учётка от МС + браузер от МС + включённая телеметрия = мои пароли у microsoft. + потеря производительности + более назойливая реклама.
                                                                                  Я не параноик но если уж собирать данные то делать их общественным достоянием. Иначе можете считать меня жадиной, но это мои данные и я не хочу чтобы они куда либо улетали.

                                                                                  Интересно что к каждому пользователю прилетает именно «своя ос». у кого-то 3 дня, у кого-то почти сразу. Как будто они действительно создают сборку винды специально под конкретно ваш компьютер. (естественно со своими идентификаторами вшитыми прямо в ОС).
                                                                                  • 0
                                                                                    Вы хотите быть Windows Insider, но не хотите иметь с MS ничего общего. Мне это немного непонятно.
                                                                                    У Windows Insiders чёткие требования, вы изворачиваетесь и удивляетесь, почему же не работает?

                                                                                    Интересно что к каждому пользователю прилетает именно «своя ос».

                                                                                    Это удивительно, но русским приходит «своя ос» с русским языком, у американцам – с английским, кому-то x64, кому x32 и т.п.
                                                                                    Как будто они действительно создают сборку винды специально под конкретно ваш компьютер. (естественно со своими идентификаторами вшитыми прямо в ОС).

                                                                                    Это легко проверяется на разных независимых машинах снифом трафика и сравнением хэш-сум esd файлов, полученных по временным ссылкам.
                                                                                    • 0
                                                                                      Это легко проверяется на разных независимых машинах снифом трафика и сравнением хэш-сум esd файлов, полученных по временным ссылкам.

                                                                                      А TLS у них не в моде?

                                                                          • 0
                                                                            Никто не в курсе, может можно как-то использовать git из этой подсистемы в IDE? В IDEA, например
                                                                            • 0

                                                                              Странно, дев режим давно включен, сборки insider preview включены, судя по журналу апдейтов у меня билд 1511, но в windows features нету нифига про линукс, обида!

                                                                            • 0

                                                                              Кто-нибудь знает, как выключить русский язык в баше, который запустился из-под винды?

                                                                              • 0
                                                                                Поставить на убунту английскую локаль видимо. А чем вас русский не устраивает? Консоль вполне понимает например английские Y/N при выборе, я всегда печатаю на английском вне зависимости от локали сервера, и даже не заметил русский в убунте.
                                                                                • 0
                                                                                  А чем вас русский не устраивает?

                                                                                  Сложно гуглить сообщения об ошибках.

                                                                                  • 0

                                                                                    В какой-нибудь .bashrc пропишите export LANG=en_US.UTF-8 и export LC_ALL=en_US.UTF-8 если нет localectl.

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

                                                                              Самое читаемое