Przywróć użytkownika man

34

Z jakiegoś dysleksyjnego powodu (lub nie spałem wystarczająco dużo) pisałem

deluser man

zamiast bardziej powszechnego

man deluser

... jak możesz sobie wyobrazić, właśnie usunąłem użytkownika man! Nigdy wcześniej się nie zdarzyło ...

Jak mogę poprawnie przywrócić użytkownika systemu?

Marc
źródło
5
To doskonały przykład, dlaczego nie używasz roota do rzeczy, które nie wymagają rootowania.
Randy Orrison

Odpowiedzi:

33

Istnieje narzędzie o nazwie, update-passwdktóre wydaje się robić to bezpiecznie dla Ciebie:

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).

Najpierw sprawdź bieżący wpis

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

Teraz usuńmy to

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

Sprawdź, czy to naprawdę zniknęło

$ getent passwd man
$ 

Następnie

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

dobrze, zróbmy to

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

Teraz potwierdź przywrócony wpis pliku hasła

$ getent passwd man
man:*:6:12:man:/var/cache/man:/bin/sh
steeldriver
źródło
2
Doskonały + pozytywnie oceniany. Proszę, przyjmij to zamiast mojego;)
Rinzwind