Запустите ubuntu-desktop на WSL (Ubuntu 18.04 LTS)

Я использую 18.04 LTS в подсистеме Windows для Linux (WSL). Я установил Ubuntu Desktop, запустив

sudo apt-get install ubuntu-desktop

Однако, когда я запускаю Linux, запускается только терминал. Как запустить рабочий стол?

3
задан 2 August 2019 в 06:58

4 ответа

Сам Windows 10 не поддерживает GUI. Для выполнения GUI в wsl, необходимо установить X-сервер и заставить его настраивать правильно.

я предложил бы, чтобы Вы установили VcXsrv для отображения GUI.

я не могу выполнить GUI успешно sudo apt-get install ubuntu-desktop. Однако я успешно установил настольный помощником GUI в [1 125] Debian и , ubuntu.

Here является шагами для меня для отображения GUI wsl. Можно проверить мои видео на подробных шагах Установка GUI (рабочий стол помощника) к шагу 1 Linux

Подсистемы Microsoft Windows: установка Debian или Ubuntu подсистема Linux: - PowerShell как администратор: Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux - Microsoft Store: установите шаг 2 "Debian" или "человечности"

: помощник установки tesktop для [1 129] Debian: - открывают Debian в окнах 10. Тип следующее рекомендует - sudo apt-get update - sudo apt install task-mate-desktop

ИЛИ рабочий стол помощника установки для [1 131] Ubuntu - открытая консоль Ubuntu в окнах 10 - sudo apt install tasksel - sudo apt update - sudo tasksel install ubuntu-mate-desktop

шаг 3: установка VcXsrv в окнах 10: - загружают с: https://sourceforge.net/projects/vcxsrv / - открывают XLauch и используют следующие опции для установки - select: "One large window" - Display number: 0 - next - Start no client - next - finish

шаг 4: дисплей установки в консоли Linux: - export DISPLAY=:0 - export LIBGL_ALWAYS_INDIRECT=1

шаг 5: запускают настольную среду Помощника: - выполненный mate-session

Шаг 3 и шаг 4 чрезвычайно важны для отображения GUI в окнах 10 wsl.

1
ответ дан 23 October 2019 в 17:48

@gus33000 отправил рабочее решение в Твиттере:

https://twitter.com/gus33000/status/1188517307867381761

быстрое краткое изложение для людей, желающих воссоздать это:

Установка WSL

Установки VcXsrv

Установки Ubuntu от хранилища

sudo Кв. - получает обновление

, sudo Кв. - получает рабочий стол человечности установки

, sudo сервис dbus запускается

sudo сервис x11-общий запуск

оболочка гнома - x11-r

0
ответ дан 1 December 2019 в 16:15

Столь же большой, как WSL, он действительно не разработан для такой вещи.

Если Ваша цель состоит в том, чтобы получить полный Рабочий стол Ubuntu, она имеет намного больше смысла просто установить полную Виртуальную машину Ubuntu, с помощью чего-то как Virtualbox, Hyper-V, и т.д. Удачи!

2
ответ дан 1 December 2019 в 16:15

enter image description here Следующие инструкции были скопированы и вставлены из статьи, которую я написал, но она потеряла исходное форматирование, ссылки и скриншоты:

Источник: Как установить Ubuntu Desktop с графическим пользовательским интерфейсом в WSL2


Скачать VcXsrv: Посетите официальный сайт Нажмите «Скачать»


Установите VcXsrv: Откройте "vcxsrv-64.1.20.8.1.installer.exe" Нажмите "Далее" Нажмите «Установить» Нажмите «Закрыть»


Разрешить доступ к VcXsrv: Проверьте «Частные сети» Нажмите «Разрешить доступ»


Откройте PowerShell: Нажмите «⊞ Windows» Введите «PowerShell» в строку поиска Щелкните правой кнопкой мыши «Windows PowerShell». Нажмите «Запуск от имени администратора»


Откройте WSL2: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Enter»

wsl


Установите рабочий стол Ubuntu: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Enter»

sudo apt --yes install ubuntu-desktop


Установите переменную имени пользователя: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Enter»

username=$(wslvar USERNAME)


Создайте каталог Ubuntu: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Enter»

mkdir --parents /mnt/c/users/$username/.ubuntu/


Откройте каталог Ubuntu: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Enter»

cd /mnt/c/users/$username/.ubuntu


Загрузите репозиторий программного обеспечения Linux для продуктов Microsoft: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Ввод»

Ubuntu 20.04: wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb --output-document packages-microsoft-prod.deb Ubuntu 18.04: wget https://packages.microsoft.com/config/ubuntu /18.04/packages-microsoft-prod.deb --output-document packages-microsoft-prod.deb


Установите репозиторий программного обеспечения Linux для продуктов Microsoft: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Enter»

sudo dpkg --install packages-microsoft-prod.deb


Обновите репозитории: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Enter»

sudo apt update


Установите транспорт APT для HTTPS: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите "Enter"

sudo apt install --yes apt-transport-https


Обновите репозитории: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите "Enter"

sudo apt update


Установите .Net: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Enter»

sudo apt install --yes dotnet-sdk-5.0


Добавьте Arkane Systems в каталог исходного кода: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Enter»

sudo sh -c 'echo «deb [trusted = yes] https://wsl-translinux.arkane-systems.net/apt/ /» > /etc/apt/sources.list.d/ wsl-транслинукс.list'


Обновите репозитории: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Enter»

sudo apt update


Установите Genie: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Enter»

sudo apt install --yes systemd-genie


Создайте файл Sudoers: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите "Enter"

echo "$USER ALL=(ALL) NOPASSWD:/usr/bin/genie" | sudo EDITOR="tee" visudo --file /etc/sudoers.d/$USER


Создайте сценарий рабочего стола: Скопируйте код ниже этой инструкции Вставьте код в PowerShell Нажмите "Enter"


# CREATE BASH SCRIPT

# Store block of text with here document
create_bash_script=$(cat << end_of_string

# Define necessary environment variables
export DISPLAY="\$(cat /etc/resolv.conf | grep nameserver | awk '{ print \$2 }'):1.0"
export DESKTOP_SESSION="ubuntu"
export GDMSESSION="ubuntu"
export XDG_SESSION_DESKTOP="ubuntu"
export XDG_CURRENT_DESKTOP="ubuntu:GNOME"
export XDG_SESSION_TYPE="x11"
export XDG_BACKEND="x11"
export XDG_SESSION_CLASS="user"
export XDG_DATA_DIRS="/usr/local/share/:/usr/share/:/var/lib/snapd/desktop"
export XDG_CONFIG_DIRS="/etc/xdg"
export XDG_RUNTIME_DIR="\$HOME/xdg"
export XDG_CONFIG_HOME="\$HOME/.config"
export XDG_DATA_HOME="\$HOME/.local/share" 
export XDG_CACHE_HOME="\$HOME/.cache"
export XDG_DESKTOP_DIR="\$HOME/Desktop"
export XDG_DOCUMENTS_DIR="\$HOME/Documents"
export XDG_DOWNLOAD_DIR="\$HOME/Downloads"
export XDG_MUSIC_DIR="\$HOME/Music"
export XDG_PICTURES_DIR="\$HOME/Pictures"
export XDG_PUBLICSHARE_DIR="\$HOME/Public"
export XDG_TEMPLATES_DIR="\$HOME/Templates"
export XDG_VIDEOS_DIR="\$HOME/Videos"

# Start desktop environment
gnome-session

end_of_string
)

# Store username environment variable in lowercase
username=$(wslvar USERNAME | awk '{ print tolower($0) }') &&

# Save block of text in bash file
echo "${create_bash_script}" > "/mnt/c/users/$username/.ubuntu/02_start_desktop.sh"


Загрузите изображения ярлыков: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Ввод»

wget https://assets.ubuntu.com/v1/9fbc8a44-circle-of-friends-web.zip


Разархивируйте изображения ярлыков: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите "Enter"

unzip -o 9fbc8a44-circle-of-friends-web.zip


Создайте ярлык: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Enter»

convert -resize 64x64 ./circle-of-friends-web/png/cof_orange_hex.png ubuntu.ico


Выход из WSL2: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите "Enter"

выйти


Создайте скрипт VcXsrv: Скопируйте код ниже этой инструкции Вставьте код в PowerShell Нажмите "Enter"


# RELOAD VCXSRV SCRIPT

# Store username environment variable in lowercase
$username = $env:username.tolower()  

# Store block of text with here-string
$reload_vcxsrv_script = @"

# Stop vcxsrv proccess that contains "1.0" in the program window title
get-process vcxsrv | where { `$_.mainwindowtitle -like "*1.0*" } | stop-process

# Start vcxsrv process in a large program window on display number one
start-process "c:\program files\vcxsrv\vcxsrv.exe" -argument ":1 -ac -nowgl -multimonitors -dpms"

"@

# Save block of text in powershell file
echo "${reload_vcxsrv_script}" > $env:userprofile/.ubuntu/reload_vcxsrv.ps1


Создайте скрипт Ubuntu: Скопируйте код ниже этой инструкции Вставьте код в PowerShell Нажмите "Enter"


# CREATE VISUAL BASIC SCRIPT

# Store username environment variable in lowercase
$username = $env:username.tolower()           

# Store block of text with here-string
$create_vbs_script = @"

' Run PowerShell script in background
set application = createobject("shell.application")
application.shellexecute "powershell", "-file c:\users\admin\.ubuntu\01_reload_vcxsrv.ps1", "", "", 0

' Allow PowerShell script to complete
wscript.sleep 3000

' Run Bash script in background
set shell= createobject("wscript.shell")
shell.run "wsl sudo genie -c bash /mnt/c/users/admin/.ubuntu/02_start_desktop.sh", 0

"@

# Save block of text in bash file
echo "${create_vbs_script}" > $env:userprofile/.ubuntu/03_start_ubuntu.vbs


Создайте скрипт быстрого доступа: Скопируйте код ниже этой инструкции Вставьте код в PowerShell Нажмите "Enter"


# Store block of text with here-string
$create_shortcut_script = @"

# Define location variables
`$shortcut_location = "`$env:userprofile\.ubuntu\Ubuntu.lnk"
`$program_location = "`$env:userprofile\.ubuntu\03_start_ubuntu.vbs"

# Create shortcut
`$object = new-object -comobject wscript.shell
`$shortcut = `$object.createshortcut(`$shortcut_location)
`$shortcut.targetpath = `$program_location
`$shortcut.iconlocation = "`$env:userprofile\.ubuntu\ubuntu.ico"
`$shortcut.save()

"@

# Save block of text in powershell file
echo $create_shortcut_script > $env:userprofile/.ubuntu/04_create_shortcut.ps1


Откройте каталог Ubuntu: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите "Enter"

cd c:\users\admin\.ubuntu


Создайте ярлык:Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите «Enter»

powershell.exe -file .\04_create_shortcut.ps1


Откройте каталог в Проводнике: Скопируйте команду ниже этой инструкции Вставьте команду в PowerShell Нажмите "Enter"

проводник.


Запустите рабочий стол Ubuntu: Дважды щелкните ярлык «Ubuntu»


Откройте терминал: Нажмите «Действия» в верхнем левом углу. Введите «Терминал» в строку поиска Нажмите «Терминал»


Отключите блокировку экрана: Скопируйте команду ниже этой инструкции Вставьте команду в Терминал Нажмите «Enter»

gsettings set org.gnome.desktop.screensaver lock-enabled false


Установите Snap Store: Скопируйте команду ниже этой инструкции Вставьте команду в Терминал Нажмите «Enter»

sudo snap install snap-store


2
ответ дан 14 December 2020 в 18:12

Другие вопросы по тегам:

Похожие вопросы: