Tidak bisa mengunci / etc / passwd; coba lagi nanti

30

Dengan beberapa perintah di Linux, saya mendapatkan kesalahan:

cannot lock /etc/passwd; try again later.

Adakah yang tahu bagaimana mengatasinya? Juga saya tidak mendapatkan di direktori / etc / shadow saya.

Eric Leschinski
sumber
2
Anda harus menaikkan level pengguna Anda dengan menggunakan perintah "sudo" atau "su".
Raptor
4
Direktori / etc / shadow Anda ?!? / etc / shadow harus berupa file. Tolong beri perintah persis yang Anda coba jalankan.
Brian White
3
Dalam kasus saya, filesystem root penuh :-p

Jawaban:

22

Jika tidak ada .lockfile tetapi Anda masih tidak dapat membuat pengguna coba yang berikut ini

sudo mount -o remount,rw /

Jika login saat rootkemudian gunakan

mount -o remount,rw /
Syed Hassaan Abdullah
sumber
Ini memecahkan masalah yang saya miliki setelah boot ke mode pemulihan dengan mengedit entri grub
twobeers
tetapi di mana orang harus mencari .lockfile? terima kasih kepada @trevorRobinson sepertinya orang harus mencari /etc/, benar?
hello_there_andy
Bagaimana jika dikatakan mount: cannot remount /dev/dm-0 read-write, is write-protected. Saya di ChromeOS (Linux) dengan Mode Dev diaktifkan.
trusktr
Mengapa ini bukan jawaban yang diterima ??
math2001
9

Itu karena Anda tidak memiliki izin untuk operasi itu

  • Kamu tidak bisa membaca /etc/shadow
  • Anda tidak dapat langsung memodifikasi /etc/passwd

Anda dapat mengubah kedua file melalui perintah khusus (mis. Anda dapat mengubah kata sandi Anda).


sumber
1
untuk mengubah kata sandi, gunakan "passwd <username>"
Raptor
9

Pengguna yang Anda jalankan perintah karena tidak memiliki hak istimewa yang diperlukan. Ubah ke rootpengguna dengan mengeluarkan perintah

su -

atau jika Anda memiliki / menggunakan sudo

sudo <command to run>
inquam
sumber
6

Ini juga dapat disebabkan oleh kehabisan ruang pada sistem file root. Gunakan straceuntuk memastikan. straceadalah temanmu

Robin Green
sumber
Saya telah membaca banyak utas dengan masalah saya dan itu sebenarnya solusinya. Seharusnya menjadi salah satu hal pertama yang harus diperiksa ketika mengalami masalah sistem file, saya kira. Saya menggunakan dfbukannya strace. Bagaimana stracesaya bisa membantu? Tidak pernah menggunakannya
erikbwork
2
Nah, jika Anda sudah menebak bahwa masalahnya mungkin kehabisan ruang, maka df dapat membantu. Tetapi strace akan memberi tahu Anda apa kode kesalahan itu ketika mencoba mengunci file, jadi itu harus menghapus dugaan. Cara saya biasa memanggil strace adalah strace -f -e trace=file perintah karena ini biasanya memberikan hasil yang paling berguna.
Robin Green
6

Saya mengalami ini ketika kesalahan disk terjadi selama operasi userdel dan sistem harus di-reboot. Saya perlu menghapus keempat file berikut untuk melanjutkan:

sudo rm /etc/passwd.lock
sudo rm /etc/shadow.lock
sudo rm /etc/group.lock
sudo rm /etc/gshadow.lock
Trevor Robinson
sumber
6

Jika Anda telah -R /some/chrootmenambahkan useraddperintah Anda , itu mungkin masalahnya.

Saya pikir itu berarti bahwa pengguna akan dipenjara saat masuk, tetapi bukan itu masalahnya. Dengan melihat output strace, saya melihat useradd chroot ke direktori yang ditentukan, setelah itu tentu saja tidak dapat menemukan / etc / passwd lagi. Jadi saya tidak yakin untuk apa pilihannya, tetapi ada masalah Anda (well, my).

Luc
sumber
Ini persis apa yang saya coba. Setelah menghapus -R [dir]opsi, saya dapat membuat pengguna.
Gustavo Straube
Tebakan bagus! Terima kasih. Saya juga mengerti bahwa chroot untuk useraddtidak apa yang Anda pikirkan itu :) Ini hanya menggunakan dir ditetapkan sebagai root untuk pengguna sistem . Ini berguna untuk sub-OS terisolasi yang dikloning, yang jarang Anda inginkan ...
Ninj
2

Saya mengalami ini ketika kesalahan disk terjadi selama operasi userdel dan sistem harus di-reboot. Saya perlu menghapus keempat file berikut untuk melanjutkan:

sudo rm /etc/passwd.lock
sudo rm /etc/shadow.lock
sudo rm /etc/group.lock
sudo rm /etc/gshadow.lock

Perintah ini sangat membantu saya. Terima kasih banyak.

LI JIM
sumber
Ini adalah komentar terima kasih untuk jawaban sebelumnya.
tersangka
1

Demo kesalahan ini di Ubuntu 14.04:

user@mybox:/home$ sudo useradd eric
user@mybox:/home$ userdel eric
userdel: Permission denied.
userdel: cannot lock /etc/passwd; try again later.

sudo memberi Anda izin untuk menguncinya.

user@mybox:/home$ sudo userdel eric
user@mybox:/home$
Eric Leschinski
sumber
1

Punya masalah yang sama, karena / etc penuh. Inilah sebabnya / etc / passwd tidak bisa ditulis. Pastikan Anda memiliki ruang yang cukup di / etc, jika tidak maka perbesar atau bersihkan barang yang tidak perlu.

Boris Paperny
sumber