Как сбросить пароль Linux

Будем сбрасывать пароль пользователя root.

В общем процедура заключается в следующем:

  • Загрузиться с Live CD
  • Примонтировать раздел на котором расположен файл passwd
  • Отредактировать файл passwd

 

Теперь подробно:

Загружаем систему на которой необходимо сбросить пароль с LiveCD. В качестве LiveCD можно воспользоваться установочным диском Ubuntu. В этой статье подробно рассказывается, как загрузиться с LiveCD. Я буду использовать образ ubuntu-14.04.1-desktop-i386.

zagruzka_livecd_01

Выбираем Try Ubuntu

Появляется рабочий стол Ubuntu:

zagruzka_livecd_02

Чтобы перейти в терминал (командную строку) жмем сочетание клавиш [Ctrl+Alt+F1]. Для возврата в графический интерфейс используется сочетание клавиш [Ctrl+Alt+F7].

terminal_01

Теперь определим какой раздел диска нужно примонтировать. Файл passwd находится в разделе, который помечен, как загрузочный (boot). Чтобы посмотреть, какие разделы доступны и какой из них является загрузочным используем команду:

sudo fdisk -l

Вывод команды:

fdisk_01

В колонке Boot напротив загрузочного раздела стоит символ [*]. Вот этот то раздел нам и нужно примонтировать. В моем случае раздел называется /dev/sda1. У вас он может быть другим, например /dev/sdb1, /dev/sdc1. Итак монитруем раздел.

Для этого в директории /mnt создадим точку монтирования (директорию). Назовем ее например disk1.

sudo mkdir /mnt/disk1

mkdir_01

Теперь выполним монтирование раздела /dev/sda1 в директорию /mnt/disk1

Выполним команду:

sudo mount /dev/sda1 /mnt/disk1

mount_01

Проверим, что раздел примонтирован, для этого выполним команду:

mount |grep sda1

Получим вывод команды:

mount_02

Видим, что раздел /dev/sda1 примонтирован в каталог /mnt/disk1

(rw) – означает, что раздел примонтирован с правами чтения\записи (read\write). По умолчанию, команда mount монтирует раздел именно с правом rw.

Теперь перейдем в директорию /mnt/disk1. Для этого выполним команду:

cd /mnt/disk1

cd_01

Просмотрим содержимое текущей директории командой:

ls

Вывод команды ls:

ls_01

Вывод команды показывает содержимое раздела /dev/sda1. Нам нужен каталог etc. Перейдем в него с помощью команды cd

cd etc

cd_etc

В этой директории должен находиться файл passwd. Открываем файл либо через редактор vi, либо через nano. Я воспользуюсь vi, т.к. этот редактор есть во всех дистрибутивах Linux. Вдруг вы будете загружаться с LiveCD на котором нет редактора nano. В nano все просто и понятно. Команда на редактирование файла passwd через nano следующая:

sudo nano passwd

Итак выполняем редактирование файла через редактор vi

sudo vi passwd

Тут может быть 2 варианта. Либо на месте значения пароля стоит символ «x», либо будет довольно длинная строка вида: «$6$CWndpft4dadHDkfdl…»

Вариант 1.

vi_passwd_01

В этом случае необходимо удалять все символы выделенные желтой рамкой.

Вариант 2.

vi_passwd_02

В этом случае необходимо удалить только символ «x».

В итоге должна получиться такая строчка:

vi_passwd_03

Т.е. между словом «root» и первой по порядку цифрой «0» должно стоять два знака двоеточия «::» (root::0). Будьте внимательны, т.к. если будет какой-нибудь лишний символ или какого-то символа будет не хватать, то процедура сброса пароля окажется неудачной.

Редактируем файл passwd через редактор vi

Итак, после выполнения команды

sudo vi passwd

открылось окно редактирования в редакторе vi:

vi_edit_01

клавишами перемещения курсора устанавливаем курсор на символ «x» и один раз жмем клавишу [x]. Символ будет удален и в результате у нас должна появиться такая строка:

vi_passwd_03

Теперь необходимо выйти в режим команд редактора vi. Для этого необходимо на клавиатуре ввести команду «:» (двоеточие). В моем случае это будет нажатие сочетания клавиш [Shift+;]. Далее необходимо набрать команду wq путем нажатия соответствующих клавиш [w] и [q]. В итоге внизу окна редактора должна получиться строчка «:wq«. На рисунке выделена желтой рамкой:

vi_edit_02

Команда :wq означает: «записать и выйти» (w — write, q — quit). Жмем [Enter], редактирование файла passwd закончено. Извлекаем носитель LiveCD и перезагружаем компьютер. Когда появится окно логина, то в качестве имени пользователя вводим root, жмем [Enter] и сразу же без запроса пароля попадаем в систему. Запрос на ввод пароля не выдается. Если все было сделано правильно, то мы успешно залогинимся в системе. Далее необходимо снова открыть файл passwd на редактирование и вернуть строку, которую мы редактировали к первоначальному виду, т.е. нужно добавить символ »x’ обратно. Через редактор vi это будет выглядеть следующим образом:

Вводим команду:

vi /etc/passwd

Открывается окно редактирования:

vi_edit_03

Клавишами перемещения курсора устанавливаем курсор между символами «::», т.е. должно получиться так: root:<тут курсор>:0

Жмем клавишу [i], таким образом мы входим в режим редактирования. И печатаем нужный нам символ «x«. Должна получиться такая строка: root:x:0

vi_edit_04

Жмем клавишу [Esc] — так мы входим из режима редактирования. И переходим в режим команд путем ввод символа двоеточие «:» [Shift+;]. Вводим команду на запись и выход :wq

vi_edit_05

А теперь нужно изменить пароль пользователя root. Для этого выполняем команду passwd и дважды указываем свой новый пароль. Попробуйте выйти из системы и снова зайти под пользователем root уже со своим новым паролем. Если не получается, попробуйте повторить процедуру по сбросу пароля.