Ubuntu: borked file sudoers saya, bagaimana saya bisa memperbaikinya?
11
Saya mengedit /etc/sudoersfile saya dan menyimpannya tetapi ada kesalahan sintaksis di sana. Sekarang saya tidak bisa sudo vim /etc/sudoerskarena sudo menganggap file sudoers tidak valid.
Terima kasih, saya bertanya-tanya apa yang visudo lakukan secara berbeda. Saya perlu bekerja sekarang bagaimana boot ke mode pengguna tunggal. Ubuntu saya berjalan di bawah Virtualbox.
fred basset
1
visudo menyebabkan Anda mengedit salinan file sudoers. Ini hanya akan mengganti file sudoers jika validasi saat Anda menyimpannya. Ini akan menggunakan editor yang ditentukan oleh variabel EDITOR Anda, sehingga Anda dapat menggunakan editor pilihan Anda. Itu juga dapat digunakan dalam mode periksa jika Anda mengedit file dan ingin memastikan itu masih valid.
BillThor
2
Seperti disebutkan dalam pertanyaan serupa di askubuntu , ini mungkin berfungsi tanpa harus reboot ke mode pengguna tunggal:
Jika Anda memiliki Docker yang terinstal dan pengguna Anda adalah anggota dockergrup, Anda dapat dengan mudah keluar dari acar ini (dan beberapa lainnya) tanpa me-reboot atau apa pun:
$ docker run -it --rm -v '/etc/:/root/host.etc/' debian bash
Buruh pelabuhan? Pernahkah Anda melihat Docker di mana saja di pertanyaan awal?
Pemburu Rusa
2
Karena pertanyaannya tidak merinci apapun tentang lingkungan si penanya dan sekarang tahun 2015, artinya cukup banyak orang yang memasang Docker, saya tidak mengerti sikap Anda terhadap saya atau penghinaan Anda atas kontribusi saya. Sama sekali tidak terduga bahwa orang lain dalam situasi ini akan menginstal perangkat lunak yang, sampai hari ini, telah dibintangi oleh 23.5k orang di GitHub. Jika pkexecjuga karena alasan tertentu tidak tersedia maka ini menyediakan metode alternatif, tanpa me-reboot, itu hampir sama cepat dan sederhana.
Jawaban:
Boot sistem ke mode tunggal dan kemudian edit.
sumber
Anda tidak boleh mengedit file sudoers Anda secara langsung. Gunakan
visudo
- ini akan melindungi Anda dari kesalahan sintaksis ini di masa depan.Untuk memulihkan dari situasi ini, boot ke mode single-user dan edit file atau boot dari livecd dan lakukan hal yang sama.
sumber
Seperti disebutkan dalam pertanyaan serupa di askubuntu , ini mungkin berfungsi tanpa harus reboot ke mode pengguna tunggal:
sumber
Omong-omong, jika Anda memiliki kata sandi root, cukup login dengannya dan atur kembali seperti semula.
chmod 0440 / etc / sudoers
Ini akan menghindarkan Anda dari boot ke mode single-user atau terburuk, boot dari livecd.
Dalam kasus saya, saya tidak mampu menurunkan server.
sumber
Jika Anda memiliki Docker yang terinstal dan pengguna Anda adalah anggota
docker
grup, Anda dapat dengan mudah keluar dari acar ini (dan beberapa lainnya) tanpa me-reboot atau apa pun:$ docker run -it --rm -v '/etc/:/root/host.etc/' debian bash
apt-get update && apt-get install [vim|nano|whatever]
cd ~/host.etc/
exit
sumber
pkexec
juga karena alasan tertentu tidak tersedia maka ini menyediakan metode alternatif, tanpa me-reboot, itu hampir sama cepat dan sederhana.