Нічого страшного не сталося, просто ти повернувся/лася до старого ноутбука з Linux, який не вмикав місяць, і пароль вилетів із голови. Або перевстановлював/ла систему й тицьнув/ла щось не те. З Windows така історія виглядає як катастрофа, а в Linux все простіше: якщо система твоя й ти маєш до неї фізичний доступ, пароль можна скинути за кілька хвилин. Розповім, як це зробити, коли забув пароль у Linux, одним зі способів, які працюють на Ubuntu, Linux Mint, Debian, Fedora й Arch.

Одразу про безпеку

Може здатись, що це дірка: хіба так просто змінити чужий пароль? Так, якщо ти фізично сидиш за комп'ютером і диск не зашифровано. Тому це не вразливість, а властивість будь-якої системи: хто має доступ до заліза, той має доступ до всього. Захищає лише шифрування диска. Якщо ти ввімкнув/ла шифрування диска при встановленні, без його ключової фрази система навіть не завантажиться, і жодним із цих способів до даних не дістатися.

Спосіб 1. Режим відновлення з меню GRUB (Ubuntu, Linux Mint, Debian)

Найпростіший шлях, коли система стандартна і з меню завантажувача GRUB.

  1. Перезавантаж комп'ютер. Під час запуску затисни Shift (для BIOS) або натискай Esc (для UEFI), поки не з'явиться меню GRUB.
  2. Обери пункт Advanced options (Додаткові параметри), а потім рядок із recovery mode.
  3. У меню відновлення вибери root (Drop to root shell prompt). Тебе просять натиснути Enter і з'являється командний рядок із правами адміністратора.
  4. Диск за замовчуванням змонтовано лише для читання. Перемонтуй його для запису:
mount -o remount,rw /
  1. Скинь пароль потрібного користувача, підставивши своє ім'я користувача замість username:
passwd username

Введи новий пароль двічі (на екрані він не відображається, це нормально). Якщо забув/ла ще й ім'я користувача, подивись список командою ls /home.

  1. Перезавантаж систему:
reboot -f

Спосіб 2. Через параметр завантаження init=/bin/bash

Підходить, коли «recovery mode» немає, наприклад на Arch і Manjaro, або коли пункт не відкривається.

  1. У меню GRUB наведи вибір на потрібний запис системи й натисни e (редагування).
  2. Знайди рядок, що починається зі слова linux. У його кінець допиши через пробіл: rw init=/bin/bash.
  3. Натисни Ctrl+X (або F10), щоб завантажитись із цим параметром. Ти потрапиш у командний рядок з правами адміністратора.
  4. Змінюй пароль так само:
passwd username
  1. Після зміни не вимикай комп'ютер кнопкою одразу: спершу запиши дані на диск командою sync, а потім перезавантаж:
sync
exec /sbin/init

Якщо остання команда не спрацювала, перезавантаж через reboot -f після sync.

Спосіб 3. Fedora: параметр rd.break

У Fedora та близьких системах діє SELinux, тому після зміни пароля треба ще й попросити систему оновити мітки файлів. Інакше вхід може не спрацювати.

  1. У меню GRUB натисни e й допиши в кінець рядка, що починається з linux, слово rd.break. Запусти клавішами Ctrl+X.
  2. Коли з'явиться командний рядок, виконай:
mount -o remount,rw /sysroot
chroot /sysroot
passwd username
touch /.autorelabel
exit
exit

Після цього система завантажиться й один раз довго перевірятиме мітки файлів. Не лякайся, комп'ютер не завис: просто дочекайся.

Спосіб 4. З живої флешки

Якщо GRUB не відкривається чи закритий, лишається універсальний варіант: завантажся з флешки із Linux у режимі «Спробувати», змонтуй розділ свого диска й зміни пароль через chroot. Спершу дізнайся, який розділ твій кореневий:

lsblk -f

Нехай це /dev/sda2. Тоді:

sudo mount /dev/sda2 /mnt
sudo chroot /mnt
passwd username
exit
sudo umount /mnt

Про те, як користуватися chroot і відновлювати завантаження зі змонтованої системи, я докладніше розповідав у статті відновлення завантажувача Windows та Linux.

Забув/ла лише пароль sudo, а вхід працює

Якщо пароль для входу у систему ти пам'ятаєш, а sudo просить той самий пароль і не приймає, швидше за все, ти просто помиляєшся розкладкою або Caps Lock. Спробуй ввести пароль у текстовому полі, щоб побачити, що саме друкується. Якщо ж пароль справді забуто, скористайся будь-яким із способів вище: пароль користувача й пароль для sudo це одне й те саме.

Як не опинитися тут знову

  • Користуйся менеджером паролів або паперовим записником. Про вибір читай у статті менеджер паролів чи паперовий записник.
  • Придумуй пароль, який легко запам'ятати: фраза з кількох слів краще за набір символів.
  • Якщо комп'ютер зберігає важливі дані, увімкни шифрування диска. Тоді фізичний доступ до заліза вже не дає доступу до файлів.

Що далі

Коли доступ відновлено, раджу пройтися по кроках після встановлення Linux Mint і ще раз пригадати двадцять базових команд Linux: пароль, права й диски все це обертається довкола них. А якщо система перестала завантажуватись у процесі, знадобиться стаття про відновлення завантажувача.

Більше про це – за позначками Помилки та коди помилок, Безпека та Налаштування системи.

А ти колись забував/ла пароль до Linux? Яким способом скористався/лася? Пиши в коментарях 🙂