การลดการสลับโหมดวิดีโอระหว่างการบู๊ต Linux


12

เมื่อฉันบูทคอมพิวเตอร์เดสก์ท็อปซึ่งมีลินุกซ์อยู่เท่านั้นโหมดวิดีโอและ / หรือแบบอักษรคอนโซลจะได้รับการสลับสี่ครั้ง:

  • เมื่อ GRUB เริ่มขึ้นข้อความจะสลับจากข้อความขนาด 80x25 ไปเป็นโหมดกราฟิกเพื่อให้สามารถวาดพื้นหลังที่สวยงามด้านหลังเมนู
  • ด้วงนั้นกลับไปที่ข้อความ 80x25 หลังจากที่ฉันเลือกบางอย่างจากเมนู
  • เมื่อไดรเวอร์ KMS สำหรับการ์ดวิดีโอของฉันโหลดมันจะเปลี่ยนเป็นโหมดข้อความความละเอียดสูงกว่านี้มาก (ฉันไม่รู้ว่านี่เป็นโหมดข้อความฮาร์ดแวร์หรือไม่);
  • ในที่สุด X ก็เริ่มขึ้นและมันก็เป็นกราฟิกและยังคงอยู่แบบนั้น ฉันคิดว่าสวิตช์สุดท้ายนี้ไม่เปลี่ยนความละเอียดของโหมดวิดีโอเพียงความเป็นกราฟิก

ฉันต้องการกำจัดสวิตช์โหมดเหล่านี้ให้ได้มากที่สุด ตามหลักการแล้วเมื่อ GRUB เข้าควบคุม BIOS มันจะไปยังโหมดข้อความความละเอียดสูงแบบเดียวกับที่ไดรเวอร์ KMS เลือกและการแสดงผลจะอยู่ในโหมดนั้นจนกระทั่ง X เริ่มต้นและเปิดกราฟิคขึ้นมา ฉันรู้สึกว่านี่เป็นไปได้โดย mucking กับบรรทัดคำสั่งเคอร์เนลและ / หรือพารามิเตอร์โหลดโมดูลคอนโซล GRUB แต่ฉันไม่ทราบรายละเอียด

GRUB 1.98 + 20100706, เคอร์เนล 2.6.32.15 โดยใช้ไดรเวอร์วิดีโอ Nouveau Distro นั้นไม่เสถียร Debian โปรดไม่มีคำตอบที่เกี่ยวข้องกับการคอมไพล์อะไรหรือการรวมตัวกันของเคอร์เนล / ไดรเวอร์อีกอันหนึ่งฉันไม่สนใจเรื่องนี้มากพอที่จะไปสู่ปัญหาที่มาก

แก้ไข: Tobu แนะนำให้ตั้งค่าGRUB_GFXMODEความละเอียดพิกเซลแบบเต็มของจอภาพและGRUB_GFXPAYLOAD_LINUX=keepเพื่อหลีกเลี่ยงการสลับโหมดหลังจากเมนูหายไป นี่เป็นส่วนหนึ่งของสิ่งที่ฉันต้องการ แต่จบลงโดยรวมแย่ลง ไม่มีการสลับโหมดหลังจากเมนู แต่ยังคงทาสีหน้าจอช้าลงอย่างเจ็บปวด (ฉันน่าจะยอมแพ้กับ gfxmode ของ GRUB ก็คือ waaaay ช้าเกินไปที่ 1920x1200) อย่างจริงจังยิ่งขึ้นขณะนี้มีการสลับโหมดสองโหมดเมื่อโหลด nouveaufb พร้อมกับข้อความแสดงข้อผิดพลาดที่ดูสนุกสนานdmesg

[    5.923798] [drm] nouveau 0000:02:00.0: allocated 1920x1200 fb: 0x40250000, bo ffff8801ba5f4600
[    5.923802] fb: conflicting fb hw usage nouveaufb vs EFI VGA - removing generic driver
[    5.923821] [drm] nouveau 0000:02:00.0: PFIFO_INTR 0x00000010 - Ch 1
("PFIFO_INTR" message repeats 400+ times)
[    5.925609] Console: switching to colour dummy device 80x25
[    5.925802] Console: switching to colour frame buffer device 240x75

ฉันอยากรู้ว่า "กราฟิค" คืออะไร
หยุดชั่วคราวจนกว่าจะมีการแจ้งให้ทราบต่อไป

1
สำหรับความละเอียดพิกเซลที่กำหนดโหมดวิดีโออาจเป็นกราฟิก (แต่ละพิกเซลสามารถระบุตำแหน่งได้) หรือข้อความ (จำลองเทอร์มินัลตัวละคร - เซลล์จากผู้สูงอายุ) สิ่งที่ฉันหมายถึง "กราฟิก" คือสวิตช์โหมดวิดีโอที่สี่ที่ฉันแสดงอยู่เปลี่ยนจากข้อความเป็นกราฟิกโดยไม่เปลี่ยนความละเอียดของพิกเซลฉันคิดว่าต่อไป
zwol

คำตอบ:


2

พลีมั ธถูกออกแบบมาเพื่อช่วยในเรื่องนี้:

แนวคิดคือในช่วงเริ่มต้นของกระบวนการบูตโหมดเนทีฟสำหรับคอมพิวเตอร์ถูกตั้งค่าพลีมั ธ ใช้โหมดนั้นและโหมดนั้นจะยังคงอยู่ตลอดกระบวนการบู๊ตทั้งหมดจนถึงและหลังจาก X เริ่มทำงาน เป็นการดีที่เป้าหมายคือการกำจัดการสั่นไหวทั้งหมดในระหว่างการเริ่มต้น

เมื่อคุณติดตั้งระบบปฏิบัติการเพียงระบบเดียวการปิดใช้งานการเปลี่ยนแปลงความละเอียดด้วง (ไม่มีกราฟิกพื้นหลัง) และแม้แต่เมนูเองการปล่อยไว้ที่ 80x25 จะทำให้ไม่มีการเปลี่ยนแปลงจนกว่าพลีมั ธ จะเข้ามาแทนที่


1

โพรบความละเอียดและความลึกของสีของคุณ:

xrandr -q
xdpyinfo | grep 'depth of root window' | awk '{ print $5 }'

ตั้งGRUB_GFXMODE=<width>x<height>x<depth>ใน/etc/default/grubเพื่อให้ความละเอียดของเมนูด้วงตรงกับความละเอียด KMS

อาจเพิ่มGRUB_GFXPAYLOAD_LINUX=keepค่าเริ่มต้นด้วยเช่นกันดังนั้นจึงไม่มีขั้นตอนกลางหลังจากเมนูด้วงและก่อนตั้งค่า KMS X11 ควรใช้ KMS ต่อไปซึ่งหมายความว่าไม่มีสวิตช์ X11 ที่ต้องกังวล

ใช้การแก้ไขของคุณด้วย

sudo update-grub

ขอบคุณ! นี่เป็นส่วนหนึ่งของสิ่งที่ฉันต้องการ แต่มีผลข้างเคียงเชิงลบที่ทำให้แย่กว่าสถานะเดิม ฉันเพิ่มรายละเอียดให้กับคำถาม
zwol

0

คุณสามารถให้ KMS ใช้งานได้หลังจาก GRUB และโดยปกติจะรวมพารามิเตอร์ไว้ในบรรทัดคำสั่งเคอร์เนลที่เปิดใช้งาน สำหรับ intel มันมีi910.modeset=1แต่คุณต้องตรวจสอบเอกสารของการแจกจ่ายของคุณ


KMS ใช้งานได้เมื่อมีการโหลดไดรเวอร์ Nouveau แต่เชื่อว่าเกิดขึ้นเฉพาะในระหว่างการสแกนอุปกรณ์เริ่มต้นของ udev บางครั้งหลังจากผู้ใช้พื้นที่ทำงาน ฉันยุ่งกับวิดีโอ = และ vga = ตัวเลือกบรรทัดคำสั่งเล็กน้อย แต่ไม่มีโชคใด ๆ
zwol

คุณสามารถบอกให้โหลดก่อนหน้านี้ด้วยวิธีนี้
Daenyth

สั้น ๆ ในการสร้างเคอร์เนลใหม่พร้อมnouveauโมดูลที่คอมไพล์ (ซึ่งเป็นปัญหามากเกินไป) สิ่งที่ดีที่สุดที่ฉันสามารถทำได้คือติดนูโวใน/etc/initramfs-tools/modules... / dev จะมีประชากร "ไปทางด้านหลัง" กำลังโหลดโปรดรอ ... "เป้าหมายคือการกำจัดสวิตช์โหมด
zwol

ในกรณีนี้คุณต้องใช้บูตโหลดเดอร์ซึ่งสามารถ KMS ได้ ฉันคิดว่า grub2 อาจทำสิ่งนี้ แต่ถ้าไม่คุณก็โชคไม่ดี
Daenyth

grub2 ตั้งค่าโหมดและปล่อยให้ตั้งค่า (นั่นคือสิ่งที่ GRUB_GFXPAYLOAD_LINUX = ทำสำเร็จ) แต่นั่นก็ไม่ดีพอสำหรับระบบย่อย nouveau และ / หรือ fb ดังนั้นข้อความแสดงข้อผิดพลาด "Conflicting fb hw use" บังเอิญพฤติกรรมเดียวกันกับ i915 ในแล็ปท็อปของฉัน
zwol
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.