Ubuntu 22.04.5 Server – Không HDMI – Xorg Dummy
- Không cần HDMI / màn hình vật lý
- Xorg chạy headless bằng dummy driver
- Chromium chạy fullscreen (kiosk mode)
- Mở cố định: http://localhost:5000
- Điều khiển từ xa bằng x11vnc trong LAN
- Tự động chạy sau reboot
- Phân quyền rõ ràng:
- Xorg: root
- Kiosk + Chromium + x11vnc: user thường (orangepi)
- Board: Orange Pi CM4 (RK3566)
- OS: Ubuntu 22.04.5 Server
- User non-root: orangepi
sudo apt update
sudo apt install -y \
xorg \
xserver-xorg-video-dummy \
xserver-xorg-legacy \
openbox \
chromium-browser \
x11vnc \
xdg-utils \
python3-xdg \
dbus-x11 \
x11-xserver-utilsSection "Device"
Identifier "DummyDevice"
Driver "dummy"
VideoRam 256000
EndSection
Section "Monitor"
Identifier "DummyMonitor"
HorizSync 28.0-80.0
VertRefresh 48.0-75.0
EndSection
Section "Screen"
Identifier "DummyScreen"
Device "DummyDevice"
Monitor "DummyMonitor"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1920x1080"
EndSubSection
EndSection[Unit]
Description=Headless Xorg Dummy
After=network.target
[Service]
Type=simple
ExecStart=/usr/lib/xorg/Xorg :0 -config /etc/X11/xorg.conf
Restart=always
[Install]
WantedBy=multi-user.targetxset s off
xset s noblank
xset -dpms
chromium-browser --kiosk http://localhost:5000 &[Unit]
Description=Kiosk Chromium Session
After=xorg-dummy.service
Requires=xorg-dummy.service
[Service]
User=orangepi
Environment=DISPLAY=:0
ExecStart=/bin/bash -lc "openbox-session"
Restart=always
[Install]
WantedBy=multi-user.target[Unit]
Description=x11vnc Headless Server
After=xorg-dummy.service
Requires=xorg-dummy.service
[Service]
User=orangepi
Environment=DISPLAY=:0
ExecStart=/usr/bin/x11vnc -display :0 -forever -shared -nopw
Restart=always
[Install]
WantedBy=multi-user.targetsudo reboot
vncviewer IP:5900