Если у вас есть физически доступ к комьютеру, есть очень простой способ сбросить пароль из под Grub.

Процесс заключается в переходе в режим обслуживания ядра, когда у вас будет доступ к root аккаунту без ввода пароля. Очевидно, что это не является проблемой безопасности Linux, так как вам необходим физический доступ к серверу для этих действий.

В данном примере мы сменим пароль на VPS сервере в облаке с доступом через аварийный VNC клиент. Первым делом перезагрузим сервер и дождёмся загрузки Grub. На главной странице Grub остановим отсчёт до загрузки.

Теперь необходимо отредактировать запись Grub, чтобы это сделать выбираем нужное ядро в котором хотим внести правки и нажимаем «e»:

Перед нами открылся редактор, перемещаем курсор в конец, где загружается ядро и находим следующие строки:

[cc lang=»bash»]linux /boot/vmlinuz-3.14.43-1 root=UUID=7b649fa5-37b8-480e-a040-5b6cbc530670 ro console=tty1 console=ttyS0,115200n8 nomodeset consoleblank=0[/cc]

Удаляем параметр [cc lang=»bash»]console=ttyS0,115200n8[/cc] и добавляем [cc lang=»bash»]rw init=/bin/bash[/cc]:

[cc lang=»bash»]linux /boot/vmlinuz-3.14.43-1 root=UUID=7b649fa5-37b8-480e-a040-5b6cbc530670 ro console=tty1 115200n8 nomodeset consoleblank=0 rw init=/bin/bash[/cc]

После внесения изменений нажимаем F10 для загрузки измененного нами ядра.

После загрузки операционной системы, мы увидим следующее:Отлично! Это то, что нам нужно) Теперь мы можем изменить root пароль, для этого достаточно выполнить:

[cc lang=»bash»]passwd root[/cc]

Готово, мы сменили root пароль на нашем сервере (или компьютере).