Пароль пользователя в Linux по соображениям безопасности узнать нельзя, однако ему можно задать новый пароль. Это можно сделать с помощью загрузчика GRUB и Rescue-диска.
Состояние перевода: На этой странице представлен перевод статьи Reset lost root password. Дата последней синхронизации: 13 октября 2021. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.
На этой странице вы сможете узнать, как сбросить забытый пароль суперпользователя. Существуют несколько способов, которые могут вам в этом помочь.
Важно: Недобросовестный пользователь может использовать указанные здесь методы для получения доступа к вашей системе. Неважно, насколько операционная система защищена от атак и как хороши ваши пароли: имея физический доступ к компьютеру, любой сможет это сделать, если вы, конечно, не выполните шифрование хранимых данных.
Два нижеописанных варианта подходят для сброса root на VDS с KVM-виртуализацией и Linux-подобной ОС CentOS версии 6.
Нужно создать удалённое подключение к виртуальному серверу по сетевому протоколу SSH. Проще всего это сделать через бесплатную программу-клиент PuTTY (для Windows) или встроенный SSH-клиент для Mac OS.
Есть много удобных серверных клиентов и для пользователей мобильных устройств. Например, JuiceSSH для Android или Termius для iOS.
- Смена пароля root с помощью PuTTY
- Как сбросить забытый пароль root на серверах CentOS 7
- Reset Forgotten Root Password in RHEL/CentOS & Fedora
- Reset Forgotten root Password in CentOS 8
- Сброс пароля пользователя root на CentOS 8 / RHEL 8
- С использованием ALT Rescue и автомонтированием системы
- При помощи LiveCD
- Как изменить пароль root на VDS, когда он неизвестен
- Как установить новый пароль root на VDS, когда он известен
- Смена пароля root с помощью PuTTY
- Средствами панели управления
- При подключении по SSH
- Если текущий пароль известен
- Если текущий пароль неизвестен
- С использованием GRUB
- Сбрасываем пароль от root через GRUB
- С использованием установленной системы
- С использованием ALT Rescue
- Через отладочную консоль
- Используя bash в качестве init
Смена пароля root с помощью PuTTY
- Скачайте архив с инсталлятором с официального сайта и установите программу.
- Запустите клиент. В открывшемся окне (графа «Имя хоста») укажите IP-адрес или доменное имя сервера и нажмите «Соединиться».
- Напишите логин (root) и существующий пароль. Не забывайте нажимать Enter, после ввода каждого значения. В целях безопасности вводимые символы на экране не отображаются.
- Введите команду passwd, после чего наберите дважды новый пароль (после каждого набора Enter).
- Пароль root изменён.
ROOT-пользователь — это пользователь с правами администратора, созданный по умолчанию в Linux-системе (Ubuntu). Root аналог администратору в ОС Windows, который имеет доступ ко всему в системе.
Этот способ предполагает вход в систему Ubuntu под пользователем с sudo правами, а команда «su» разрешена как часть «sudo» привилегий.
sudo su
Глядя на скриншот выше, можно заметить смену пользователя на «root», таким образом, мы вошли в Ubuntu под root, используя свой пароль.
Теперь мы можем сменить пароль root-пользователя, для этого необходимо использовать следующую команду:
passwd
После ввода команды указываем новый пароль в запросе «New password» и повторяем новый пароль после запроса «Retype new password».
Пароль для root будет установлен при первом использовании команды или изменит его на новый пароль при дальнейших использованиях команды «passwd».
А работает ли новый пароль? Давайте это выясним, нажимаем сочетание клавиш «Ctrl+D», чтобы окончить текущий ввод данных в терминале, либо запускаем новый терминал и вводим новую команду:
su
Данной командой мы войдем в систему как root, после чего вводим новый пароль, который мы только что установили для root.
Таким образом мы успешно изменили пароль от root.
Как сбросить забытый пароль root на серверах CentOS 7
Для начала включите компьютер, на котором вы забыли пароль root. Для устройств CentOS 7 вам будет предоставлено 5 секунд в меню загрузки, чтобы выбрать ядро операционной системы для загрузки.
Эти 5 секунд важны, потому что позволяет администраторам выбирать разные ядра или редактировать существующие параметры ядра перед загрузкой.
В меню загрузки нажмите e для редактирования существующего ядра (Core), как показано ниже.
Далее, прокрутите вниз до списка, пока не увидите строку, подчеркнутую ниже (ro). Что нам нужно сделать, это изменить это ro на rw и начать в оболочке bash. Это должно выглядеть так rw init=/sysroot/bin/sh.
Измените строку ro на rw и добавьте init=/sysroot/bin/sh
После изменения этого нажмите Control + X или Ctrl + X на клавиатуре, чтобы перейти в однопользовательский режим, используя оболочку bash, указанную выше. В этом режиме мы собираемся изменить пароль root.
В однопользовательском режиме выполните команду, как показано ниже
Наконец, выполните команды ниже, чтобы изменить пароль root.
Вам будет предложено создать и подтвердить новый пароль. После создания пароля выполните команды ниже, чтобы обновить параметры SELinux
This article will guide you through simple steps to reset forgotten root password in RHEL-based Linux distributions such as CentOS 8 and Fedora 35/34.
Reset Forgotten Root Password in RHEL/CentOS & Fedora
First, restart your system, and at the boot grub menu choose the kernel (mostly the first option) you wish to boot into and press the key 'e'
on your keyboard.


On the next screen, you will land into emergency mode, here press Enter key to get into the shell prompt. Now, make sure to confirm that you remount the sysroot directory with read and write permissions. By default, it is mounted with read-only mode indicated as ro
.
# mount | grep sysroot

Now remount the sysroot directory with read and write permissions and confirm the permissions again. Note that this time, the permissions have changed from ro
(read-only) to rw
(read and write) as shown.
# mount -o remount,rw /sysroot/ # mount | grep sysroot

# chroot /sysroot
Next, use the passwd command to reset the root password with the new password and confirm it.
# passwd

# touch /.autorelabel

Finally, type exit and then log out to start the SELinux relabelling process.


And that’s how you would reset a forgotten root password in RHEL/CentOS 8 and Fedora 35/34 Linux distributions.
Read Also: How to Set Up Automatic Updates for CentOS 8 and How to Reset Forgotten Root Password in RHEL 8
Reset Forgotten root Password in CentOS 8
First, reboot or power on your CentOS 8 system. Select the kernel you want to boot into. Next, press ‘e’
on the keyboard to interrupt the boot process and make changes.

On the next screen, locate the ro
(read-only) kernel parameter as highlighted below.

Replace the kernel parameter ro
with rw
and append an extra kernel parameter init=/sysroot/bin/sh
. In a nutshell, simply replace the kernel parameter ro
with rw init=/sysroot/bin/sh
.

Next, run the command below to mount the root file system in read and write mode.
:/# chroot /sysroot

You can now change the root password by executing the command:
:/# passwd root
Provide a new root password and confirm it. For best practice select a password with a combination of uppercase, lowercase, numerical and special characters to boost password strength.

Next, run the command below to enable SELinux relabelling.
:/# touch /.autorelabel

To apply the changes, exit and reboot the CentOS 8 system.
:/# exit :/# reboot

Upon reboot, the SELinux relabelling process will commence. Give it about 3 minutes.

We hope this tutorial will be beneficial to you. Feel free to weigh in your feedback if you are stuck.

Well here is the guide which will take you out of any such situation if you ever get into it. Here in this article we will be taking you to the journey of resetting your RHEL 7 and CentOS 7 root password.
This very morning I turned my RHEL 7 Linux server to find out that it has been locked. Either I messed up with password I changed last night or I have really forgotten it.


After you press 'e'
from keyboard you would see a lot of text which may be clipped as per the size of your screen.

Search for the text “rhgb quiet”
and replace it with “init=/bin/bash”
without quotes.

Once done editing press 'ctrl+x'
and it will start booting with specified parameter. And you will get bash prompt.

# mount | grep root

You may notice that root partition is reported to be 'ro'
(Read Only). We need to have read-write permission on root partition to change the root password.
# mount -o remount,rw /
Also cross check, if the root partition is mounted with read-write permission mode.
# mount | grep root

Now you can change the root password by typing the passwd command. But that is not done. We need to relabel SELinux context. If we skip relabeling the whole SELinux context we would be able to login using using password.
# passwd root [Enter New Password] [Re-enter New Password]
# touch /.autorelabel

Reboot and login again to root account and see if everything works ok or not?
# exec /sbin/init
В этом кратком руководстве объясняется, как сбросить пароль пользователя Root на серверах CentOS 8 и RHEL 8.
Этот быстрый совет будет полезен, если вы забыли пароль пользователя root и хотите восстановить его без каких-либо дополнительных инструментов восстановления.
Если сервер размещен где-то еще, вам может понадобиться помощь вашего хостинг-провайдера.
Сброс пароля пользователя root на CentOS 8 / RHEL 8
Я проверил это руководство на сервере CentOS 8, однако оно также должно работать и на сервере RHEL 8.
Включите сервер CentOS.
Когда появится загрузочное меню GRUB, выберите версию ядра, которую вы хотите загрузить, и нажмите e, чтобы отредактировать выбранную загрузочную запись.
На следующем экране вы увидите параметры загрузки ядра.
Найдите параметр ядра ro:
Проще говоря, замените параметр «ro» на «rw init=/sysroot/bin/sh».
В аварийном режиме введите следующую команду для монтирования корневой файловой системы (/) в режиме чтения/записи.
Теперь измените пароль пользователя root с помощью команды:
passwd root
Введите пароль дважды.
Я рекомендую вам использовать любой надежный пароль, который содержит цифры и специальные символы.
После обновления пароля root введите следующую команду, чтобы включить перемаркировку SELinux при перезагрузке:
touch /.autorelabel
Наконец, введите следующие команды, чтобы применить изменения и перезагрузить сервер CentOS в обычном режиме:
exit
reboot
Дождитесь завершения процесса перемаркировки SELinux.
Это займет некоторое время в зависимости от размера файловой системы и скорости вашего жесткого диска.
Пожалуйста, не спамьте и никого не оскорбляйте.
Это поле для комментариев, а не спамбокс.
Рекламные ссылки не индексируются!
Два нижеописанных варианта подходят для сброса root на VDS с KVM-виртуализацией и Linux-подобными ОС. Например — ОС Debian, CentOS, Ubuntu.
В этом обзоре мы рассмотрим процесс сброса пароля для операционной системы centOS 7.
Поменять пароль root в этом случае можно через панель VMmanager, используя встроенную систему удалённого доступа к серверу Virtual Network Computing (VNC).
- Заходим в VMmanager, далее в «Виртуальные машины» и выбираем нужный сервер. Перезагружаем VDS с помощью кнопки «Перезапуск». В процессе подтверждаем намерение перезапустить виртуальную машину, нажимая «Ок».
- После завершения перезагрузки, нажимаем кнопку «VNC».
- В открывшемся окне диспетчера задач нажимаем кнопку перезапуска «SendCtrlAltDel» в верхнем правом углу.
- После загрузки данных возникнет подсвеченная ОС. Нажимаем английскую клавишу «e» для входя в редактирование.
- В открывшемся окне выбираем (клавишами клавиши «↓» и «↑») строку, начинающуюся с «linux16» (BIOS x86-64) или с «linux» (64-разрядная версия IBM Power Series) или с «linuxefi» (UEFI). Находим значение «ro».
- Меняем значение «ro» на «rw», а после через пробел дописываем отрывок «init=/sysroot/bin/sh». В итоге должно получиться «rw init=/sysroot/bin/sh». После этого нажимаем сочетание клавиш «Ctrl» и «х» (английское) для перехода в аварийный режим.
- Набираем команду «chroot /sysroot» (→ Enter). Потом вводим команду смены пароля «passwd».
- Вводим новый пароль (→ Enter) и подтверждаем его (→ Enter). Набор происходит в «слепом» режиме (знаки не отображаются совсем).
- Сообщение об обновлении пароля появится в командной строке.
- Чтобы изменение пароля root для VDS на centOS 7 вступило в силу, нужно обновить параметры SELinux. Вводим команду «touch /.autorelabel» (→ Enter). После чего даём команду холодной перезагрузки сервера «reboot -f» (→ Enter).
Теперь можно загрузится в штатном режиме с уже действующим новым паролем.
С использованием ALT Rescue и автомонтированием системы
Вместо того, чтобы монтировать систему вручную, можно смонтировать ее автоматически.
-
Смонтировать систему можно одной командой:
mount-system
Данная команда смонтирует все Linux системы, которые есть у Вас на компьютере и сделает им точки монтирования /mnt/system*
-
Выполните chroot:
chroot /mnt/system1
-
Измените пароль суперпользователя следующей командой:
passwd root
-
Чтобы посмотреть, какие пользователи у Вас есть в системе введите:
grep "/home" /etc/passwd
-
Измените пароль для пользователя:
passwd имя_пользователя
-
Выйдите из chroot
exit
-
Перезагрузите компьютер
reboot
При помощи LiveCD
- Загрузитесь с LiveCD и смонтируйте корневой раздел вашей основной системы.
- Используйте команду
passwd --root ТОЧКА_МОНТИРОВАНИЯ ИМЯ_ПОЛЬЗОВАТЕЛЯ
для установки нового пароля (старый пароль запрошен не будет). - Размонтируйте корневой раздел.
- Перезагрузитесь и введите новый пароль.
Как изменить пароль root на VDS, когда он неизвестен
Поменять пароль root в этом случае можно через панель VMmanager, используя встроенную систему удалённого доступа к серверу Virtual Network Computing (VNC).
- Входим в панель управления и перезагружаем VDS с помощью кнопки «Перезапуск»
- После завершения перезагрузки, нажимаем кнопку «VNC».
- В открывшемся окне диспетчера задач нажимаем кнопку перезапуска «SendCtrlAltDel» в верхнем правом углу.
- Далее последует загрузка данных, которая остановится на этапе выбора ядра ОС. Пока идёт таймер нажимаем Enter.
- Возникнет подсвеченная ОС. Нажимаем английскую клавишу «e» для входя в редактирование.
- В открывшемся окне выбираем (клавишами клавиши «↓» и «↑») строку, начинающуюся с «kernel /vmlinuz-» и снова нажимаем «e».
- Добавьте параметр «single» после отрывка «rhgb quiet» и нажмите Enter.
- Мы снова оказываемся в меню с подсвеченной строчкой «kernel /vmlinuz-…». Нажимаем «b».
- После перезагрузки вводим команду «passwd» → Enter. Вводим новый пароль (→ Enter) и подтверждаем его (→ Enter).
- Изменение пароля root для VDS вступило в силу. Постарайтесь не терять его)
Как установить новый пароль root на VDS, когда он известен
Нужно создать удалённое подключение к виртуальному серверу по сетевому протоколу SSH. Проще всего это сделать через бесплатную программу-клиент PuTTY (для Windows) или встроенный SSH-клиент для Mac OS.
Есть много удобных серверных клиентов и для пользователей мобильных устройств. Например, JuiceSSH для Android или Termius для iOS.
Смена пароля root с помощью PuTTY
- Скачайте архив с инсталлятором с официального сайта и установите программу.
- Запустите клиент. В открывшемся окне (графа «Имя хоста») укажите IP-адрес или доменное имя сервера и нажмите «Соединиться».
- Напишите логин (root) и существующий пароль. Не забывайте нажимать Enter, после ввода каждого значения. В целях безопасности вводимые символы на экране не отображаются.
- Введите команду passwd, после чего наберите дважды новый пароль (после каждого набора Enter).
- Пароль root изменён.
Средствами панели управления
Проще всего сбросить пароль пользователя root через панель управления, на вкладкe Дашборд. Подробнее см.
Способ подойдет, даже если старый пароль утерян, так как вводить его не потребуется.
При подключении по SSH
Если текущий пароль известен
Если вам известен текущий пароль пользователя root, но вы хотите изменить его на другой, выполните следующие шаги.
1. Подключитесь к серверу по SSH под пользователем root с текущим паролем.
2. Выполните команду:
3. Система дважды запросит новый пароль. Введите его.
Готово, пароль изменен. Теперь вы можете авторизоваться под root, используя новый пароль.
Если текущий пароль неизвестен
Сбросить пароль пользователя root и установить новый вы можете, загрузив сервер с диска восстановления. Данный способ подходит любым ОС на базе Linux.
1. Загрузите систему в нужном режиме (
2. Выполните в консоли команды:
mount -o rw /dev/vda1 /mnt
chroot /mnt /bin/bash
3. На данном этапе система дважды запросит новый пароль root-пользователя, введите его.
При удачной смене пароля вы увидите уведомление об этом (например, passwd: all authentication tokens updated successfully или password updated successfully, в зависимости от операционной системы).
4. Нажмите сочетание клавиш ctrl + D для выхода из chroot.
5. Отмонтируйте диск командой:
Для корректной перезагрузки перемонтируйте корневую файловую систему в режим read only:
mount -o ro /dev/vda1 /mnt
7. Перезагрузите сервер в обычном режиме через панель управления аккаунтом, и вы сможете подключиться к серверу под пользователем root с новым паролем.
С использованием GRUB
- В меню загрузчика пропишите в параметрах init=/bin/bash. Для этого следует:
- нажать «e» при курсоре на цели загрузки, соответствующей используемому экземпляру ALT Linux;
- в открывшемся редакторе отыскать строку, начинающуюся с linux /boot/vmlinuz;
- в её конец дописать то самое init=/bin/bash
- нажать
- Загрузится консоль. Выполните в ней следующую команду, чтобы перемонтировать системный диск в режим записи
- Если файловая система /usr создана отдельно, найдите (cat /etc/fstab) и примонтируйте /usr
- Запустите passwd (можно пропустить предыдущий пункт и вернуться к нему в случае, если команда не будет найдена)
- Укажите пароль для пользователя root и подтвердите его.
Примечание: В Linux при вводе/смене пароля в консоли вводимые символы не отображаются. Так что если вы не видите звездочек/точечек означающих элементы пароля — это норма
- Так же Вы можете посмотреть список пользователей в вашей системе:
grep "/home" /etc/passwd
- И изменить пароль для конкретного пользователя:
passwd имя_пользователя
- Далее, для перезагрузки системы, выполните команду reboot или одновременно нажмите клавиши ++
mount / -o rw,remount
mount <устройство> /usr
passwd
Если у вас есть установленный sudo и настроен доступ для группы wheel
или для пользователя, чей пароль вы помните, вы можете сменить пароль root с помощью команды sudo passwd root
.
Сбрасываем пароль от root через GRUB
Существует еще один способ для изменения пароля от root или любого другого пользователя при загрузке Ubuntu.
Сначала перезагружаем наш ПК. Если меню GRUB не появляется автоматически, то удерживаем клавишу «Shift» во время загрузки. Это принудительно откроет меню GRUB.
Затем выбираем пункт «Ubuntu» в меню и нажмите клавишу «E», чтобы начать редактирование конфигурации загрузки.
Далее необходимо внести изменения в строку, заменяем значение:
quiet splash $vt_handoff
rw init=/bin/bash
Результат отображен на скриншоте ниже:
Изменения заключаются в том, чтобы из GUI перейти в оболочку Bash для внесения изменений — смена пароля. Нажимаем клавишу «F10», чтобы загрузиться с новой конфигурацией.
Загрузка с измененной конфигурацией сработает только один раз и сброситься при повторной загрузке.
Мы вошли в систему как root-пользователь в командной строке. Теперь используем команду для сброса пароля:
passwd
Указываем и повторяем новый пароль.
Затем перезагружаем систему в обычном режиме (без GRUB) и входим как root уже с новым паролем.
С использованием установленной системы
Предположим, у Вас такая ситуация. У Вас один системный пользователь. Вы помните пароль суперпользователя, но забыли пароль от обычного пользователя. В данном случае Вы можете поменять пароль без LiveCD.
-
Посмотрите имя пользователя
- Нажмите ++
-
Введите следующую команду:
passwd user
-
Примечание: Не забудьте выйти из суперпользователя!!!
- Переключитесь обратно в графическую консоль клавишами ++ и попробуйте войти в систему.
Авторизируйтесь под суперпользователем (логин root)
Помощь по ALT Linux Rescue
С использованием ALT Rescue
В данном случае подразумевается, что вы загрузились с восстановительного образа ALT Linux Rescue.
- Просмотрите список дисков/разделов:
# fdisk -l
- Смонтируйте раздел/диск с Linux и выпоните chroot:
# mount /dev/sda3 /mnt
# chroot /mnt
- Проверьте, тот ли диск вы примонтировали, по его содержимому (если у вас Linux-дистрибутив установлен рядом с Windows):
# ls
или по версии системы (если у вас установлено несколько дистрибутивов)
# head /etc/*-release
Если вы ошиблись, выйдите из чрута и отмонтируйте диск:
# exit # umount /mnt
И повторите шаг 2
- Просмотрите список пользователей в вашей системе:
grep "/home" /etc/passwd
- Измените пароль (для пользователя):
passwd имя_пользователя
или для суперпользователя (root):
passwd root
-
Выйдите из чрута, отмонтируйте диск и перезагрузите компьютер.
# exit # umount /mnt # reboot
Через отладочную консоль
- Добавьте параметр ядра
systemd.debug_shell
. - Система загрузится как обычно, но запустит службу
debug-shell.service
, которая запустит командный интерпретатор (/bin/sh
) на консолиtty9
. НажмитеCtrl+Alt+F9
чтобы перейти в неё. - Используйте команду passwd для установки нового пароля суперпользователя.
- После завершения остановите
debug-shell.service
.
Используя bash в качестве init
- Добавьте параметр ядра
init=/bin/bash
в настройках вашего загрузчика. - Сейчас ваша корневая файловая система смонтирована только для чтения, поэтому перемонтируйте ее на чтение-запись командой
mount -n -o remount,rw /
. - Используйте команду passwd для установки нового пароля суперпользователя.
- Перезагрузитесь с помощью команды
reboot -f
и не забудьте свой пароль снова!
Примечание: Некоторые клавиатуры не распознаются должным образом при загрузке bash из GRUB, и вы не сможете ничего ввести в консоли. В этом случае вам остается лишь использовать другой способ.