Ubuntu: ทำไฟล์ sudoers ของฉันให้แน่นฉันจะแก้ไขได้อย่างไร


11

ฉันแก้ไข/etc/sudoersไฟล์และบันทึกไว้ แต่มีข้อผิดพลาดทางไวยากรณ์อยู่ที่นั่น ตอนนี้ฉันทำไม่ได้sudo vim /etc/sudoersเพราะ sudo คิดว่าไฟล์ sudoers ไม่ถูกต้อง

ฉันจะแก้ไขสิ่งนี้ได้อย่างไร


คำตอบ:


6

บู๊ตระบบเข้าสู่โหมดเดียวแล้วแก้ไข


ขอบคุณ Ubuntu ของฉันทำงานภายใต้ Virtualbox ฉันจะบูตเข้าสู่โหมดผู้ใช้คนเดียวได้อย่างไร
fred basset


ฉันไม่ได้รับตัวเลือกด้วงในเวลาบูต แต่รองเท้ามันตรงเข้าไปในอูบุนตู ...
เฟร็ด Basset

ลองถือ <Ctrl> หรือบางอย่าง
Ignacio Vazquez-Abrams

1
@red basset: เนื่องจาก vm เริ่มกด Esc หลาย ๆ ครั้งที่จะทำให้คุณเข้าสู่ด้วงแล้วเลือกตัวเลือกโหมดการกู้คืน
user9517

21

คุณไม่ควรแก้ไขไฟล์ sudoers ของคุณโดยตรง ใช้visudo- มันจะปกป้องคุณจากข้อผิดพลาดทางไวยากรณ์เหล่านี้ในอนาคต

ในการกู้คืนจากสถานการณ์นี้ให้บูตเข้าสู่โหมดผู้ใช้คนเดียวและแก้ไขไฟล์หรือบูตจาก livecd และทำเช่นเดียวกัน


ขอบคุณฉันสงสัยว่า visudo ทำอะไรที่แตกต่างกัน ตอนนี้ฉันต้องหาวิธีการบูตเข้าสู่โหมดผู้ใช้คนเดียว Ubuntu ของฉันทำงานภายใต้ Virtualbox
fred basset

1
visudo ทำให้คุณแก้ไขสำเนาของ sudoers file มันจะแทนที่ไฟล์ sudoers ถ้ามันตรวจสอบเมื่อคุณบันทึก มันจะใช้โปรแกรมแก้ไขที่ระบุโดยตัวแปร EDITOR ของคุณเพื่อให้คุณสามารถใช้โปรแกรมแก้ไขที่ต้องการ นอกจากนี้ยังสามารถใช้ในโหมดตรวจสอบหากคุณแก้ไขไฟล์และต้องการให้แน่ใจว่ายังใช้งานได้
BillThor


1

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

chmod 0440 / etc / sudoers

วิธีนี้จะหลีกเลี่ยงไม่ให้คุณทำการบูทเข้าสู่โหมดผู้ใช้คนเดียวหรือแย่ที่สุดคือการบูตจาก livecd

ในกรณีของฉันฉันไม่สามารถที่จะนำเซิร์ฟเวอร์ลงมา


1

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

  1. $ docker run -it --rm -v '/etc/:/root/host.etc/' debian bash
  2. apt-get update && apt-get install [vim|nano|whatever]
  3. cd ~/host.etc/
  4. ซ่อมแซมไฟล์ปัญหา
  5. exit

เทียบท่า? คุณเคยเห็น Docker มาจากที่ใดในคำถามเดิมหรือไม่
Deer Hunter

2
เนื่องจากคำถามไม่ได้ระบุอะไรเกี่ยวกับสภาพแวดล้อมของผู้ถามและขณะนี้ในปี 2558 มีความหมายว่ามีคนไม่กี่คนที่ติดตั้ง Docker ฉันเข้าใจว่าทัศนคติของคุณที่มีต่อฉัน มันไม่อาจหยั่งรู้ได้เลยว่าคนอื่นในสถานการณ์นี้จะติดตั้งซอฟต์แวร์ซึ่ง ณ วันนี้ได้รับดาวติดอันดับ 23.5 พันคนใน GitHub หากpkexecยังมีเหตุผลบางอย่างที่ไม่พร้อมใช้งานนี่เป็นวิธีการสำรองโดยไม่ต้องบูตเครื่องใหม่ซึ่งเกือบจะรวดเร็วและง่ายดาย
Adrian Günter
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.