На этот вопрос уже есть ответ здесь:
Мы потеряли пароль root из нашего файловый сервер с сервера supermicro.
Я попытался выполнить стандартные инструкции по перезагрузке со сдвигом влево и переходом в корневую оболочку, как описано в этом ответе .
Когда я выбираю root в этом меню:
Ubuntu по-прежнему запрашивает пароль root или предлагает нажать Ctrl + D , чтобы вернуться в меню восстановления.
Есть ли другие способы сбросить пароль root?
Поскольку у вас есть физический доступ к аппарату, вы можете сделать это через Live USB / CD.
Загрузитесь с USB и выберите «Попробуйте Ubuntu» вместо «Установить Ubuntu».
Открыть терминал ( Ctrl kbd> + Alt kbd> + < kbd> T kbd>) и сначала посмотрите, какое устройство используется на диске вашей машины. Вы можете сделать это с помощью lsblk
, который должен дать такой вывод (я использовал для этого живой CD, поскольку я воспроизводил шаги в виртуальной машине):
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 119,2G 0 disk
├─sda1 8:2 0 16G 0 part [SWAP]
└─sda2 8:3 0 103,2G 0 part /
sr0 11:0 1 1024M 0 rom /cdrom
Так что в этом случае это будет /dev/sda2
но это может отличаться для вашей установки.
Теперь смонтируйте рассматриваемый раздел с помощью:
sudo mount /dev/sda2 /mnt
Теперь перейдем к той части, где вы наконец можете 1 sup> chroot
в него.
sudo chroot /mnt
Вы увидите, что ваше приглашение изменилось на что-то вроде root@ubuntu:/#
, и теперь следующие шаги довольно просты.
Измените пароль для ваших пользователей с помощью passwd
:
passwd root
passwd <main-user>
Это уже должно было быть сделано, но если в любом случае установка паролей с помощью команды passwd
не удалась, вы может углубиться в кроличью нору и изменить файл /etc/shadow
, но Осторожно: это довольно опасно, и вы делаете это на свой страх и риск .
Чтобы выйти из chroot
, нажмите Ctrl kbd> + D kbd> или введите exit. Размонтируйте машину с помощью sudo umount /mnt
, а затем перезагрузите с помощью sudo reboot
. Вы хотите извлечь USB / CD и убедиться, что вы действительно загружаете данный компьютер.
1 sup> Этот метод chroot
достаточно для сброса паролей или даже для добавления и удаления пользователей из групп, но он не позволяет Вы полностью используете установленную систему через chroot. Многие другие команды, такие как apt
, потерпят неудачу, если вы запустите их в chroot, настроенном таким образом.
Если вам когда-либо потребуется выполнить более полный ремонт установленной системы, к которой вы обращаетесь с живого CD / DVD / USB - например, путем установки, удаления или обновления программного обеспечения - тогда вы хотел бы установить некоторые дополнительные крепления перед chroot
. Это можно сделать, выполнив эти команды после , запустив sudo mount /dev/sda2 /mnt
, но до , запустив sudo chroot /mnt
:
sudo mount -o bind /dev /mnt/dev
sudo mount -o bind /dev/pts /mnt/dev/pts
sudo mount -t sysfs /sys /mnt/sys
sudo mount -t proc /proc /mnt/proc
Если у вас есть несколько разделов для разных частей ОС, как, например, отдельный раздел /boot
, тогда вы захотите смонтировать их в правильные позиции. Например, где sdX
- это имя устройства для этого конкретного диска, а n
- номер раздела:
sudo mount /dev/sdXn /mnt/boot
Хорошо, если вы выполните эти команды до chroot
, чтобы сбросить пароли с помощью команды passwd
. В этом нет необходимости.