Пакеты xrdp и xorgxrdp (+/- git) должны быть идеально выровнены. Если один обновится , а другой нет, работать не будет.
Пакеты xrdp и xorgxrdp (+/- git) должны быть правильно подписаны, что является периодически возникающей проблемой.
Если вы используете среду рабочего стола, которая не является XFCE , то вам придется внести некоторые изменения.
К счастью, если вы здесь, вы, вероятно, используете среду рабочего стола Manjaro по умолчанию, которая является XFCE.
Действия:
sudo pacman -Sy base-devel xorg-server-devel yayyay -S xrdp xorgxrdp-gitecho "allowed_users = anybody" | sudo tee -a /etc/X11/Xwrapper.configsed -i '12s/xfce-session/xfce4-session/g' ~/.xinitrcsed -i '42s/ --exit-with-session//g' ~/.xinitrcsed -i '66s/\$1/\$SESSION/g' ~/.xinitrcsudo systemctl enable xrdpsudo systemctl start xrdp
Что мы делаем:
Первая строка устанавливает пакеты, которые вам понадобятся для сборки и установки xrdp и его партнеров.
Вторая строка устанавливает xrdp и xorgxrdp-git , которые и являются целью этого упражнения.
Третья строка позволяет вам войти в сеанс X (рабочего стола), не находясь за компьютером, что довольно важно, если вашей целью является удаленное подключение.
Строки 4–6 исправляют некоторые типографские ошибки, препятствующие нормальной работе xrdp .
Строки 7-8 включают и запускают службу xrdp .
Вариан с корректировкой:
На основе статьи XRDP на Manjaro (устранение проблемы с пустым экраном) 114, вот скрипт bash, который автоматизирует процесс установки и настройки xRDP на Manjaro Linux с рабочей средой XFCE:
Установите необходимые пакеты:
sudo pacman -Sy base-devel xorg-server-devel yayyay -S xrdp xorgxrdp-git
Отредактируйте ~/.xinitrc, чтобы использовать xfce4-session вместо xfce-session:
sed -i 's/SESSION=\${1:-xfce-session}/SESSION=\${1:-xfce4-session}/' ~/.xinitrc
Разрешить любому человеку запускать X:
echo "allowed_users = anybody" | sudo tee -a /etc/X11/Xwrapper.config
Настройте xrdp:
sudo systemctl enable --now xrdp.service
Скрипт корректировок XRDP:
#!/bin/bash
# Function to install and configure xRDPconfigure_xrdp() { # Update system echo "Updating system..." sudo pacman -Syu
# Install xrdp and xorgxrdp-git from AUR echo "Installing xrdp and xorgxrdp-git..." sudo pacman -Sy yay base-devel xorg-xserver-devel yay -S xrdp xorgxrdp
# Allow any user to start an X session echo "Configuring Xwrapper..." echo "allowed_users=anybody" | sudo tee -a /etc/X11/Xwrapper.config
# Configure .xinitrc file for XFCE desktop echo "Configuring .xinitrc..." sed -i 's/^\(SESSION=${1:-xfce-session}\)$/#\1 # original\nSESSION=${1:-xfce4-session}/' ~/.xinitrc sed -i 's/^\s*\(local dbus_args=(--sh-syntax --exit-with-session)\)$/#\1 # original\nlocal dbus_args=(--sh-syntax)/' ~/.xinitrc sed -i 's/^\(exec $(get_session "$1")\)$/#\1 # original\nexec $(get_session "$SESSION")/' ~/.xinitrc
# Enable xrdp echo "Enabling xrdp service..." sudo systemctl enable --now xrdp.service}
# Call the functionconfigure_xrdp
Чтобы использовать этот скрипт:
Сохраните его в файл, например configure_xrdp.sh, затем сделайте его исполняемым с помощью команды:
chmod +x configure_xrdp.sh
Наконец, запустите скрипт с помощью:
./configure_xrdp.sh
ᅠ