Как в Linux сбросить забытый пароль входа


Если вы не можете войти в систему Linux из-за того, что забыли пароль учётной записи пользователя, то не всё потеряно! Хотя этот пароль нельзя узнать (простыми методами), но его можно сбросить и заменить на новый, данная инструкция расскажет, что делать, если забыли пароль пользователя в Linux.

Смотрите также: Как сбросить забытый пароль Linux в WSL

Как поменять пароль для пользователя Linux

Любые пользователи из группы администраторов (чей аккаунт входит в группу wheel) могут поменять пароль для любого другого пользователя – как для непривилегированных учётных записей, так и для других администраторов, в том числе для root’a. Т.е. если вы забыли пароль root, но помните пароль пользователя, имеющего право на выполнение команд с sudo, то пароль может восстановить командой passwd. Чтобы поменять пароль пользователя root выполните:

sudo passwd

Чтобы поменять пароль любого пользователя выполните:

sudo passwd имя_пользователя

Где вместо имя_пользователя нужно подставить имя учётной записи пользователя Linux.

Что делать если забыт пароль от входа Linux

Если у вас нет других административных учёток и, забыв пароль учётной записи Linux, вы не можете войти в операционную систему, то для сброса пароля нам понадобиться однопользовательский режим.

В однопользовательском режиме для входа не спрашиваются учётные данные (логин, пароль), при этом вошедший обладает правами суперпользователя. В данном режиме, используя знакомую команду passwd, есть возможность задать новый пароль.

Алгоритм во всех дистрибутивах Linux схож:

  1. Прерывание работы загрузчика GRUB
  2. Добавление опции загрузки, включающей однопользовательский режим
  3. Возобновление загрузки
  4. Изменение пароля командой passwd
  5. Перезагрузка в обычном режиме

Обратите внимание, что изменения, внесённые на втором шаге (изменение опций загрузки), являются временными – действуют только на одну последующую загрузку. Поэтому при перезагрузке на пятом шаге не нужно ничего предпринимать – система включится в обычном режиме.

Для перемещения в конец строки и в начало строки (на втором шаге) используйте сочетания клавиш Ctrl+a и Ctrl+e.

Хотя алгоритм сброса пароля root схож, но в различных дистрибутивах могут быть свои нюансы, рассмотрим их подробнее.

Примечание для UEFI: Если у вас используется UEFI вместо GRUB, то смотрите также эту статью, в ней рассказано, как изменить опции загрузки в этом случае.

Кстати: если вы хотите защитить систему от смены пароля, описанного в этой статье, смотрите материал «Как защитить загрузчик GRUB паролем».

Сброс пароля в Linux Mint, Ubuntu, Debian, Kali Linux (также должно работать для других производных Debian)

Чтобы прервать загрузку GRUB (первый шаг) во время запуска компьютера нажмите и удерживайте клавишу SHIFT – это работает всегда, даже на Linux Mint, где по умолчанию показ меню GRUB отключён.

Остановите загрузку удерживая клавишу SHIFT при запуске компьютера, вы увидите:

Нажмите клавишу «e» и вы перейдёте к редактированию настроек загрузки:

На экране отсутствует нужная нам строка, пролистните курсорными клавишами вниз и найдите строку, начинающуюся с linux:


Перейдите в конец этой строки, поставьте пробел и допишите:

single init=/bin/bash

Должно получиться примерно так (номер ядра может отличаться):

Когда всё готово нажмите Ctrl+x или F10, чтобы загрузка продолжилась с установленными опциями.

Вы увидите приглашение оболочки, также обратите внимание, что мы вошли как root, т.е. у нас имеются повышенные привилегии, в том числе на использование команды passwd:

Командой passwd меняем пароль, как можно увидеть, команда passwd завершилась ошибкой:

passwd: Authentication token manipulation error
passwd: password unchanged

Чтобы понять причину ошибки, введём команду:

mount

Буквы ro говорят о том, что файловая система смонтирована только для чтения и по этой причине сделанные изменения не могут быть сохранены. Перемонтируем файловую систему:

mount -rw -o remount /

Как видим, после этого смена пароля прошла успешно:

Для выхода наберите:


sync
umount /

Чтобы выключить компьютер выполните:

poweroff -f

Или перезагрузите компьютер командой:

reboot -f

Как сбросить пароль в Arch Linux, BlackArch (а также в других производных Arch Linux)

Во время появления меню GRUB нажмите клавишу «a», чтобы остановить загрузку:

Затем нажмите «e» для перехода к редактированию параметров загрузки:

На экране отсутствует нужная нам строка, пролистните курсорными клавишами вниз и найдите строку, начинающуюся с linux.


Перейдите в конец этой строки, поставьте пробел и допишите:

single init=/bin/bash

Должно получиться примерно так:

Когда всё готово нажмите Ctrl+x или F10, чтобы загрузка продолжилась с установленными опциями.

В Arch Linux файловая система по умолчанию монтируется с правами на запись. Поэтому можно сразу перейти к смене пароля с помощью команды

passwd

Для выхода наберите:

sync
umount /

Чтобы выключить компьютер выполните:

poweroff -f

Или перезагрузите компьютер командой:


reboot -f

Сброс пароля в RHEL/CentOS 7

Кроме необходимости смонтировать файловую систему для запиши, в RHEL/CentOS 7 также имеется особенность, связанная с наличием SELinux.

Во время появления меню GRUB нажмите клавишу «a», чтобы остановить загрузку:

Затем нажмите «e» для перехода к редактированию параметров загрузки:

На экране отсутствует нужная нам строка, пролистните курсорными клавишами вниз и найдите строку, начинающуюся с linux16:

Найдите часть строки

rhgb quiet

и замените на

init=/bin/bash

Должно получиться примерно так:

Когда всё готово нажмите Ctrl+x или F10, чтобы загрузка продолжилась с установленными опциями.

Проверим права на запись:

mount | grep root

Как можно убедиться, права на запись отсутствуют. Перемонтируем файловую систему с правами записи:

mount -rw -o remount /

Сменим пароль

passwd

Пароль изменён, но дело ещё не закончено. Нам нужно переобозначить контекст SELinux. Если мы не выполним переобозначение всего контекста SELinux, мы не сможем войти используя новый пароль. Для этого:

touch /.autorelabel

Для выхода наберите:

sync
umount /

Чтобы выключить компьютер выполните:

poweroff -f

Или перезагрузите компьютер командой:

reboot -f

Что такое группа wheel в Linux

Применительно к компьютерам, термин wheel относится к учётным записям пользователя с битом wheel – системному параметру, который предоставляет дополнительные специальные системные привилегии, которые позволяют пользователю выполнять команды для служебного пользования, к которым обычные пользователи не могут получить доступ. Этот термин происходит от сленговой фразы big wheel (букв. «большое колесо»), отсылающего на человека с большой властью или влиянием. Он был впервые использован в этом контексте в отношении операционной системы TENEX, позже распространенной под названием TOPS-20 в 1960-х и начале 1970-х годов.

Этот термин был принят пользователями Unix в 1980-х годах из-за движения разработчиков операционной системы и пользователей от TENEX/TOPS-20 к Unix.

Современные системы Unix обычно используют группы пользователей в качестве протокола безопасности для управления правами доступа. Группа wheel – это особая группа пользователей, используемая в некоторых системах Unix для управления доступом к команде sudo, которая позволяет пользователю маскироваться как другой пользователь (обычно суперпользователь).

Что такое однопользовательский режим в Unix

Однопользовательский режим – это режим, в котором многопользовательская компьютерная операционная система загружается в одиночного суперпользователя. Этот режим в основном используется для обслуживания многопользовательских сред, таких как сетевые серверы. Для некоторых задач может потребоваться эксклюзивный доступ к общим ресурсам, например, запуск fsck в сетевом ресурсе. Этот режим также может использоваться в целях безопасности – сетевые службы не запускаются, что исключает возможность внешних помех. В некоторых системах потерянный пароль суперпользователя можно изменить, переключившись на однопользовательский режим. Поскольку при входе в этот решим не запрашивается никакой пароль, это можно рассматривать как уязвимость безопасности.

Unix-подобные операционные системы обеспечивают однопользовательский режим работы либо с помощью уровня выполнения в стиле System V, либо с загрузчиками в стиле BSD, либо с другими параметрами загрузки.

Уровень выполнения обычно изменяется с помощью команды init, уровень выполнения 1 или S будет загружаться в однопользовательский режим.

Параметры загрузчика могут быть изменены во время запуска перед выполнением ядра. В FreeBSD и DragonFly BSD он может быть изменен перед перезагрузкой системы с помощью команды nextboot -o "-s" -k kernel, и ее загрузчик предложит возможность загрузки в однопользовательском режиме. В Solaris команда

reboot -- -s

приведет к перезагрузке в однопользовательском режиме.

В GRUB 2 нельзя изменить пароль в однопользовательском режиме?

В официальной документации Red Hat мне встретилось утверждение, что в GRUB 2 больше не выполняется сброс пароля в однопользовательском режиме, как это было в GRUB. И что теперь для работы в однопользовательском режиме, а также в аварийном режиме требуется пароль рута. Возможно, это применимо только к последним версиям Red Hat Enterprise Linux, поскольку, как видно из этой инструкции и скриншотов, в GRUB 2 можно изменить пароль в однопользовательском режиме. В документации, на которую дана ссылка, описано два способа сброса пароля root в Red Hat Enterprise Linux на тот случай, если описанный здесь метод не сработал.


Рекомендуется Вам:

10 комментариев to Как в Linux сбросить забытый пароль входа

  1. На сервере CentOS сброс пароля прошел как по маслу. Огромное спасибо создателю этой инструкции!!! 

  2. Евгений:

    Здравствуйте. kali linix 2018/wnware ws 14 full. не могу ввести новый пароль. Как всегда у линукса глюки. все остальные коменды как по маслу,не даёт вписать вообще ничего в поле. только ввод работает. Что посоветуете?

    • Alexey:

      Здравствуйте, вводимый пароль не отображается на экране. То есть вы этого не видите, но ввод работает. После ввода нового пароля нажмите ENTER, затем будет запрос на подтверждение пароля — опять его введите и нажмите ENTER.

  3. Евгений:

    Не даёт вписать ничего в поле. Пишет-пароль не изменён.

  4. Егор:

    Как правильно выйти после изменения пороля? Команду пожалуйста 

    • Alexey:

      Приветствую! Команды для выключения или перезагрузки компьютера добавлены в инструкцию.

    • Bruh:

      перезапуск: reboot -f   

      выключение: poweroff -f

  5. Аноним:

    У меня вот такая ситуация, что делать? 

    • Alexey:

      Это что-то совсем отличное от рассматриваемого в данной статье. Вряд ли учётные данные пользователей хранятся на данном компьютере — скорее всего, они на сервере. В общем, обратитесь к вашему системному администратору.

    • ФСБ:

      Так у вас, уважаемый, Astra Linux. Кого ломаете-то? ))) Идите к системному и он вам поможет, но мне так кажется, что он вас пошлёт подальше, т.к. вы не имеете доступа к другим учётным записям. 

      Алексей ошибся, всё на фото норм. Записи нескольких пользователей. И ещё наверное у каждого пользователя свой синий ключик к таблетке. Ведь так? А у администратора красный.

Добавить комментарий для Евгений Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *