บนระบบ Ubuntu ที่ทันสมัย (และการกระจาย GNU / Linux อื่น ๆ อีกมากมาย) การแก้ไขsudoers
ไฟล์ที่เสียหายนั้นค่อนข้างง่ายและไม่ต้องทำการรีบูตโดยใช้ CD สดหรือการเข้าถึงเครื่องจริง
การทำเช่นนี้ผ่านทาง SSH pkexec visudo
เข้าสู่ระบบเครื่องและเรียกใช้คำสั่ง หากคุณมีสิทธิ์เข้าถึงเครื่อง SSH นั้นไม่จำเป็น เพียงเปิดหน้าต่าง Terminal และเรียกใช้pkexec
คำสั่งนั้น
สมมติว่าคุณ (หรือบางส่วนของผู้อื่น) มีอำนาจที่จะเรียกใช้เป็นโปรแกรมroot
ที่มี PolicyKit คุณสามารถป้อนรหัสผ่านของคุณและจากนั้นมันจะทำงานvisudo
เป็นและคุณสามารถแก้ไขปัญหาของคุณroot
/etc/sudoers
หากคุณจำเป็นต้องแก้ไขไฟล์การกำหนดค่าใน/etc/sudoers.d
(ซึ่งในเรื่องผิดปกติในสถานการณ์เช่นนี้ แต่เป็นไปได้) การใช้งานpkexec visudo -f /etc/sudoers.d/filename
หากคุณมีสถานการณ์ที่เกี่ยวข้องที่คุณต้องดำเนินการคำสั่งการบริหารระบบเพิ่มเติมเป็นรูทเพื่อแก้ไขปัญหา (เช่นเรื่องผิดปกติในสถานการณ์นี้ แต่พบได้ทั่วไปในคนอื่น) คุณสามารถเริ่มต้นรูทเชลล์แบบโต้ตอบpkexec bash
ได้ โดยทั่วไปแล้วคำสั่งที่ไม่ใช่กราฟิกใด ๆ ที่คุณเรียกใช้sudo
สามารถเรียกใช้ได้ด้วยpkexec
แทน
(หากมีบัญชีผู้ใช้มากกว่าหนึ่งบัญชีในระบบที่ได้รับอนุญาตให้เรียกใช้โปรแกรมเช่นเดียวroot
กับ PolicyKit จากนั้นสำหรับการกระทำเหล่านี้คุณจะถูกขอให้เลือกบัญชีที่คุณต้องการใช้ก่อนที่จะถูกถามรหัสผ่านของคุณ)
หากไม่ได้ผล - ตัวอย่างเช่นหากไม่มีผู้ใช้ที่ได้รับอนุญาตให้เรียกใช้โปรแกรมเป็นรูทผ่าน PolicyKit - จากนั้นให้บูตจากซีดีสดของ Ubuntu (เช่นซีดีที่คุณอาจเคยติดตั้ง Ubuntu) และติดตั้งระบบไฟล์สำหรับ ติดตั้งระบบ คุณสามารถทำได้โดยการเรียกใช้
sudo parted -l
เพื่อดูพาร์ติชันของคุณ - อาจมีเพียงหนึ่งพาร์ติชัน ext4 และนั่นคือระบบไฟล์รูท
สมมติว่าระบบไฟล์รูทของระบบ Ubuntu ติดตั้งอยู่บน / dev / sda1 sudo mount /dev/sda1 /mnt
จากนั้นคุณสามารถติดตั้งด้วย จากนั้นคุณสามารถแก้ไข sudoers sudo nano -w /mnt/etc/sudoers
ไฟล์ระบบที่ติดตั้งด้วย หรือดีกว่านั้นคุณสามารถแก้ไขได้ด้วย
sudo visudo -f /mnt/etc/sudoers
(ซึ่งจะป้องกันคุณจากการบันทึกไฟล์ sudoers ด้วยไวยากรณ์ที่ไม่ถูกต้อง)