Оболочку рабочего стола Ubuntu Unity запустили в среде Windows 10

    Сделать это несложно, просмотрите короткую инструкцию и попробуйте сделать то же самое




    Компания Canonical, отвечающая за разработку Ubuntu и корпорация Microsoft в начале этого года объявили о включении bash и основного инструментария Ubuntu в Windows 10. Знакомство с новыми возможностями Windows 10 с элементами Ubuntu можно было начать еще в апреле, начиная с обновления 14316. В этом обновлении к Windows 10 добавили WSL-прослойку, которая транслирует системные вызовы Linux в системные вызовы Windows. В результате в среде Windows стало возможным развернуть полноценный инструментарий Ubuntu Linux без эмуляции и виртуализации. Окончательная интеграция будет выполнена с выходом Anniversary Update в августе.

    В апреле этого года специалисты научились запускать и десктопные приложения Ubuntu с графическим интерфейсом в среде Windows 10. Пользователь Reddit с ником w2qw нашел способ установить VIM и Firefox. Сейчас пользователь Github с ником Guerra24 смог запустить в среде Windows оболочку рабочего стола Ubunu Unity.

    Для успешного запуска требуется выполнить несколько шагов. Дело в том, что X-серверы вроде vcxsrv или Xming в среде Windows 10 работают без особых проблем. Но большинству приложений для работы необходим сервис dbus, который по умолчанию не работает. Из-за этого десктопные приложения вроде Firefox или virt-manager, запущенные в подсистеме Linux, «падают» уже при запуске или через короткое время после запуска. Напрямую не работает и Unity — оболочке тоже требуется dbus.

    Юзеру ShaRose с Reddit удалось «завести» dbus. Изначально ему (или ей) захотелось попробовать установить virt-manager, чтобы получить возможность администрировать qemu-сервера в среде Windows без необходимости работы с виртуальной машины. И сервер dbus, который требуется для работы virt-manager, удалось «завести».

    Для установки нужна «чистая» Windows 10 с интегрированным инструментарием Ubuntu. Если все это уже имеется, необходимо выполнить всего три шага:

    1. Устанавливаем X-сервер. И vcxsrv, и Xming работают нормально.

    2. Добавляем DISPLAY=:0.0 к bashrc: Это можно сделать следующим образом:

    echo «export DISPLAY=:0.0» >> ~/.bashrc

    После проверки оказывается, что десктопные программы, требующие «иксы» для работы, функционируют нормально.

    3. Теперь чиним dbus. Проблема с dbus в том, что для работы здесь требуются unix-сокеты, которые bash для Windows пока не поддерживает. Поэтому все, что нужно — «объяснить» dbus, как работать с tcp.

    Сделать этого довольно просто. В /etc/dbus-1/session.conf заменяем unix:tmpdir=/tmp строкой tcp:host=localhost,port=0. Вот и все.

    Для этого выполняем такую команду:

    sudo sed -i 's/.*/tcp:host=localhost,port=0/' /etc/dbus-1/session.conf

    Firefox и virt-manager работают отлично. Chrome, к сожалению нет. Но самое главное — теперь можно приступить к установке Unity в WSL.

    Сразу Unity работать не будет, необходимо установить ccsm (CompizConfig Settings Manager), а затем запустить VcXsrv, используя XLaunch (сейчас это единственный X сервер, работающий с Unity). После запуска в появившемся окне заменяем номер дисплея на 0. Все остальные установки оставляем по умолчанию.

    Теперь запускаем ccsm, где активируем плагин Unity. При выводе меню пользователь увидит несколько опций, нужно выбрать Copy to Texture plugin. После этого в нижней части настроек Window Management активируем все плагины кроме одного — Grid. Этот плагин должен быть неактивен.

    Теперь выходим из ccsm, а в bash запускаем compiz. Будут показаны несколько сообщений об ошибках, но Unity должна загрузиться нормально.


    Это еще Windows или уже Ubuntu?

    В этой среде можно будет запускать только программы, иконки которых есть на панели. Запустить командную строку в Unity нельзя, поэтому снова открываем bash в Windows, повторяем операцию с дисплеем и запускаем gnome-terminal. Теперь появляется иконка командной строки, и ее можно использовать.



    Кроме Unity можно запустить и xfce4. В этом случае требуется выполнить только первый этап по «ремонту» dbus, второй этап относится только к Unity, здесь он не нужен. После того, как в среде Windows начинает нормально работать dbus, можно запустить xfce4, хотя работает оболочка не слишком стабильно.
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 85

      0
      > X-серверы вроде vcxsrv или Xming в среде Windows 10 нормально использовать нельзя

      > И vcxsrv, и Xming работают нормально.

      ???

      И что такое «dbux»? Я сначала было подумал что опечатка, но оно раза три в тексте встречается.
        0
        Да, после того, как «чинят» dbux, все работает без проблем.
          0
          То есть vcxsrv или Xming в среде Windows 10 работают без проблем, не работают многие другие приложения из-за отсутствия по умолчанию dbus. Спасибо.
      • UFO just landed and posted this here
          +7
          Если бы они там ещё нормально запускались.
            –7
            Многие приложения (не игровые) работают под Wine нормально. Порой они работают даже лучше чем на Windows…
              0
              А вот тот же Adobe Illustrator 19 не работает, например
              • UFO just landed and posted this here
                  +2
                  В таком случае народ с нетерпением ждёт от вас инструкции по установке на appdb.winehq.org :)

                  У меня версии 17-19 пишут ошибку 16 и запускаться упорно отказываются.
                  • UFO just landed and posted this here
                      0
                      >internet explorer 8
                      А вот на этом месте, пожалуйста, подробнее. «winetricks ie8» не поддерживает вин7, а иллюстратор 17-19 требует именно вин7 и не меньше. Как это так у вас так проблем не наблюдалось? Может, у вас иллюстратор всё-таки 16-й или более старый?
                      • UFO just landed and posted this here
                          –1
                          Ну это всё-таки уже совсем не «проблем не наблюдалось»))

                          Тем не менее, даже так у меня всё равно пишет ошибку 16: https://www.youtube.com/watch?v=eqgArmWwB7A
                          Что я всё ещё делаю не так?
                    0
                    Skype вот тоже не работает, ну то есть работает специальный дистрибутив, с графоном icq 95х, а с человеческой графикой — нет. Хотя вроде есть какая-то инструкция, но там тоже до какой то старинной версии, и спомощью костылей и бубна.
                    • UFO just landed and posted this here
                      • UFO just landed and posted this here
                        • UFO just landed and posted this here
                    +2
                    Поставьте virtualbox и успокойтесь.
                      0
                      Именно так у меня сейчас и сделано. Но, напомню, сия ветка про вайн
                    0
                    Не правда. Работают только популярные приложения, работу которых фиксят в первую очередь. Со всем остальным печальная ситуация.
                      0
                      Те, для которых годные аналоги на линуксе есть. Многое из того, что держит меня на винде, под вайном либо стартует с бубнами, либо с косяками, либо вообще не стартует.
                    +9
                    Виндовых прог, которые нужны, и не имеют адекватной замены на линуксе, как бы на порядок больше, чем линуксовых, не имеющих аналогов на винде. Так что нет, не лучше.
                  +1
                  Дождемся когда поддержку unix-сокетов запилят в этой WSL? :)
                  Или RAW-сокеты заработают…

                  Для чего этот WSL предлагается использовать. Запускать docker контейнеры и все?
                    +1
                    Эта штука вообще не про докер, т.к. ядра линукса нету. Докер под виндой нынче нативный есть в публичной бете.
                      0
                      Вообще то он не нативный) Он с собой виртуалку с линуксом тащит и все команды в нее транслирует, так же как и под маком кстати
                        +1
                        в бете нового сервера — нативный
                          0
                          Вобщем то я про новый и говорил HyperV — тоже виртуализация
                            +1
                            Там будет два типа, первый строже, через виртуализацию, второй легче — без виртуализации. Уже можно все попробовать.
                              –2
                              Пруфы приложите если не трудно. Гугл не показал ничего про версию «без виртуализации»
                                0
                                У вас точно гугл?
                                Первая ссылка: https://msdn.microsoft.com/en-us/virtualization/windowscontainers/about/about_overview
                                Windows Containers include two different container types, or runtimes.

                                Windows Server Containers – provide application isolation through process and namespace isolation technology. A Windows Server container shares a kernel with the container host and all containers running on the host.

                                Hyper-V Containers – expand on the isolation provided by Windows Server Containers by running each container in a highly optimized virtual machine. In this configuration the kernel of the container host is not shared with the Hyper-V Containers.
                                  0
                                  Спасибо!
                                0

                                Второй в паблике вроде еще не появился, и для него нужна сборка Win 10 инсайдерская вроде. То что появилось — с легковесной но виртуалкой, то что будет в Win 10 Anniversary — Hyper-V Containers & Windows Containers — это кстати тоже не докер, это именно виндовые контейнеры которые управляются через докер клиента, но ядро там будет от Win. Но обещают вкусно — HyperV с отдельным ядром запускается за секунды, Windows Container как и докер — ~subsecond. Да и вообще — ждем нано сервер который для облака и по заверениям чуть ли не в 180 метров влазит целиком...

                                  0
                                  Вы все правильно говорите, но не все правильно понимаете.

                                  Windows Containers — это кстати тоже не докер

                                  Докер — это вообще не докер.

                                  Докер, не является какой-то технологией контейнеризацией, это всего лишь инструмент управления контейнерами реализованными в конкретной ОС. В линуксе он работает поверх LXC, который прекрасно справляется с задачей и без докера. C докером просто удобно.

                                  То, что ядро там будет от Win — это должно быть очевидно — это же контейнер, который работает на том же ядре что и хостовая ось.

                                  А вообще да, я тоже вместе с вами жду с нетерпением. Судя по предварительной информации никаких ограничений на количество контейнеров не будет и это просто сказка.
                                    0

                                    Это в общем-то детали. Понимаю я кмк все правильно. Если уж хочется позанудничать — под одной этикеткой докера скрываются несколько вещей — докер клиент ( это тот бинарник который ваши команды из консоли отправляет докер демону), докер демон — это который крутит сервис отвечающий на запросы клиента и роутит команды к конкретному контейнеру (выполняет их внутри конкретного контейнера) а еще внутри демона есть engine который как раз непосредственно отвечает за виртуализацию изоляцию и доступ к непосредственно вызовам ядра некоей ОС.


                                    То что вы описали — технология управления это только докер клиент.


                                    Клиенту пофиг с каким из демонов разговаривать — поэтому они так прозрачненько для пользователя "смотрят" и на локальные и на удаленные контейнеры.


                                    Реализация демона у всех будет своя. И не факт что демон будет крутить только то ядро, на которой работает ось в которой он запущен. Свое ядро конечно дешевле — нет прослойки виртуализации, но если линуксовое или нано-серверное будет стартовать за 1-2 секунды и занимать 200 мб Ram — почему бы и нет.


                                    Даже более того — не удивлюсь если через некоторое время появится технология которая позволит крутить windows containers на Linux — клиент и интерфейс демона тот же, транслировать команды — умеют, а что конкретно там внутри крутится и как оно изолировано — это вообще детали реализации. Если клиент отправляет команду на которую демон и контейнер правильно реагируют — пофиг на чем они, LXC, или какой-нить jail или NTNanoKernel-v100500… Как раз под это дело и ядро от нано-сервера подойдет…
                                    А уж как будет выполнен Engine каждой платформе — это уже дело платформы. В том числе, что мешает крутить 2 ядра в одном engine? Клиент может вполне неплохо обеспечить прозрачное управление группой контейнеров не вдаваясь в детали, что половина из них linux а половина windows, на одной машине… Просто для неродных контейнеров поднимается отдельное легкое ядро и ура...


                                    Эхх мечты мечты...

                          +1

                          Публичная бета работает с HyperV. Работает нормально — пожалуй, поудобней, чем стандартный вариант на VirtualBox. Но всё-таки он не "нативный" в полном смысле слова.

                        +7
                        Я еще когда в школе учился, coLinux запускали на шиндовз, с окошечками.
                          +5
                          Жаль он не появился x64. Хорошая была штука.
                            0
                            Вроде начинали. Забросили и надежды нет?
                              0
                              Там уже давно всё умерло, к сожалению. Даже 32 битная версия уже давно труп.
                          0
                          По идее, нативная поддержка dbus в винде сильно упростит написание кроссплатформенных программ с межпроцессным взаимодействием. Хорошо бы еще именованные каналы в винде и линуксе были совместимы.
                          • UFO just landed and posted this here
                              0
                              WSAPoll() сломаный

                              А можно поподробнее, ибо используется и, вроде как, работает?

                              • UFO just landed and posted this here
                              0
                              Dbus под виндовс давно работает нативно (через tcp-сокеты, а не unix, конечно). Проект kde-windows слышали? community.kde.org/Windows, большинство приложений требует dbus.
                              0
                              Только с ускорением там всё печально. По сути Х-сервер и клиенты работают на разных системах, общаются через сокет, общей памяти нет.
                              Интересно, какие есть способы взаимодействия процессов на двух системах в этом плане?
                              • UFO just landed and posted this here
                                  +2
                                  «без особых проблем» — 4 раза практически подряд. ААААА!
                                    0
                                    Графическая оболочка редка нужна при работе с серверной версией. Хотя тот факт, что баш под виндой научили чему-то новому радует. Сам пробовал обновлять виндовский баш ubuntu до 16.04. При некотором шаманстве обновилось, то отваливается большая часть функционала и улетают многие настройки. Учитывая, что починить проблему с работой PostgreSQL не могут уже больше месяца, перспектива полноценной работы из под винды пока призрачная.
                                      –11
                                      Некоторые безответственные сотрудники Microsoft давненько страдают неудержимым бредом. Для департаментов маркетинга это обычное дело, но вот эта новость что-то новенькое.

                                      И вообще, зачем все это?
                                        –6
                                        И вообще, зачем все это?
                                        Embrace, Extend, and Extinguish. Шутка. Но в каждой шутке — как известно…

                                        [РежимПараноика=on]
                                        Windows 10 «прославилась» своим неуемным любопытством и «сливами» информации. А теперь представьте, что какой нибудь админ будет админить Linux-сервера через этого мутанта, который работает через виндовс, которая сливает информацию…
                                        [РежимПараноика=off]
                                          –6
                                          Да уж… судя по минусам в комментариях, я понял, HABR это в некотором роде, сборище летающих в облаках товарищей.
                                          –4
                                          Почему М$ давно не догадалась этого сделать. Весь код открыт, вполне легко реализовать API и перетянуть весь софт линукса в винду. Линукс таким образом становится еще менее полезным чем был для обычного пользователя. Только в рамках железок вроде телефона, да и то только там где производитель отчисления платить отказался он и будет продолжать жить. Отличная подножка линуксу сделана, обратное то невозможно, wine как глючил, так и глючит.
                                            0
                                            Дайте им время
                                              +1
                                              Microsoft давно догадалась это сделать. Самые ранние версии NT уже имели API для запуска POSIX приложений. На Channel 9 есть интересные видео о том почему не легко было это сделать, даже имея открытый код (несоответствие спецификации распространённых решений в *nix, отсутствие соответствия многих элементов API между WinNT и *nix и прочее).
                                                0
                                                В Linux много своего, не POSIX, API. Большенство приложений потребуется как минимум перекомпилировать.
                                                +2
                                                > Весь код открыт, вполне легко реализовать API и перетянуть весь софт линукса в винду
                                                Это года работы, тестирования, отладки, костылей для целой компании в несколько сот человек. И еще main винды вливать, чтобы не оставать.
                                                  0
                                                  Да какая подножка, у них ниши разные. Просто чуть удобнее будет работать людям, которым нужны и виндовс и линукс, не придётся пререгружаться/виртуалки ставить.
                                                    0
                                                    Я написал «для обычного пользователя» то есть десктоп, куда линукс в последнее время нацелился. Ниша у них в этом месте одна.
                                                      +1
                                                      Тогда дайте определение «обычного пользователя» в вашем представлении. Если это пользователь, для которого предел возможностей компьютера — зайти во вконтакт/фейсбук и посмотреть фотки котиков — то для них ничего не поменялось от того, что в винде появилась возможность использовать командную строку линукса. Более того, на самом деле линукс для них лучше — потому что браузеры-то те же, но система сама бесплатна. Если это пользователь, которому нужно много разного софта — для работы ли, или для игр, не важно — то для него виндовс уже сейчас намного лучше, и опять же, совершенно не важно, умеет ли винда ком.строку линукса или нет. Так что даже в части десктопа ничего не меняется. Ну или если я неправ — то расскажите мне, что же это за такие загадочные «обычные пользователи», для которых наличие в винде линуксовых команд настолько критично, что повлияет на выбор системы.
                                                  +2
                                                  Пользователь Reddit с ником w2qw нашел способ установить VIM и Firefox.

                                                  как будто это какое-то достижение
                                                    0
                                                    Lindows!
                                                      0
                                                      А apt-get там работает?
                                                      Шоколадный менеджер пакетов пока не столь удобен.
                                                        +1
                                                        Да, как и много всего остального консольного
                                                          0
                                                          Более того, apt-get даже пытается обновить загрузчик. Было бы забавно, если бы смог. Был на винде, поставил пакеты, перезагрузился… Linux.
                                                          0
                                                          Если apt есть значит apt-get будет. (Хотя и это тоже не совсем верно.)
                                                            +1
                                                            apt-get install wine)
                                                              –1
                                                              А зачем катать динамическую трансляцию того что уже имеется?
                                                              WINE нужен только в Unix-like системах и не более того.
                                                              (Unix-slice в Windows, по моему мнению не есть хорошо.)
                                                          +1
                                                          M$ лиса пробирается в пингвинятник, а вы и рады.
                                                            +1
                                                            А вот я буду рад, если когда-нибудь будут вместо кучи ОС линуксов и виндов разных одна винда и линукс в одном флаконе. Это должно когда-то случиться. Весь вопрос в политике — кто и что будет в этой ОС контролировать: МС будет держать это под контролем, или какое-либо сообщество программистов.
                                                            Если что, дома с 2008 года на линуксе, на работе — винда, линукса немного тоже есть. С появлением и развитием powershell и вовсе становится работать всё удобнее.
                                                            В любом случае ОС — это только инструмент, и для каждой ситуации он должен быть свой, наиболее подходящий. Это не значит, что один инструмент плохой, другой хороший, просто они для разных задач, и кое-где могут дублировать функции друг друга.
                                                            • UFO just landed and posted this here
                                                                0
                                                                Увы, нет никакой гарантии, что к тому времени (если не уже) бэкдоров подобных Intel ME не будет в ARM.
                                                                • UFO just landed and posted this here
                                                                  0
                                                                  Винда сливает по количеству мелких и бесплатных приложений? Вы это серьёзно сейчас? Я чрезывычайно редко нахожу что-то, что одновременно есть на линуксе, нет на винде, и при этом нужно. И обычно это что-то, что не портировали только в силу серьёзных различий в архитектуре, так что эта ситуация вряд ли поменяется существенно.
                                                                  А по поводу ухода с x86 — а куда? Есть адекватные варианты, которые были бы сравнимы по сочетанию быстродействия и количества существующего софта?
                                                                  • UFO just landed and posted this here
                                                                      0
                                                                      >чтобы не старше 3-5 лет была
                                                                      Вам шашечки или ехать? Если работает и выполняет свои функции — мне, простите, сугубо фиолетово, сколько лет этому коду. Или это вы хвастаетесь что под линуксом софта так мало, что его до сих пор пишут? Так я в курсе…

                                                                      К сожалению, тенденции таковы, что и нынешние мобильные процессоры, и эльбрус этот ваш, и старые коредуо — уже попросту не справляются с современным говнософтом, в котором «оптимизация? не, не слышали, память дешёвая, процы быстрые!». И это не только про виндовс сейсчас речь, если что. Так что вот просто так взять и на что-то пересесть — не так-то просто.

                                                                      Но в общем-то о главном вы сказали в конце — " главное чтобы ОС собралась ", то есть софт вам не нужен — вы ничего не делаете. Тогда вы действительно довольно независимы, и можете уйти с x86 в любой момент. Кстати, советую вам в качестве ОС Колибри, во всяком случае пока вы ещё на x86 — она полностью покроет ваши потребности, и будет прекрасно работать на старых процессорах без всяких столь неприятных вам фич.
                                                                      • UFO just landed and posted this here
                                                                          0
                                                                          > у вас весь софт свыше и сделать с ним ничего нельзя
                                                                          Не весь. Но заметная часть нужного софта не имеет открытых исходников — что прикажете с этим делать, кроме как ныть? Даже далеко не будем ходить — соберите мне Skype с оптимизациями, чтоб было 5-50% прироста — я думаю я не один буду вам благодарен.
                                                                          >С памятью — беда, действительно проще купить 16/32 гига и забыть об этом лет на 5-10.
                                                                          Мне например чтобы поставить 32 гига нужно как минимум купить новый компьютер. Ну, винты и видеокарту можно старые оставить.
                                                                          • UFO just landed and posted this here
                                                              0
                                                              Товарищи, разрешите пожалуйста поинтересоваться (серьезно, это не холивар, а лишь попытка разобраться и понять!). А вот зачем запускать линуховые XFCE или Unity под виндой? Ну тоесть какая задача так решается? Превратить винду в линукс? Так ведь есть линукс… Запускать линукс-приложения под виндой? Можно конечно подумать типа «Любые приложения пофиг для чего написанные запускать пофиг где». Но ИМХО уж лучше делать приложения изначально кроссплатформенными. И вроде как тенденции именно такие. А так какое-то костыль-ориентированное программирование получается.,.
                                                                0
                                                                костыль-ориентированное программирование

                                                                Новое слово в разработке ПО! Возьму на заметку)
                                                                  0
                                                                  Таки по большей части всё legacy это как раз оно ибо по другому никак иначе обратная совместимость в том числе с багами и уже существующими костылями к этим багам где нибудь сломается )
                                                                –3
                                                                Зачем нужен этот идиотизм?

                                                                Очередная мертворожденная «технология» от Microsoft, как говорится народ кушает то, что ему дают.

                                                                Only users with full accounts can post comments. Log in, please.