安装桌面环境
如果是安装的无桌面系统, 需要先安装桌面环境; 环境最低是 Ubuntu 22.04 + GNOME;
# 更换为阿里云镜像(如果是国内vps)
sudo cp /etc/apt/sources.list{,.bak} # 备份 sources.list
sed -i -E 's#https?://(.*).*/ubuntu#https://mirrors.aliyun.com/ubuntu#g' /etc/apt/sources.list.test
sudo apt update -y && sudo apt upgrade -y
# 安装 GNOME 桌面环境
sudo apt install ubuntu-desktop gnome-core -y
sudo apt install -y gnome-remote-desktop gnome-session gdm3 dbus dbus-user-session gnome-shell
# 启用图形界面
sudo systemctl set-default graphical.target
# 启动 GDM 服务
sudo systemctl start gdm3
# 如果开启了防火墙,需要放行 RDP 端口(默认 3389)
sudo ufw allow 3389/tcp
gsettings set org.gnome.desktop.remote-desktop.rdp enable true
systemctl --user restart gnome-remote-desktop # 重启服务
systemctl --user status gnome-remote-desktop # 查看状态
开启远程桌面
如果是vps, 需要通过面板后台的vnc
登录系统配置.
Ubuntu, Settings-Sharing(共享)-Remote Desktop(远程桌面), 开启 Remote Desktop
/ Remote Control
.
开启后的密码是随机的, 要手动改下, 密码错误RDP登录会提示 "发生身份验证错误,给函数提供标志无效"
禁用屏幕锁定和自动休眠: Screen - Blank Screen Delay
设成Never
, 禁用Automatic Screen Lock
;
启用自动登录: Users - 启用Automatic Login
重置 keyring: mv ~/.local/share/keyrings ~/.local/share/keyrings.bak
重启后, 打开 Remote Desktop
, 提示设置密码, 全部留空.
编辑 ~/.local/share/keyrings/Default_keyring.keyrin
改里面的明文密码;
重启测试, 就可直接RDP连接了 (不设置这些, rdp要用户登录了桌面账号才能连接);
配置分辨率
在vps里测试, 分辨率只能1024x768 (Settings-Displays里不能选更高的分辨率), RDP连接后窗口非常小. 需要手动创建虚拟显示器.
gsettings set org.gnome.desktop.remote-desktop.rdp screen-share-mode 'mirror-primary' # 设置成镜像模式(设成extend可能闪退)
# gsettings get org.gnome.desktop.interface scaling-factor
gsettings set org.gnome.desktop.interface scaling-factor 1 # 设置缩放 100%
gsettings set org.gnome.mutter experimental-features "['scale-monitor-framebuffer']" # 启用 GNOME 的实验性缩放功能
dconf write /org/gnome/desktop/remote-desktop/rdp/resize-guest true
sudo apt install -y xserver-xorg-core xserver-xorg-video-all xserver-xorg-video-qxl xserver-xorg-video-fbdev xserver-xorg-video-vesa xserver-xorg-video-dummy
# 创建虚拟显示器
# vi /usr/share/X11/xorg.conf.d/10-dummy.conf, 内容:
Section "Device"
Identifier "Dummy"
Driver "dummy"
VideoRam 256000
EndSection
Section "Monitor"
Identifier "Monitor0"
HorizSync 28.0-80.0
VertRefresh 48.0-75.0
EndSection
Section "Screen"
Identifier "Screen0"
Device "Dummy"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1920x1080" "1600x900" "1366x768"
EndSubSection
EndSection
# 重新加载显示配置
systemctl restart gdm3
# systemctl --user restart gnome-remote-desktop
重新RDP连接, 看是不是窗口变大了. 如果没效果, 在Settings-Displays(显示器)-Resolution(分辨率), 设置成1920x1080
分辨率.
FAQs
- 如果添加/修改某个配置, 出现黑屏等异常, 可尝试删除修改的配置, 重启系统 或
gnome-remote-desktop
再试. - 遇到问题, 也可试试问问GPT.
总结
用 windows 电脑的远程桌面(Microsoft Remote Desktop)连接, 体验还算不错;
用 手机端的ms rdp(windows app mobile) 连接桌面会被压缩变形 (连win系统的远程桌面会自适应);
建议安装chrome(比Firefox流畅些); 搜狗输入法/Clash Verge是可以在Ubuntu桌面安装的;
建议低配 VPS 选择 Ubuntu 的桌面系统; 高配 VPS 选择 Windows 系统, 会有更好的远程桌面体验;
当然, 喜欢Linux, 或者有特殊需求, 用Ubuntu的桌面系统也还不错.