หากเครื่องเสมือน Pardus 23 ใน KVM แสดงผลความละเอียดเพียง 1024 × 768 ให้ตรวจสอบเส้นทางการแสดงผลเสมือนก่อน: ระบบปฏิบัติการแขกจำเป็นต้องมีอุปกรณ์วิดีโอที่เข้ากันได้ และการปรับขนาดอัตโนมัติผ่าน SPICE ก็ขึ้นอยู่กับเอเจนต์ SPICE สำหรับระบบปฏิบัติการแขกและช่องทางการสื่อสารระหว่างโฮสต์กับระบบปฏิบัติการแขกด้วย หลักการพื้นฐานที่ใช้งานได้จริงคือ กราฟิก SPICE ที่ใช้ QXL วิดีโอ ช่องทางการสื่อสาร SPICE และspice-vdagentติดตั้งใน Pardus จากนั้นปรับขนาดโปรแกรมดู SPICE และเลือกโหมดที่สูงกว่าในระบบปฏิบัติการแขก ภาพอินเทอร์เฟซด้านล่างเป็นภาพจำลองเพื่ออธิบาย ไม่ใช่ภาพหน้าจอจากการติดตั้ง Pardus ที่ทดสอบแล้ว
เครื่องเสมือน (VM) นี้ใช้ SPICE หรือ VNC ครับ/คะ?
ตรวจสอบให้แน่ใจก่อนทำการเปลี่ยนแปลงระบบปฏิบัติการแขก SPICE สามารถสื่อสารการเปลี่ยนแปลงขนาดหน้าจอไปยังระบบปฏิบัติการแขก Linux ผ่านทางเอเจนต์ของมันได้ แต่คอนโซล VNC ไม่ได้ใช้เส้นทางเอเจนต์ของ SPICE นั้น เอกสารของโครงการ SPICE กล่าวถึงการเปลี่ยนแปลงความละเอียดแบบไดนามิกเมื่อหน้าต่างไคลเอ็นต์ถูกปรับขนาดหรือเปลี่ยนเป็นโหมดเต็มหน้าจอ หากระบบปฏิบัติการแขกเชื่อมต่อผ่าน VNC การติดตั้งspice-vdagentเพียงอย่างเดียวจะไม่ทำให้ VNC ส่งคำขอปรับขนาดเหล่านั้น
ในตัวจัดการเครื่องเสมือนของโฮสต์ ให้เปิดรายละเอียดฮาร์ดแวร์ของเครื่องเสมือนและตรวจสอบกราฟิก/จอแสดงผลและวิดีโอ หากกราฟิกแสดงว่า VNC ให้จดบันทึกไว้ก่อนดำเนินการต่อ หากแสดงว่า SPICE ให้ตรวจสอบโมเดลวิดีโอเสมือนและดูว่ามีช่อง SPICE อยู่หรือไม่ ป้ายกำกับอาจแตกต่างกันไปตามแอปพลิเคชันและเวอร์ชันของโฮสต์
แผงรายละเอียด VM แสดงภาพกราฟิก SPICE ที่จับคู่กับวิดีโอ QXL ซึ่งเป็นการตั้งค่าระบบปฏิบัติการ Linux ทั่วไปสำหรับการปรับขนาดภาพ SPICE
คุณควรใช้การตั้งค่าการแสดงผลและช่องสัญญาณแบบใด?
สำหรับเครื่องเสมือน Pardus ที่มีอยู่แล้วซึ่งไม่มีโหมดที่สูงกว่า ให้ใช้ชุดค่าผสม SPICE/QXL เป็นพื้นฐานความเข้ากันได้ หากโฮสต์ KVM ของคุณรองรับ Libvirt รู้จักโมเดลวิดีโอ QXL และ Virtio แต่เส้นทางการปรับขนาดและการรองรับไดรเวอร์จะแตกต่างกันไปตามการกำหนดค่าของเครื่องเสมือน อย่าเปลี่ยนเครื่องเสมือนที่มีฮาร์ดแวร์กราฟิกหรือแบบ passthrough พิเศษโดยไม่ตรวจสอบการตั้งค่าปัจจุบันก่อน
- ปิดโปรแกรม Pardus อย่างถูกต้อง การเปลี่ยนฮาร์ดแวร์แสดงผลของเครื่องเสมือนขณะที่กำลังทำงานอยู่อาจไม่ให้ผลลัพธ์ตามที่คาดหวัง
- ในตัวจัดการโฮสต์ ให้ตั้งค่ากราฟิก/การแสดงผลเป็นSPICEและ วิดีโอเป็นQXLหากมีตัวเลือกเหล่านั้น จากนั้นบันทึกการเปลี่ยนแปลง
- เพิ่มช่อง SPICE หากยังไม่มีอยู่ ในการกำหนดค่า libvirt ทั่วไป ช่อง SPICE นี้คือช่องที่มีเป้าหมาย Virtio ชื่อ
com.redhat.spice.0.
- เริ่มใช้งาน VM และเชื่อมต่อโดยใช้คอนโซลที่รองรับ SPICE เช่น โปรแกรมดู SPICE ของตัวจัดการโฮสต์ หรือโปรแกรมดูที่ใช้งานร่วมกันได้ อย่าทดสอบการปรับขนาดแบบไดนามิกในการเชื่อมต่อ VNC แยกต่างหาก
แผงช่องสัญญาณจะแสดงฟิลด์ช่องสัญญาณ SPICE-to-guest ซึ่งช่วยให้เอเจนต์สามารถสื่อสารกับโฮสต์ได้
Pardus สามารถติดตั้งเอเจนต์ SPICE ได้หรือไม่?
ตรวจสอบที่เก็บ Pardus ที่เปิดใช้งานอยู่ แทนที่จะสันนิษฐานว่าทุกแพ็กเกจของ Debian มีให้ใช้งานภายใต้เวอร์ชันหรือการกำหนดค่าที่เก็บเดียวกัน Debian เผยแพร่แพ็กเกจชื่อspice-vdagentและคำอธิบายแพ็กเกจนั้นรวมถึงการปรับความละเอียดเซสชัน X โดยอัตโนมัติให้ตรงกับไคลเอ็นต์ นั่นเป็นการยืนยันวัตถุประสงค์ของแพ็กเกจจากต้นทาง แต่ไม่ได้พิสูจน์ว่ามิเรอร์ Pardus 23 ใด ๆ มีแพ็กเกจนี้อยู่ในขณะนี้
ใน Pardus ให้รีเฟรชข้อมูลเมตาของแพ็กเกจและตรวจสอบว่า APT พบแพ็กเกจที่พร้อมสำหรับการติดตั้งหรือไม่:
sudo apt update
apt-cache policy spice-vdagent
หากผลลัพธ์ของนโยบายแสดงเวอร์ชันที่เหมาะสม ให้ติดตั้งเวอร์ชันนั้น:
sudo apt install spice-vdagent
หาก APT ไม่พบตัวเลือกใดๆ อย่าดาวน์โหลดแพ็กเกจแบบสุ่ม หรือเพิ่มที่เก็บ Debian ที่ไม่เกี่ยวข้อง ตรวจสอบการตั้งค่าที่เก็บ Pardus และการเข้าถึงเครือข่าย จากนั้นศึกษาเอกสารแพ็กเกจของ Pardus หรือช่องทางการสนับสนุนเพื่อหาแหล่งที่มาเฉพาะรุ่น ชื่อแพ็กเกจและความพร้อมใช้งานอาจแตกต่างกันไปตามรุ่นของ Pardus หรือมิเรอร์ที่กำหนดค่าไว้
ภาพจำลองเทอร์มินัลแสดงคำสั่งติดตั้งที่จะทำงานก็ต่อเมื่อ APT รายงานแพ็กเกจที่เหมาะสมแล้วเท่านั้น
จะปรับความละเอียดสูงขึ้นได้อย่างไร?
หลังจากติดตั้งเอเจนต์แล้ว ให้ล็อกเอาต์แล้วล็อกอินใหม่ หรือรีบูตเครื่องเสมือนเพื่อให้เซสชันเดสก์ท็อปเริ่มต้นทำงาน เอเจนต์จำเป็นต้องทำงานภายในเครื่องเสมือน และเครื่องเสมือนจำเป็นต้องมีช่องสัญญาณ SPICE คู่มือ SPICE อธิบายว่าเอเจนต์จัดการการแก้ไขแบบไดนามิกและอาศัยอุปกรณ์ Virtio-serial รวมถึงช่องสัญญาณ SPICE หากไม่มีช่องสัญญาณฝั่งโฮสต์ อาจทำให้แพ็กเกจติดตั้งแล้ว แต่ไม่สามารถรับข้อความปรับขนาดได้
- เปิดการตั้งค่าการแสดงผลของแขกและโปรแกรมดูไฟล์ SPICE พร้อมกัน
- ปรับขนาดหน้าต่างแสดงผลหรือเปลี่ยนเป็นโหมดเต็มหน้าจอ สำหรับเครื่องผู้ใช้งาน ให้เลือกความละเอียดหน้าจอที่สูงกว่า 1024 × 768 เช่น 1920 × 1080 หากมีให้เลือกและเหมาะสมกับหน้าจอเครื่องผู้ใช้งาน
- บันทึกการตั้งค่าและตรวจสอบว่าเดสก์ท็อปแสดงผลได้พอดีกับขนาดใหม่ หาก Pardus แสดงผลเพียง 1024 × 768 ให้ดำเนินการตรวจสอบด้านล่างต่อไปแทนที่จะบังคับใช้โหมดที่ไม่รองรับ
ตัวเลือกการแสดงผลจะแสดงโหมดที่เลือกไว้สูงกว่า หลังจากที่เครื่องเสมือน (VM) เปิดเผยโหมดดังกล่าวให้กับเดสก์ท็อปของผู้ใช้งาน
แล้วถ้าขนาด 1024 × 768 ยังคงเป็นตัวเลือกเดียวล่ะ?
ขั้นแรก ตรวจสอบว่าเซสชันของแขกรับโหมดใหม่ใดบ้างหรือไม่ ในเซสชัน X11 ให้รันคำสั่งxrandr --queryในเทอร์มินัลและตรวจสอบโหมดที่แสดงในเอาต์พุตที่เชื่อมต่อ หากไม่มีโหมดที่สูงกว่า ให้ตรวจสอบการเชื่อมต่อ SPICE, QXL หรืออุปกรณ์วิดีโออื่นที่รองรับ, ช่องสัญญาณของแขก และตรวจสอบว่าเอเจนต์เริ่มต้นในเซสชันเดสก์ท็อปที่เข้าสู่ระบบแล้วหรือไม่ โครงการ SPICE ระบุว่าหากไม่มีเอเจนต์ การแสดงผลอาจยังคงปรับได้จากภายในแขก แต่ไคลเอนต์ไม่สามารถกำหนดค่าได้อย่างน่าเชื่อถือ และหากไม่มีการสนับสนุน QXL ที่เหมาะสม โหมดที่มีให้ใช้งานอาจมีจำกัด
หากจำเป็นต้องใช้ VNC ให้ใช้ความละเอียดที่ระบบปฏิบัติการแขกและอุปกรณ์วิดีโอเสมือนแสดงผลจริงในการตั้งค่าการแสดงผล การที่ VNC ไม่มีฟังก์ชันปรับขนาด SPICE-agent ไม่ได้หมายความว่า Pardus เองมีข้อจำกัดที่ 1024 × 768 หลีกเลี่ยงการคัดลอกโหมดการแสดงผล ( xrandr --newmodemodeline) จากคอมพิวเตอร์เครื่องอื่น: โหมดที่ไม่ได้รับการสนับสนุนจากอุปกรณ์เสมือนนี้อาจทำให้เกิดความล้มเหลวหรือทำให้หน้าจอใช้งานไม่ได้
พฤติกรรมการใช้งานเดสก์ท็อปอาจแตกต่างกันไป หากมีเอเจนต์และแชนเนลอยู่ แต่การปรับขนาดยังคงล้มเหลว ให้ตรวจสอบประเภทเซสชันและบันทึกของแขกด้วยคำสั่ง `git journalctl -t spice-vdagentd -t spice-vdagentlog` รายละเอียดบันทึกจะขึ้นอยู่กับเวอร์ชันที่ติดตั้ง
คุณจะยืนยันการแก้ไขปัญหาได้อย่างไร?
เชื่อมต่อใหม่ผ่านโปรแกรมดู SPICE ปรับขนาดหน้าต่าง และตรวจสอบว่า Pardus มีและใช้ความละเอียดสูงกว่า 1024 × 768 ทำซ้ำอีกครั้งหลังจากออกจากระบบและเข้าสู่ระบบใหม่ หากโหมดความละเอียดสูงยังคงใช้งานได้และแสดงผลตามการปรับขนาดโปรแกรมดู แสดงว่าจอแสดงผลของแขก เอเจนต์ ช่องทาง และไคลเอนต์ทำงานร่วมกันได้ หากไม่เป็นเช่นนั้น ให้ใช้การตรวจสอบโหมดหรือเอเจนต์/ช่องทางที่ขาดหายไปเฉพาะด้านบนเพื่อระบุเลเยอร์ที่ยังต้องการการแก้ไข
อ้างอิง: คู่มือผู้ใช้ SPICE , พฤติกรรมการแสดงผลของเครื่องเสมือนและไคลเอนต์ SPICE , การกำหนดค่าอุปกรณ์วิดีโอ libvirtและรายละเอียดแพ็คเกจ spice-vdagent ของ Debian 12