вторник, 24 сентября 2013 г.

Linux. Я забыл пароль учетной записи

Забыл пароль на Linux машине.

Вернулся я из 3-недельного отпуска. Хорошо отдохнул. Набрался сил. Сел за рабочий компьютер. И обнаружил что забыл пароль от своего Linux - Fedora Core 18. То есть я его как-бы помню. Но ответ почему-то один — пароль не опознан.
Ага — подумал я — надо зайти под root и показать кто тут главный. Оказалось, что пароль root -а тоже не принимается. То ли я его забыл, то ли запретил заходить администратором с консоли и забыл о этом. Сказались месяцы использования команды sudo, которая покрывала все мои администраторские потребности.
Больше ни одной учетной записи на компьютере не было.

Теория

Решение было мне известно. Не в первый раз с таким сталкиваюсь. В файле /etc/passwd найти имя под которым я захожу. Оно должно находиться в самом начале строки. Допустим если я захожу под именем asitko то строка выглядит где-то так asitko:x:1000:1000:Александр Ситько:/home/sitko:/bin/bash И стереть в ней символ x между двоеточий. Чтобы строка выглядела asitko::1000:1000:Александр Ситько:/home/sitko:/bin/bash Тогда на эту учетную запись пароль вообще не спрашивается. И поскольку ни одного пароля я не помню, то надо загружаться с Live CD на системе Linux. На подобную тему уже есть статья как сбросить пароль Windows если я его забыл.

В дело вмешивается LVM-том

По рукой как раз оказался последний Live CD от антивируса dr.Web. Решил использовать его по не-прямому назначению. В системе всего два раздела. Sda1 где сидит swap системы и sda2 с самой системой. В консоли набираю mount /dev/sda2 /mnt/sda2 В ответ сообщение о ошибке "mount: unknown filesystem type 'LVM2_member'" Оказалось, что когда я устанавливал Linux то указал инсталятору создать разделы автоматически. И он создал не обычный раздел на файловой системе ext4, а LVM-том который не каждый Linux еще понимает.
Под рукой был еще Linux Live CD с программой разбиения дисков Gparted. С ним оказалась та же самая ситуация.
Я нашел iso-образ родной Fedora Core 18 на своем компьютере. Приятной особенностью последних инсталяторов Fedora Core есть то что они одновременно являются Live CD.

Победа

После его запуска запустил терминал и зашел администратором "/bin/su -l". Оказалось, что нужный мне раздел находится в /dev/mapper/fedora-root. Я его примонтировал в /mnt/fedora и командой /bin/vi /mnt/fedora/etc/passwd решил проблему