StartXCFE4 с Vcxsrv не работает

StartXCFE4 с Vcxsrv не работает
  • Версия WSL: 1.0.3.0
  • Версия Ubuntu: 22.04.1 LTS

Vcxsrv по-прежнему черный.

Я добавил export DISPLAY=:172.X.XXX.X:0.0в свой .bashrcфайл.

При запуске команды sudo startxfce4появляется следующее сообщение:

(xfwm4:4818): xfwm4-WARNING **: 15:06:25.234: Could not find a screen to manage, exiting

(xfsettingsd:4826): libupower-glib-WARNING **: 15:06:25.308: Couldn’t connect to proxy: Could not connect: No such file or directory
xfsettingsd: Another clipboard manager is already running.

(xfsettingsd:4826): xfsettingsd-WARNING **: 15:06:25.656: Failed to get the _NET_NUMBER_OF_DESKTOPS property.

решение1

Несколько проблем, которые необходимо решить:

  • Во-первых, вы пытаетесь запустить startxfce4с помощью sudo. Это проблема, потому что (a) вы действительно не хотите запускать свой рабочий стол как root, и (b) sudoпо умолчанию не передает переменные среды от вашего пользователя в sudoсеанс, поэтому нет DISPLAYнабора.

  • Во-вторых, даже если вы работаете как обычный пользователь, Xfce4 увидит WAYLAND_DISPLAYпеременную, предоставляемую WSLg, и откажется запускаться, поскольку Wayland на WSL предоставляется компанией Weston, которая предоставляет свой собственный оконный менеджер (см.этот ответдля получения подробной информации).

Мне удалось запустить Xfce4 с полноэкранным сеансом VcXsrv, используя следующее:

  • Запустите Xlaunch с параметрами «Одно окно без заголовка», «Запустить без клиента» и «Отключить контроль доступа».

  • В Убунту:

    export DISPLAY=$(hostname).local:0
    export WAYLAND_DISPLAY=
    startxfce4
    

    Форма export DISPLAY, которую я там использую, работаетнесмотря ни на чтоIP-адреса WSL, сетевого коммутатора WSL2 или самой Windows. Однако для этого требуется использовать встроенный резолвер WSL2.

  • Это, вероятно, также потребует правила брандмауэра. Обычно Защитник Windows создает диалоговое окно с просьбой одобрить или отклонить подключениепри первом использовании. Если вы уже устанавливали соединение в прошлом, то это правило могло быть создано для вас. Однако, если вы пропустили диалоговое окно (оно иногда всплываетпозадидругие окна), то, возможно, было установлено правило «запрета», которое вам нужно исправить.

Связанный контент