sudo: /usr/lib/sudo/sudoers.so ต้องเป็นเจ้าของโดย uid 0


10

เมื่อใดก็ตามที่ฉันพยายามทำอะไรเลยที่ต้องใช้รหัสผ่านของฉันมันจะคืนค่านี้:

u7ur7l3@ubuntu:~$ sudo
sudo: /usr/lib/sudo/sudoers.so must be owned by uid 0
sudo: fatal error, unable to load plugins
u7ur7l3@ubuntu:~$

ดังนั้นฉันไม่สามารถติดตั้งอะไรจาก Software Center / แพ็คเกจ manager หรือรันคำสั่งใด ๆ ในเทอร์มินัลที่ต้องการรหัสผ่านของฉัน ฉันเข้าสู่ระบบได้ แต่มันก็สวยมาก

ฉันเปลี่ยนสิทธิ์ของไฟล์บางไฟล์โดยไม่ได้ตั้งใจจากนั้นเปลี่ยนบางส่วนพยายามแก้ไข: / ตอนนี้ฉันหลงทางไปแล้วว่าจะต้องทำอะไร

นี่คือสิ่งที่เกิดขึ้นเมื่อฉันพยายามที่จะทำให้ sudo ทำงานอีกครั้งโดยใช้ pkexec:

u7ur7l3@ubuntu:~$ pkexec chown root /usr/lib/sudo/sudoers.so
Error getting authority: Error initializing authority: Error calling StartServiceByName for org.freedesktop.PolicyKit1: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ExecFailed: Failed to execute program /usr/lib/dbus-1.0/dbus-daemon-launch-helper: Success 

u7ur7l3@ubuntu:~$ sudo ls
sudo: /usr/lib/sudo/sudoers.so must be owned by uid 0 sudo: fatal error, unable to load plugins

และเพื่อเปลี่ยนการอนุญาตฉันใช้ Root Actions เป็นบริการ / ปลั๊กอินของปลาโลมาดังนั้นประวัติไม่แสดงการเปลี่ยนแปลงการอนุญาต

ฉันเพิ่งรู้ว่าเสียงไม่ทำงานอีกต่อไป เมื่อฉันเข้าสู่ Phonon การตั้งค่าเริ่มต้นของฉันและอุปกรณ์เล่นยังไม่ได้อยู่ที่นั่น นอกจากนี้ฉันไม่มีตัวเลือกในการปิดฉันสามารถออกจากระบบหรือออกจากเท่านั้น


ปัญหาด้านเสียงและการปิดระบบใหม่เมื่อคุณรันpkexecคำสั่งหรือไม่
Eliah Kagan

@Eliah Kagan ไม่ฉันตระหนักถึงปัญหาด้านเสียงเมื่อฉันเข้าสู่ระบบคอมพิวเตอร์ของฉันและฉันก็ตระหนักถึงปัญหาการปิดระบบเมื่อฉันปิดคอมพิวเตอร์เมื่อคืนนี้ ฉันก็แค่กดปุ่มเปิดปิดค้างไว้
7UR7L3

ฉันได้ขยายคำตอบของฉันเพื่อให้คำแนะนำที่ควรใช้งานได้แม้ว่าจะไม่มีทั้งsudoPolicyKit (ผ่านpkexec) ทำงาน
Eliah Kagan

2
su root chown -R root: root / usr / lib /

คำตอบ:


20

การเป็นเจ้าของไฟล์ระบบที่สำคัญอย่างน้อยหนึ่งไฟล์นั้นผิด นั่นเป็นสิ่งที่ไม่ดี หากสิ่งนี้เกิดขึ้นกับไฟล์ระบบจำนวนมาก (บางทีคุณอาจรันsudo chownคำสั่งขนาดใหญ่พร้อมกับ-Rแฟล็กในบางจุด) มันอาจทำให้เกิดข้อผิดพลาดและความไม่แน่นอนของระบบอื่น ๆ ดังนั้นถ้าคุณเพิ่งติดตั้ง Ubuntuคุณอาจต้องการที่จะติดตั้งเป็นอดัมเฮลท์โคแสดงให้เห็น

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

sudoไม่ทำงาน แต่การใช้sudoเป็นหนึ่งในสองวิธีสำหรับผู้ดูแลระบบในการดำเนินการตามรูทบน Ubuntu อื่น ๆ คือPolkit (ซึ่งเคยเรียกว่า PolicyKit)

เรียกใช้คำสั่งนี้ซึ่งใช้ Polkit (ผ่านpkexec) เพื่อเปลี่ยนความเป็นเจ้าของ/usr/lib/sudo/sudoers.soกลับเป็นroot(เช่น uid 0):

pkexec chown root /usr/lib/sudo/sudoers.so

จากนั้นลองใช้sudoอีกครั้ง คุณสามารถเรียกใช้สิ่งที่เล็กน้อยเช่นและดูว่าคุณได้รับข้อความแสดงข้อผิดพลาดsudo ls

ในที่สุดฉันแนะนำให้เรียกใช้historyเพื่อแสดงคำสั่งทั้งหมดที่คุณเรียกใช้ หวังว่าจะแสดงรายการคำสั่งทั้งหมดที่คุณเรียกใช้ซึ่งมีการเปลี่ยนแปลงการอนุญาต สมมติว่าsudoตอนนี้ทำงานผมขอแนะนำให้โพสต์คำถามใหม่รวมทั้งการส่งออกของhistoryที่จะได้รับความช่วยเหลือในการยกเลิกทั้งหมดเป็นเจ้าของไฟล์และสิทธิ์การเปลี่ยนแปลงที่คุณได้ทำ

หากpkexecไม่ได้ผล ...

คุณลองpkexecแล้วมันใช้งานไม่ได้ เนื่องจากทั้งsudoหรือ Polkit ไม่ทำงานเพื่อให้คุณสามารถดำเนินการในฐานะรูทได้คุณจะต้องบูตเข้าสู่โหมดการกู้คืนและรับรูทเชลล์ เมื่อต้องการทำสิ่งนี้ให้กดค้างไว้Shiftในขณะที่ทำการบูทคอมพิวเตอร์เพื่อให้แน่ใจว่าคุณได้รับเมนูการบูต GRUB เลือกรายการที่มีโหมดการกู้คืนคำ(โดยทั่วไปคุณควรเลือกรายการที่อยู่ใกล้กับด้านบนสุดที่มีคำเหล่านั้น) จากนั้นคุณจะได้รับเมนูที่มีตัวเลือกมากมาย - เลือกตัวเลือกเพื่อเลื่อนไปที่รูทเชลล์

คำแนะนำโดยละเอียดเกี่ยวกับการเข้าถึงรูทเชลล์ในโหมดการกู้คืนอยู่ที่นี่:

เมื่อคุณรูทเชลล์แล้วให้รัน:

chown root /usr/lib/sudo/sudoers.so

หากคุณได้รับข้อผิดพลาดเกี่ยวกับไฟล์หรือระบบไฟล์ที่ไม่สามารถแก้ไขได้ให้ทำการติดตั้งใหม่เขียนใหม่:

mount -rw -o remount /

(แหล่งที่มาสำหรับแนวคิดของการเล่าซ้ำและวิธีการ: คำตอบที่ไม่เกี่ยวข้องส่วนใหญ่ )

จากนั้นหลังจากเรียกใช้mountคำสั่งนั้นให้เรียกใช้chownคำสั่งด้านบนอีกครั้งและดูว่าทำงานได้หรือไม่

เมื่อเสร็จแล้วในโหมดการกู้คืนคุณสามารถรีบูตได้โดยเรียกใช้:

reboot

sudoควรทำงานหรืออย่างน้อยก็ให้ข้อผิดพลาดอื่น ๆ

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

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

การsudoทำงานอีกครั้งเป็นขั้นตอนแรก หวังว่าเทคนิคข้างต้นจะช่วยให้คุณทำเช่นนั้นได้


ฉันทำตามคำแนะนำเหล่านั้น แต่เมื่อฉันบูตกลับเข้าไปใน kubuntu ปัญหายังคงอยู่ ข้อผิดพลาดเดียวกัน ณ จุดนี้อาจง่ายกว่าเพียงแค่ติดตั้งใหม่อีกครั้ง : /
7UR7L3

นอกจากนี้มีวิธีใดที่ฉันสามารถทำสิ่งนี้: askubuntu.com/questions/9135/ …เพื่อบันทึกทุกอย่าง การรวมกันทั้งหมดเป็นสคริปต์หลอกทุบตีจะไม่ทำงานเพราะ sudo เกี่ยวข้องดังนั้น ....
7UR7L3

@ 7UR7L3 ที่จะสำรองข้อมูลเกี่ยวกับแพคเกจที่ติดตั้งและข้อมูลส่วนใหญ่เกี่ยวกับการตั้งค่าระบบของโปรแกรมของคุณ เมื่อใช้ร่วมกับการสำรองข้อมูลเต็มรูปแบบของโฮมไดเร็กตอรี่ของคุณ, ซึ่งจะช่วยให้คุณสามารถกู้คืนข้อมูลส่วนใหญ่ตามแบบเดิม, หลังจากลบระบบที่มีอยู่แล้วและติดตั้งใหม่ โปรดตรวจสอบให้แน่ใจว่าได้สำรองไฟล์สำคัญทั้งหมด (เช่นเอกสารของคุณ) ตลอดเวลา หากคุณพบว่าคุณต้องการข้อมูลเพิ่มเติมเกี่ยวกับเทคนิคดังกล่าวที่นำไปใช้กับสถานการณ์ของคุณฉันขอแนะนำให้โพสต์คำถามใหม่ (แต่ฉันไม่รังเกียจหากคุณถามในความคิดเห็นที่นี่)
Eliah Kagan

มีวิธีที่ดีที่จะไปเกี่ยวกับเรื่องนี้? ฉันมีไดรฟ์ภายนอก 1 TB ที่ฉันสามารถสำรองข้อมูลได้ แต่มันจะไม่ปรากฏขึ้นทุกที่เมื่อฉันเสียบมันมีไฟสว่างเพื่อแสดงว่าใช้งานได้ แต่ไม่มีอะไรบนหน้าจอกำลังเปลี่ยนแปลงและไม่มีที่ใดในโลมา . จากนั้นเมื่อฉันได้รับการทำงานที่ฉันจะไปเกี่ยวกับการบันทึกทุกอย่าง ในเครื่องมือจัดการบรรจุภัณฑ์ฉันสามารถบันทึกแพ็คเกจที่ติดตั้งไว้ในเอกสารข้อความได้ แต่นั่นคือทั้งหมดที่ฉันคิดว่าต้องทำเพื่อบันทึกข้อมูล โซลูชั่นอื่น ๆ ทั้งหมดเกี่ยวข้องกับ sudo ซึ่งยังใช้งานไม่ได้
7UR7L3

@ 7UR7L3 สำหรับสำรองไฟล์หรือไม่ บูตจาก CD / DVD สดหรือ USB สด คุณสามารถเข้าถึงไฟล์ได้จากที่นั่นและสำรองข้อมูลไปยังไดรฟ์ภายนอก หากไดรฟ์ภายนอกของคุณไม่ปรากฏในระบบจริงแสดงว่าเป็นปัญหาที่แยกจากกันโดยสิ้นเชิงซึ่งฉันอาจไม่สามารถช่วยเหลือคุณได้และแทบจะไม่สามารถอยู่ภายในขอบเขตความคิดเห็นได้ ดังนั้นถ้าเป็นเช่นนั้นฉันขอแนะนำให้โพสต์คำถามใหม่ หากคุณแสดงความคิดเห็นที่นี่พร้อมลิงก์ไปยังคำถามใหม่ฉันจะตรวจสอบให้แน่ใจก่อนที่จะดูและมีส่วนร่วมหากฉันสามารถทำได้
Eliah Kagan
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.