Відновити користувача користувача


34

З якихось дислексичних причин (або недостатньо спав) я набрав

deluser man

замість більш поширених

man deluser

... як ви можете собі уявити, я просто видалив користувача користувача! Ніколи раніше не бувало ...

Як я можу правильно відновити користувача користувача системи?


5
Це прекрасний приклад, чому ви не використовуєте root для речей, які не потребують root.
Ренді Оррісон

Відповіді:


33

Існує утиліта, яка називається update-passwd, щоб зробити це безпечно для вас:

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

Спочатку перевірте поточний запис

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

Тепер видалимо його

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

Перевірте, чи справді пішло

$ getent passwd man
$ 

Потім

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

ОК, давайте це зробимо

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

Тепер підтвердьте відновлений запис файлу пароля

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

2
Відмінно + високо оцінено. Прийміть це замість мого;)
Rinzwind
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.