feat: working XFCE + RustDesk online on VPS tmux

- Add start-rd-desktop.sh: Xvfb :99 + xfwm4 + xfce4-panel + RustDesk client
- Add rustdesk-vps.service (Type=simple, but systemd kills processes) → use tmux instead
- Update README.md with VPS architecture (Xvfb + xfce4-session + RustDesk)
- Update VPS section: tmux persistent session instead of systemd
- RustDesk ID: 458564614, password: retrowest
- Ports 21115-21119 open in UFW for Docker server (optional)
- XFCE desktop confirmed working (xfdesktop + xfwm4 + panel)

Note: systemd ExecStartPre kills background processes (Xvfb, xfce4).
Solution: tmux detached session 'rd' with start-rd-desktop.sh
This commit is contained in:
Deploy Bot
2026-05-15 22:02:45 +01:00
parent be123e8057
commit 554aa6008d
4 changed files with 134 additions and 12 deletions

View File

@@ -194,10 +194,28 @@ xrandr --listmonitors
### VPS (CPU-only)
1. **Dummy driver** (`Driver "dummy"`) не требует GPU, работает на чистом CPU.
2. **Xorg** запускается без DRM, создает DUMMY0 1920×1080.
3. **RustDesk `--server`** захватывает DUMMY0 через X11 screen capture.
4. **Нет GUI оболочки** по умолчанию — если нужен рабочий стол, установить `xfce4` + `tightvncserver`.
**Архитектура:** Xvfb :99 + xfce4-session + xfwm4 + xfce4-panel + RustDesk client
1. **Xvfb** — виртуальный framebuffer на `:99` 1920×1080x24, доступен для захвата X11
2. **xfce4-session** — полноценный XFCE рабочий стол (окна, панель, иконки)
3. **RustDesk** — клиент подключён к публичному relay `rs-ny.rustdesk.com:21116`
4. **Вход** — ID из 9 цифр + пароль
```
+------------------------------------------------------------------------+
| Xvfb :99 (1920x1080x24) |
| +-------------------------------------------------------+ |
| | XFCE Desktop (xfwm4 + xfce4-panel + xfdesktop) | |
| | +---------------------------------------------+ | |
| | | [Панель XFCE] [Иконки] [Контекстное меню]| | |
| | +---------------------------------------------+ | |
| | ← RustDesk client захватывает экран через X11 | |
| +-------------------------------------------------------+ |
| SSH / tmux (персистентность) |
+------------------------------------------------------------------------+
```
**Персистентность:** `tmux` (не systemd) — `pkill` в ExecStartPre убивал Xvfb и xfce.
---