คุณสามารถใช้Xvfbซึ่งเป็น X server ที่มี framebuffer เสมือนเช่น X server ที่แสดงเฉพาะในหน่วยความจำและไม่เชื่อมต่อกับฮาร์ดแวร์ใด ๆ คุณไม่จำเป็นต้องเรียกใช้ไคลเอนต์ใด ๆ ที่คุณไม่ต้องการบนเซิร์ฟเวอร์นั้นและโดยเฉพาะอย่างยิ่งไม่มีสภาพแวดล้อมเดสก์ท็อปหรือตัวจัดการหน้าต่าง
Xvfb :1 -screen 0 1x1x8 &
หลังจากนี้:
DISPLAY=:1 dbus-launch
DISPLAY=:1 pulseaudio --start
คุณต้องรอสักครู่หลังจากเริ่มต้นXvfb
การแสดงผลให้พร้อมใช้งาน คุณสามารถใช้xinit
เพื่อเริ่มเซิร์ฟเวอร์ X จากนั้นเริ่มไคลเอ็นต์เมื่อพร้อม วางคำสั่งที่คุณต้องการเรียกใช้ในสคริปต์ (โปรดทราบว่าเมื่อสคริปต์จบการทำงานเซิร์ฟเวอร์ X จะออก):
#!/bin/sh
dbus-launch
pulseaudio --start
sleep 99999999
เริ่มต้นเซิร์ฟเวอร์ X เสมือนด้วย
xinit /path/to/client.script -- /usr/bin/Xvfb :1 -screen 0 1x1x8
หากคุณต้องการเรียกใช้ในเวลาบูตคุณสามารถเริ่มจาก cron เรียกใช้crontab -e
(ในฐานะผู้ใช้ของคุณไม่ใช่ในฐานะรูท) และเพิ่มบรรทัด
@reboot xinit /path/to/client.script -- Xvfb :1 -screen 0 1x1x8
ถ้าคุณต้องการที่จะฆ่าเซสชั่นนี้ฆ่าxinit
กระบวนการ