Ketika saya mencoba mengubah pengguna untuk melakukan root menggunakan sudo su
perintah. itu menunjukkan kesalahan di bawah ini. Apakah ada cara untuk menyelesaikan masalah ini?
dasitha@dev-digin-io:~$ sudo su
sudo: /etc/sudoers is owned by uid 1005, should be 0
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
Saya menggunakan sistem operasi Ubuntu 14.04.5 LTS Server di bawah ini.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.5 LTS
Release: 14.04
Codename: trusty
Inilah ls
output:
dasitha@dev-digin-io:/etc$ ls -l /etc/sudoers
-r--r----- 1 sajee root 900 Dec 9 07:02 /etc/sudoers
Ini di-host di platform cloud Google (compute Engine / VM) jadi saya tidak punya akses fisik ke mesin.
ls -l /etc/sudoers
. Juga beri tahu kami jika Anda dapat mem-boot server dari media alternatif (seperti live CD).su
tanpasudo
?su
meminta? Dan apakah Anda mendapatkan "Kegagalan otentikasi" sebagai respons terhadap kata sandi root yang benar (setidaknya dalam teori)?/etc/sudoers
. Itu tidak aman lagi, jadisudo
menolak untuk menggunakannya.su
tidak digunakan/etc/sudoers
. Namun, seperti yang saya sebutkan, Anda perlu mengetikkan kata sandi untuk root. Ketika mengandalkan secara eksklusifsudo
, kata sandi ini bahkan mungkin tidak disetel!su
dengan kata sandi root untuk menjadi root, laluchown root /etc/sudoers
untuk membuatnya aman ("dimiliki oleh uid 0").Jawaban:
Di Google Cloud Platform Anda dapat menggunakan Skrip Startup untuk menjalankan perintah sebagai root pada saat startup. Jadi Anda dapat menambahkan sesuatu yang mirip dengan
chown 0 /etc/sudoers
skrip Anda saat ini dan mulai ulang VM Anda.Dan Anda dapat membaca lebih lanjut tentang Skrip Startup pada Artikel di Google Cloud Platform
sumber