从 Ubuntu 22.04(阿里云轻量 2核2G/40G)安装轻量桌面(XFCE)+ 配置 xrdp(Windows mstsc 稳定连接)+ 安装 Chrome(含你遇到的 sudo 权限问题的标准处理)+ 流畅度优化与故障排查。
Ubuntu 22.04 轻量桌面 + mstsc(xrdp)+ Chrome 安装操作手册
目标环境
- 服务器:阿里云轻量应用服务器
- 系统:Ubuntu 22.04(Server)
- 配置:2核 / 2GB 内存 / 40GB 磁盘
- 访问:Windows 自带 mstsc(RDP 3389)稳定连接、操作尽量流畅
一、前置准备(阿里云控制台)
- 系统建议:Ubuntu 22.04 LTS(Server)
- 安全组/防火墙放行:
- 入方向放行:
TCP 3389 - 强烈建议:限制来源 IP 为你自己的公网 IP(不要 0.0.0.0/0)
你已放行 3389:OK。
二、用 SSH 登录服务器(Windows)
PowerShell/终端:
ssh root@你的公网IP
如果你当前只用 rdpuser 登录且没有 sudo 权限,后续涉及安装的软件必须用 root 来做(或先把 rdpuser 加入 sudo 组)。
三、系统基础优化:加 Swap(2G 内存强烈建议)
建议加 2G swap(磁盘 40G 足够):
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo '/swapfile none swap sw 0 0' | tee -a /etc/fstab
free -h
四、安装轻量桌面 XFCE + xrdp(mstsc 用)
4.1 更新系统
apt update && apt -y upgrade
4.2 安装 XFCE(轻量桌面)+ xrdp(RDP 服务)+ xorgxrdp(关键)
apt -y install --no-install-recommends \
xfce4 xfce4-goodies \
dbus-x11 xorg \
xrdp xorgxrdp
4.3 启用并启动 xrdp
systemctl enable --now xrdp
adduser xrdp ssl-cert
systemctl restart xrdp
systemctl status xrdp --no-pager
4.4(推荐)创建专用远程桌面账号 rdpuser,并给 sudo 权限
adduser rdpuser
usermod -aG sudo rdpuser
检查是否已在 sudo 组:
groups rdpuser
注意:加入 sudo 组后,rdpuser 必须重新登录(退出 SSH/RDP 再登录)权限才会生效。
五、配置 XRDP 启动 XFCE(避免黑屏/断开)
5.1 给 rdpuser 指定会话启动为 XFCE
sudo -u rdpuser bash -lc 'echo "startxfce4" > ~/.xsession'
sudo -u rdpuser chmod +x /home/rdpuser/.xsession
5.2 修改 xrdp 的 startwm.sh(黑屏修复关键)
编辑文件:
nano /etc/xrdp/startwm.sh
在文件末尾添加(或确保存在)以下内容:
# --- custom: start xfce for xrdp ---
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
startxfce4
保存退出后重启 xrdp:
systemctl restart xrdp
六、检查端口监听(确认 RDP 服务正常)
ss -lntp | grep 3389
看到 xrdp 监听 3389 即正常。
七、Windows mstsc 连接设置(流畅度关键)
在 Windows 打开 远程桌面连接(mstsc):
计算机:
公网IP:3389用户名:
rdpuser分辨率:先选 1280×720 或 1366×768(太大更卡)
-
体验设置:
- 取消:桌面背景、字体平滑、动画等
- 勾选:位图缓存(Bitmap caching)
八、安装 Chrome 浏览器(含 sudo 权限问题解决)
8.1 先确认架构(必须 x86_64 才能装官方 amd64 deb)
uname -m
- 输出
x86_64:继续 - 如果是
aarch64/arm64:官方 Chrome stable 不适配(需改用 Chromium 等)
8.2 下载 Chrome deb 包
建议在任意用户下都可以下载:
cd /tmp
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
8.3 安装 Chrome(必须有 sudo 或 root)
方式 A:rdpuser 已有 sudo(推荐)
sudo apt update
sudo apt install -y ./google-chrome-stable_current_amd64.deb
方式 B:你遇到的情况——rdpuser 没 sudo(“not in the sudoers file”)
- 解决方法:用 root 执行(或者先把 rdpuser 加入 sudo 组)
B1)root 直接安装(最快)
cd /tmp
apt update
apt install -y ./google-chrome-stable_current_amd64.deb
B2)给 rdpuser 加 sudo 权限(标准做法)
usermod -aG sudo rdpuser
然后让 rdpuser 退出并重新登录,再执行:
cd /tmp
sudo apt update
sudo apt install -y ./google-chrome-stable_current_amd64.deb
8.4 验证安装
google-chrome-stable --version
8.5 启动 Chrome(RDP 下推荐带参数,减少黑屏/渲染问题)
google-chrome-stable --disable-gpu --disable-software-rasterizer --disable-dev-shm-usage
九、RDP 流畅度优化建议(强烈建议做)
9.1 关闭 XFCE 合成器(明显减少拖动/滚动卡顿)
进入桌面后:
- Settings → Window Manager Tweaks → Compositor
- 取消:Enable display compositing
9.2 降低桌面效果
- 关闭透明、阴影、动画(能关的尽量关)
- RDP 分辨率控制在 720p/768p 级别更顺滑
9.3 装字体(可选,中文显示更好)
sudo apt -y install fonts-noto-cjk
十、常见问题排查
10.1 mstsc 能连上但黑屏/马上断开
优先看日志:
tail -n 200 /var/log/xrdp.log
tail -n 200 /var/log/xrdp-sesman.log
最常见原因:
-
/etc/xrdp/startwm.sh没正确startxfce4 - 缺少
unset DBUS_SESSION_BUS_ADDRESS和unset XDG_RUNTIME_DIR -
~/.xsession未设置为startxfce4
10.2 mstsc 连不上(超时/拒绝)
检查三件套:
- 阿里云安全组入方向 TCP 3389 是否放行(你已放行)
- 服务器是否监听 3389:
ss -lntp | grep 3389
- 服务是否正常:
systemctl status xrdp --no-pager
10.3 Chrome “command not found”
说明未安装成功(通常是 sudo 权限不足导致安装没执行),按第八章重新用 root/sudo 安装即可。
十一、安全加固(强烈建议)
- 安全组 3389 只放行你的公网 IP(最有效)
- 安装 Fail2ban 防爆破:
sudo apt -y install fail2ban
sudo systemctl enable --now fail2ban
最短“从零到可用”命令清单(root 下执行)
如果你想一口气跑完(假设你已放行 3389):
apt update && apt -y upgrade
fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo '/swapfile none swap sw 0 0' | tee -a /etc/fstab
apt -y install --no-install-recommends \
xfce4 xfce4-goodies \
dbus-x11 xorg \
xrdp xorgxrdp
systemctl enable --now xrdp
adduser xrdp ssl-cert
systemctl restart xrdp
adduser rdpuser
usermod -aG sudo rdpuser
sudo -u rdpuser bash -lc 'echo "startxfce4" > ~/.xsession'
sudo -u rdpuser chmod +x /home/rdpuser/.xsession
cat >> /etc/xrdp/startwm.sh << 'EOF'
# --- custom: start xfce for xrdp ---
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
startxfce4
EOF
systemctl restart xrdp
cd /tmp
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
apt install -y ./google-chrome-stable_current_amd64.deb
如果你愿意,我也可以根据你现在服务器实际状态帮你做一次“验收清单”——你把下面两条命令的输出贴出来,我就能判断是否还缺哪一步、以及为什么会卡:
systemctl status xrdp --no-pager
ss -lntp | grep 3389