Kembalikan pengguna pria

34

Untuk beberapa alasan yang membingungkan (atau kurang tidur) saya mengetik

deluser man

bukannya yang lebih umum

man deluser

... seperti yang bisa Anda bayangkan, saya baru saja menghapus pengguna pria! Belum pernah terjadi sebelumnya ...

Bagaimana cara memulihkan pengguna pengguna sistem dengan benar?

Marc
sumber
5
Ini adalah contoh sempurna mengapa Anda tidak menggunakan root untuk hal-hal yang tidak memerlukan root.
Randy Orrison

Jawaban:

33

Ada utilitas bernama update-passwdyang tampaknya melakukan ini dengan aman untuk Anda:

NAME
       update-passwd - safely update /etc/passwd, /etc/shadow and /etc/group

SYNOPSIS
       update-passwd [options]

DESCRIPTION
       update-passwd   handles   updates   of   /etc/passwd,  /etc/shadow  and
       /etc/group on running Debian systems.  It compares the current files to
       master  copies, distributed in the base-passwd package, and updates all
       entries in the global system range (that is, 0–99).

Pertama periksa entri saat ini

$ getent passwd man
man:x:6:12:man:/var/cache/man:/bin/sh

Sekarang mari kita hapus itu

$ sudo deluser man
[sudo] password for steeldriver: 
Removing user `man' ...
Warning: group `man' has no more members.
Done.

Periksa itu benar-benar hilang

$ getent passwd man
$ 

Kemudian

$ sudo update-passwd --dry-run
Adding group "man" (12)
Adding user "man" (6)
Would commit 2 changes

OK, mari kita lakukan

$ sudo update-passwd
2 changes have been made, rewriting files

Sekarang konfirmasikan entri file kata sandi yang dipulihkan

$ getent passwd man
man:*:6:12:man:/var/cache/man:/bin/sh
Steeldriver
sumber
2
Unggul + terunggul. Terimalah ini sebagai ganti milikku;)
Rinzwind