Как восстановить удаленный файл /etc/passwd?

Я удалил /etc/passwd файл и не может войти в систему сейчас. Я не знаю пароль root и перепробовал много паролей, но ни один из них не работал.

Как я могу это исправить?

3 ответа

На этот вопрос, похоже, уже есть подходящие ответы, я просто добавлю комментарий@Lekensteyn:

sudo cp /var/backups/passwd.bak /etc/passwd
sudo chmod 644 /etc/passwd

Вот шаги, чтобы сделать это графически:

  1. Загрузка в живую среду Ubuntu с использованием загрузочного носителя Ubuntu;

  2. Запустите файловый менеджер Nautilus и смонтируйте раздел Ubuntu (здесь, на снимке, это файловая система 129 ГБ);SNAP1

    (Нажмите Ctrl + L, чтобы увидеть UUID раздела.)snap2

  3. Запустите Nautilus с правами суперпользователя (нажмите Alt + F2 и введите gksu nautilus и нажмите ввод);Snap3

  4. Раздел Ubuntu должен появиться на боковой панели с его UUID. Нажмите, чтобы установить его, и перейдите к /etc каталог;snap4

  5. В /etc каталог, прокрутите вниз, чтобы найти файл с именем passwd- и сделайте копию этого в каталоге (нажмите и удерживайте клавишу Ctrl, поместите указатель мыши на файл, нажмите и удерживайте левую кнопку мыши, перетащите указатель мыши и затем отпустите кнопку мыши, а затем клавишу Ctrl, чтобы сделать копия в том же каталоге, файл с именем passwd- (copy) будет создан);snap5

  6. Выберите файл копии, щелкните правой кнопкой мыши и выберите переименовать. Затем переименуйте файл в passwd;snap6

  7. После того, как файл был переименован в passwd щелкните правой кнопкой мыши и выберите " Свойства" в контекстном меню, а на вкладке " Разрешения" установите соответствующие разрешения, т. е. корень владельца должен иметь права на чтение и запись, в то время как для группы и других установите доступ только для чтения и закройте окно свойств;snap7

  8. Теперь перезагрузите систему, и вы сможете войти под своим паролем.


Вы можете сделать то же самое, используя терминал в реальной среде.

Шаги:

  1. Загрузиться, чтобы жить сессия Ubuntu;

  2. Откройте терминал или tty и введите команду:

    sudo fdisk -l
    

    (и запомните имя устройства вашего раздела Ubuntu, которое будет в форме /dev/sdX.)

  3. Монтировать устройство,

    sudo mount /dev/sdXY /mnt
    

    (repace sdXY с целевым устройством.)

  4. cd к целевым системам /etc каталог:

    cd /mnt/etc
    
  5. Используйте файл резервной копии для восстановления и установите соответствующие разрешения:

    sudo cp passwd- passwd
    sudo chmod 644 passwd
    

    Или используйте резервную копию в /var/backups/passwd.bak:

    sudo install -m 644 /mnt/var/backups/passwd.bak /mnt/var/backups/passwd
    

    (как отметил Лекенштейн в своих комментариях)

  6. Затем перезагрузите компьютер:

    sudo reboot
    

Если вы можете войти, просто откройте терминал и попробуйте это:

sudo cp /etc/passwd- /etc/passwd

sudo chmod 644 /etc/passwd

еще

Загрузитесь в режиме восстановления или из Ubuntu Live Cd. Затем установите ваш старый диск:

mkdir /olddrive
mount /dev/hda5 /olddrive
assuming that your old drive is on /dev/hda5.
then, cd to /olddrive/etc
type:
echo "root::0:0:Superuser:/:/bin/bash" > passwd

затем перезагрузите компьютер. Это не установит пароль для root.

Затем вы можете войти, создать все свои учетные записи снова и т. Д.

Вы также можете использовать резервную копию, которая называется (я думаю) /etc/passwd-

Редактировать:(другой метод "Я не пробую это прежде, чем я думаю, что это должно также работать")

  • Запустите GRUB при загрузке (нажмите ESC во время загрузки)
  • Нажмите e over (режим восстановления)
  • Нажмите e над строкой, начинающейся с ядра
  • Нажмите пробел и введите "init=/bin/bash"
  • Нажмите Ввод
  • Нажмите b
  • В командной строке введите: "cp /etc/passwd- /etc/passwd"
  • Перезагрузитесь в GRUB снова
  • Нажмите e over (режим восстановления)
  • Нажмите e над строкой, начинающейся с ядра
  • Нажмите пробел и введите "init=/bin/bash"
  • Нажмите Ввод
  • Нажмите b
  • В командной строке введите "mount -o remount,rw /"
  • Введите "passwd YOURUSERNAMEHERE" (если вы не знаете свое имя пользователя, введите "ls /home" (то есть строчные буквы L и строчные S) для списка пользователей)
  • Введите новый пароль по запросу
  • Перезагрузитесь для нормальной загрузки.

Источник

Другие вопросы по тегам