- - วิธีแก้ไขข้อผิดพลาดของ Resume NVIDIA บนระบบปฏิบัติการ Loki ขั้นต้น

วิธีการแก้ไขข้อผิดพลาดของ NVIDIA Resume บนระบบปฏิบัติการเบื้องต้นของโลกิ

Elementary OS Loki เป็น Linux ที่แข็งแกร่งจริงๆการกระจาย แต่เมื่อใช้กับไดรเวอร์ที่เป็นกรรมสิทธิ์ของ Nvidia บางครั้งผู้ใช้จะพบข้อผิดพลาดที่น่ารำคาญจากสถานะระงับ ณ ตอนนี้ Nvidia กลับมาทำงานบั๊กบน Elementry OS Loki ต่อไปและผู้ใช้ในชุมชนก็พยายามหาสาเหตุ

วิธีแก้ปัญหาสำหรับการแก้ไขข้อบกพร่องของ Nvidia ไม่ได้เป็นเช่นนั้นของแข็ง 100% แม้หลังจากตั้งค่าการแก้ไขนี้คุณยังอาจพบปัญหาเหล่านี้ การแก้ไขเองนั้นอาศัยการใช้ระบบ systemd init ใน Elementary OS เพื่อรีเซ็ตตัวจัดการหน้าต่าง

คุณอาจสังเกตเห็นว่าตัวจัดการหน้าต่าง Gala ไม่สามารถรีเซ็ตได้ หากบริการปฏิเสธที่จะทำงานให้พิจารณาลบไฟล์และเริ่มใหม่อีกครั้งหรือเรียกใช้ด้วยตนเองในตัวเรียกใช้แอปพลิเคชัน Wingpanel:

gala --replace

พยายามเสี่ยงของคุณเอง

การเขียนสคริปต์

ก่อนสร้าง sleep hook ภายใน systemd, aต้องใช้สคริปต์ นี่เป็นเพราะความจริงที่ว่าคุณไม่สามารถเขียนคำสั่งลงในไฟล์บริการได้โดยตรง ให้เปิดหน้าต่างเทอร์มินัลแทนเดสก์ท็อป Elementary OS ของคุณและเข้าถึงการใช้รูท sudo -s.

ด้วยเทอร์มินัลรูทให้เปิดโปรแกรมแก้ไขข้อความนาโน

nano /usr/bin/pantheon-wm-refresh.sh

คำสั่งต่อไปนี้จะสร้างไฟล์ SH ใหม่พร้อมที่จะถูกบันทึกไว้ในไดเร็กทอรี / usr / bin / จากที่นี่วางรหัสต่อไปนี้ที่ด้านบนของไฟล์ รหัสนี้มีความสำคัญเนื่องจากจะเป็นการตั้งค่าสภาพแวดล้อมที่สคริปต์ทำงานโดยไม่มีบรรทัดนี้ทุกอย่างจะล้มเหลว

#!/bin/bash

ด้วย shebang ที่ด้านบนสุดของสคริปต์ SHไฟล์มีทุกสิ่งที่จำเป็นสำหรับล่ามในการอ่าน ขณะนี้ได้เวลาเพิ่มอาร์กิวเมนต์ส่วนที่เหลือแล้ว มาเริ่มกันเลยโดยระบุหน้าจอเริ่มต้น นี่คือเพื่อให้แน่ใจว่าตัวจัดการหน้าต่างรีเฟรชบนหน้าจอด้านขวา

export DISPLAY=:0

โดยตรงหลังจาก“ ส่งออก DISPLAY =:0” เราสามารถระบุคำสั่งที่จะบังคับให้สภาพแวดล้อมเดสก์ท็อปของ Pantheon รีเซ็ตตัวจัดการหน้าต่างเมื่อมันกลับมาทำงานต่อ คำสั่งนี้เป็นคำสั่งง่ายๆที่จะบอกตัวจัดการหน้าต่างของ Elementary OS (หรือที่เรียกว่า Gala) เพื่อแทนที่ตัวเอง

gala --replace

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

chmod +x /usr/bin/pantheon-wm-refresh.sh

การสร้างบริการ Systemd

ขั้นตอนต่อไปในกระบวนการแก้ไขข้อผิดพลาดที่เกิดขึ้นกับ Nvidia คือการสร้างสิ่งที่เรียกว่า "sleep hook" นี่คือบริการที่สามารถดำเนินการภายใน systemd เมื่อผู้ใช้กลับมาจาก "สลีป" ในการเริ่มต้นเราจำเป็นต้องมีโปรแกรมแก้ไขข้อความนาโนอีกครั้ง ตรวจสอบให้แน่ใจว่าเทอร์มินัลของคุณยังมีการเข้าถึงรูท ถ้าไม่ใช้ sudo -s เพื่อรับรูทและเปิดไฟล์ใหม่ด้วย:

nano /etc/systemd/system/[email protected]

ภายในไฟล์“ resume @ .service” ให้วางสิ่งต่อไปนี้:

[Unit]
Description=User resume actions
After=suspend.target
[Service]
User=%I
Type=simple
ExecStart=/usr/bin/pantheon-wm-refresh.sh
[Install]
WantedBy=suspend.target

บันทึกไฟล์ systemd ใหม่ด้วย Ctrl + Oแล้วใช้คำสั่ง systemctl เพื่อเปิดใช้งานบริการใหม่นี้ภายในระบบ init

systemctl enable resume@user

และ

systemctl start resume@user

จากที่นี่ทุกครั้งที่คุณเริ่มพีซีของคุณใหม่ระงับผู้จัดการหน้าต่างของ Pantheon จะถูกรีเฟรช วิธีนี้จะช่วยป้องกันปัญหาหน้าจอที่น่ารำคาญซึ่งเกิดขึ้นกับไดร์เวอร์ GPU ของ Nvidia บางตัวที่ใช้งาน Elementary OS

ตัวเลือกการแก้ไขปัญหาอื่น ๆ

อัพเดทไดรเวอร์

ลองวิธีการแก้ปัญหาของเราข้างต้นและไม่มีอะไรทำงาน ลองทำสิ่งหนึ่งในสองสิ่งนี้ สิ่งแรกที่ต้องทำคือการได้รับไดรเวอร์ที่เป็นกรรมสิทธิ์ของ Nvidia รุ่นล่าสุดที่ติดตั้งอยู่ในระบบปฏิบัติการ Elementary ของคุณ สิ่งนี้เริ่มต้นจากการติดตั้งซอฟต์แวร์ที่ช่วยให้ PPA สามารถใช้งานได้บนระบบปฏิบัติการ

sudo apt install software-properties-common

จากนั้นเพิ่ม PPA ไดรเวอร์ที่อัปเดตเป็นประจำด้วย:

sudo add-apt-repository ppa:graphics-drivers/ppa

จากที่นี่เปิดซอฟต์แวร์ Elementary OSตรงกลางค้นหา "ไดรเวอร์เพิ่มเติม" คลิกติดตั้งและเปิดใช้งาน (หากคุณยังไม่มี) ยกเลิกการเลือกไดร์เวอร์ที่เป็นกรรมสิทธิ์ของ Nvidia เวอร์ชันปัจจุบันที่คุณใช้งานอยู่และติดตั้งโปรแกรมล่าสุด การดำเนินการนี้จะอัปเดตระบบของคุณเป็นไดรเวอร์รุ่นล่าสุดซึ่งเป็นสิ่งที่อาจแก้ไขข้อบกพร่องที่น่ารำคาญได้เป็นอย่างดี

ไดรเวอร์ย้อนกลับ

หากแก้ไขหรืออัพเดท Nvidia เป็นรุ่นล่าสุดเวอร์ชันไม่ช่วยลองพิจารณาย้อนกลับไปใช้ไดรเวอร์ Nvidia ที่เป็นกรรมสิทธิ์และใช้ไดรเวอร์ Open Source Noveau แทน แม้ว่าจะไม่ได้ผลเหมือนที่ส่งตรงจาก Nvidia แต่ก็ไม่มีข้อผิดพลาดในการทำงานต่อ

แทนที่ Elementry OS Window Manager

หากคุณไม่ได้กำหนดให้ใช้ไดรเวอร์แหล่งข้อมูลปิดใน Elementary OS ด้วยตนเองให้ลองแทนที่ตัวจัดการหน้าต่าง Elementary OS ด้วยตนเองอย่างอื่นเช่น Mutter

Mutter เป็นตัวจัดการหน้าต่างที่ดูดีและมีเอฟเฟกต์ที่คล้ายกัน เพียงเรียกใช้คำสั่งนี้ในเทอร์มินัล:

sudo apt install mutter

จากนั้นไปที่การตั้งค่าระบบ (หรือค้นหาการเริ่มต้น) และเพิ่ม: mutter –replace เป็นคำสั่ง เมื่อเริ่มต้นพีซีของคุณจะแทนที่ Gala ด้วย Mutter โดยอัตโนมัติ นี่เป็นวิธีการแก้ปัญหาที่หยาบ แต่จะทำงานให้เสร็จ

ความคิดเห็น