Как восстановить забытый пароль линукс

Как сбросить забытый пароль Linux в WSL — CloudSavvy IT

Роман Самборский / Shutterstock

Забудьте свой пароль пользователя подсистемы Windows для Linux, и вы попадете в петлю. Чтобы сбросить пароль… вам необходимо знать свой пароль. Вот как выбраться из этого цикла.

Заперт в бесконечной петле

Уроборос — древний символ, изображающий змей или дракон, поедающий свой хвост. Если ты забудешь свой Подсистема Windows для Linux (WSL), вы окажетесь в столь же неприятной и бесконечной петле.

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

Поскольку вам не нужно использовать пароль для входа в систему, он легко выскользнет из головы. Особенно, если вы не часто используете WSL.

Это может не показаться такой неудачей, потому что, в конце концов, вы автоматически входите в систему. Проблема становится очевидной, когда вы пытаетесь получить доступ к файлам, которые не находятся в вашем домашнем каталоге, или установить программное обеспечение, или выполнить административные действия, такие как создание и управление другими пользователями.

Для этого вам нужно использовать команду sudo. В Linux вы подтверждаете, что имеете право использовать команду sudo, указав свой пароль.

Очевидный ответ — сбросить пароль. Вы забыли его, так что просто установите новый, верно? Это блестящая идея. Но для команды passwd требуется ваш действующий пароль чтобы доказать, что ты ты. Это разумная мера безопасности. Команда passwd требует подтверждения того, что вы являетесь владельцем учетной записи пользователя, для которой вы меняете пароль, прежде чем она позволит вам изменить пароль.

Если вы используете sudo с командой passwd, вы можете изменить пароль для любого пользователя, независимо от того, знаете ли вы его пароль или нет. Это звучит как решение, но нам все еще мешают, потому что для использования команды sudo вам необходимо знать свой пароль. Это начинает ощущаться как уроборос и Словить 22 комбинированный.

Конечно, есть способы избежать этой круговой логической головоломки. Вот два, которые вы можете попробовать.

Сброс с помощью исполняемого файла Linux

Мы собираемся показать вам два способа сделать это. Один способ немного сложнее другого, но он работал каждый раз, когда мы его пробовали. Другой способ — это немного более простой метод, но мы получили неоднозначные результаты.

Нам нужно определить исполняемый файл для дистрибутива Linux, который вы используете с WSL. В Windows 10 он будет в этом каталоге:

c: user AppData Local Microsot WindowsApps

Замените « » именем своей учетной записи пользователя Windows. В командной строке Windows смените каталог на это место и введите «dir».

Исполняемый файл должен быть легко идентифицирован. На этой тестовой машине мы установили Ubuntu 20.04, и очевидно, что нам нужен файл «ubuntu2004.exe».

Мы запустим сеанс Ubuntu, но скажем ему войти в систему как пользователь root вместо учетной записи пользователя, которую вы создали при установке дистрибутива Linux.

Конфигурация ubuntu2004 — по умолчанию-пользователь root

Сеанс Ubuntu запущен, и мы видим командную строку в окне терминала. Приглашение представлено белым текстом, а последний символ — решетка «#», а не знак доллара «$». Это говорит нам, что пользователь является пользователем root, а не обычным пользователем. В имени пользователя также есть слово «root».

Если потребуются дополнительные доказательства, мы можем использовать команду whoami.

Итак, мы определенно вошли в систему как root. Мы можем пойти дальше и сбросить пароль пользователя по умолчанию. Команда passwd запросит у вас новый пароль, а затем попросит ввести его второй раз. Ни один из них не будет эхом отражаться на экране. Пароль, который мы меняем, принадлежит пользователю «dave».

Убедитесь, что вы помните новый пароль. Мы выйдем из сеанса Ubuntu и вернемся в командную строку Windows.

Чтобы проверить наш новый пароль, нам нужно запустить новый сеанс Ubuntu и сбросить учетную запись обычного пользователя в качестве учетной записи по умолчанию.

Конфигурация ubuntu2004 — по умолчанию-пользователь Дэйв

Сеанс начинается, и мы вошли в систему как обычный пользователь с нашей обычной цветной командной строкой.

Чтобы доказать, что наш пароль был изменен, мы воспользуемся командой sudo для команды. Команда, которую мы используем, не имеет значения, важно то, что мы используем sudo. Мы воспользуемся командой ps, чтобы перечислить некоторые процессы.

Вам будет предложено ввести пароль, который вы создали, когда использовали команду passwd от имени пользователя root. Пароль должен быть принят, и команда должна быть запущена за вас.

Сброс с помощью команды wsl

Мы можем сделать то же самое с помощью команды WSL. В нашем тестировании мы получили противоречивые результаты, но, возможно, вам повезет больше, чем нам. Это более короткий метод, поэтому вы можете сначала попробовать его, а если он не сработает, попробуйте более длинный метод, который мы показали вам выше.

В командной строке Windows введите:

wsl — корень пользователя

Начнется сеанс Linux. Вы войдете в систему как root. Вы можете проверить это с помощью команды whoami.

Чтобы сбросить забытый пароль пользователя, используйте команду passwd и укажите имя учетной записи пользователя.

Вас дважды попросят ввести новый пароль. Так и должно быть.

Если вы выйдете из этого сеанса и начнете новый сеанс, вы снова войдете в систему как обычную учетную запись по умолчанию, и у вас будет новый пароль.

Читайте также:  Windows 10 для нокиа 930

Хватит жевать хвост

Один или оба этих метода подойдут вам, и вы освободитесь от бесконечного цикла, в котором невозможно сбросить пароль из-за того, что вы его не знаете.

Источник

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

Бывают случаи, что вы забыли или просто не знаете пароль пользователя для входа в систему. Можно установить новый пароль для любого пользователя. Для этого у вас должен быть физический доступ к компьютеру. В данной статье мы рассмотрим, как сбросить пароль пользователя в Linux — как установить новый пароль.

Первым делом нужно попасть в меню загрузчика GRUB. Для этого перезагрузите компьютер, и после того, как отобразится приветственный экран BIOS, нажмите и удерживайте клавишу Shift (или это может быть клавиша Esc ).

Появится меню загрузчика GRUB. Если вдруг с первого раза не получилось, например, вы не успели нажать Shift, и меню GRUB не показалось, попробуйте перезагрузить компьютер еще раз.

Меню GRUB выглядит следующим образом:

В меню представлен список операционных систем, которые установлены и доступны для загрузки. Найдите ваш Linux-дистрибутив (скорее всего это будет первый пункт меню). Под этим пунктом будет следующий пункт меню — это либо Advanced options for Ubuntu или Ubuntu, with Linux . generic (recovery mode) . Вместо Ubuntu будет стоять название вашего дистрибутива. В моем случае это, например, elementary.

Используя клавишу Вниз , выберете этот второй пункт в меню.

Так как в моем случае это пункт с надписью Advanced options for . , то после его выбора появятся несколько новых пунктов. Нужно выбрать пункт с пометкой (recovery mode) .

Появится новое меню — Recovery Menu. Используя клавишу Вниз , перейдите на пункт root (Drop to root shell promt) и выберите его, нажав клавишу Enter .

Вы попадете в командную строку. Если появилось сообщение «Press Enter for maintenance», тогда нажмите Enter .

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

Теперь можно установить новый пароль для вашего пользователя. Для этого вы должны знать имя пользователя в системе. Если вы его не помните, то можно вывести список всех пользователей, выполнив команду (мое имя пользователя было последним в списке):

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

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

Теперь можно перезагрузить компьютер и попробовать войти в систему, используя новый пароль. Для перезагрузки введите команду:

Видео — изменяем пароль пользователя

В данном видео показаны все действия, описанные в статье — попадаем в меню GRUB, загружаем recovery mode, монтируем диск для записи и меняем пароль.

Источник

Как сбросить root-пароль Linux-сервера

Если вы забыли root-пароль от Linux-сервера в облаке и sudo прав на машину у других пользователей нет, то воспользуйтесь моей инструкцией, чтобы сбросить root-пароль под различные ОС.

Centos 7 x86_64 + Centos 7 x86_64 Webuzo

1. Нажмите на кнопку Send Ctrl+Alt+Del в консоли — это перезагрузит сервер. Во время загрузки нужно «поймать» меню загрузчика. нашем образе CentOS 7 используется Grub.

2. Как только вы увидите на экране такую картинку, нажмите пробел или кнопку вниз — это прервет отсчет времени:

3. Grub некоторое время «думает» на этом меню загрузки. Поэтому надо дать ему понять, что не нужно автоматически продолжать загрузку с опциями по умолчанию, и что мы хотим работать с его меню.

4. Стрелками выбираем нужное ядро, которое отображено на скриншоте, и вводим «e» латиницей.

5. Теперь мы можем редактировать опции загрузки ядра:

6. Стрелками переходим к началу строки, которая начинается с «linux16». Это указание пути к файлу ядра, которое нужно загрузить, а также опции загрузки. Нам нужно переписать эти опции, чтобы попасть в ОС без root-пароля.

  • Меняем ro на rw
  • Меняем первое значение console=tty0 на console=tty
  • Удаляем 2 значения: console=ttyS0,115200n8 и console=ttyS0,115200
  • В конце добавляем init=/bin/bash

Было:

Стало:

7. После изменения нажимаем комбинацию клавиш CTRL+X, что перезагружает ядро с новыми опциями.

8. Если мы все сделали корректно, увидим следующее:

9. Мы попали на сервер от root без пароля и можем сбросить сам пароль.

Для начала проверяем, можно ли внести изменения в файловую систему. Для этого в консоли вводим:

Если все сделали правильно, увидим такой экран:

На экране мы должны видеть опцию rw, которую мы задавали в настройках — не ro.
Если видим ro, нужно перемонтировать файловую систему в rw:

После монтирования нужно снова перепроверить, что опция указана как rw, при помощи команды из предыдущего пункта.

10. Сбрасываем пароль командой:

Важно! Новый пароль не отображается даже звездочками. Поэтому нужно вводить его вслепую дважды.
Еще важнее! Если вы не выключали Selinux, вам также понадобится заставить его перечитать контексты. Для этого надо создать файл /.autorelabel, который даст Selinux понять, что нужно перечитать контекст. Без этого мы не сможем залогиниться с новым паролем:

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

12. Чтобы изменения применились, перезагрузите сервер.
Команды reboot и shutdown -r и кнопка «Send Ctrl+Alt+Del» не подойдут. Они рассчитывают на init-демона, который мы подменили процессом /bin/bash.
Поэтому нужно сделать hard reboot сервера (Холодная перезагрузка) из контрольной панели, или запустить init-демона вручную. Это можно сделать, выполнив команду:

13. После перезагрузки можем зайти на сервер от имени root с новым паролем.

Читайте также:  Linux выделить несколько файлов

Fedora 28

1. Нажмите на кнопку «Send Ctrl+Alt+Del» в консоли — это перезагрузит сервер. В процессе загрузки нужно «поймать» меню загрузчика. В нашем образе Fedora используется Grub.
Как только вы увидите на экране такую картинку, нажмите пробел или кнопку вниз — это прервет отсчет времени:

2. Grub некоторое время «думает» на этом меню загрузки. Поэтому надо дать ему понять, что не нужно автоматически продолжать загрузку с опциями по умолчанию, и что мы хотим работать с его меню. Для этого вводим «e» латиницей.

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

3. Стрелками переходим к началу строки, что начинается с «linux16». Это указание пути к файлу ядра, которое нужно загрузить, а также опции загрузки. Нам нужно переписать эти опции, чтобы попасть в ОС без root-пароля.

  • Меняем ro на rw
  • Меняем первое значение console=tty1 на console=tty
  • Удаляем значение console=ttyS0,115200n8
  • В конце добавляем rd.break enforcing=0

Было:

Стало:

4. После изменений нажимаем комбинацию клавиш CTRL+X. Это перезагружает сервер с новыми опциями.
Если все сделали правильно, видим следующее:

5. Мы зашли в «emergency recovery» консоли.
Сначала проверяем, можем ли вносить изменения в файловую систему. Для этого в консоли вводим:

Если все сделали правильно, увидим следующее:

Нас интересует опция rw, которую мы задавали в настройках. Должна быть указана она — не ro.
Если видим ro — нужно перемонтировать файловую систему в rw:

6. После монтирования снова проверьте, что опция при проверке указана как rw, при помощи команды из предыдущего пункта.

7. Сбрасываем пароль:

Важно! Новый пароль не отображается даже звездочками. Поэтому надо вводить его вслепую дважды.

8. После этого, на всякий случай, выполняем команду sync — чтобы все изменения из оперативной памяти записались на диск:

2 раза вводим команду:

9. После этого пойдет нормальная загрузка ОС. Дожидаемся окончания загрузки и входим с новым паролем.

10. Теперь нужно поправить Selinux после нашего вмешательства. Отдаем команды от root:

Файл /etc/shadow перечитывается для Selinux и включается режим обратно в Enforcing.

openSUSE Leap 42

Если вы настраивали пароль на Grub-загрузчик и не помните его тоже этот способ вам не подойдет. Вам нужно будет загрузить сервер с другого источника — например, с OpenSuse Install DVD образа.

1. Нажмите на кнопку «Send Ctrl+Alt+Del» в консоли — это перезагрузит сервер. В процессе загрузки нужно «поймать» меню загрузчика. В нашем образе openSUSE используется Grub.

Как только вы увидите на экране такую картинку, нажмите пробел или кнопку вниз — это прервет отсчет времени:

2. Grub некоторое время «думает» на этом меню загрузки. Поэтому надо дать ему понять, что не нужно автоматически продолжать загрузку с опциями по умолчанию, и что мы хотим работать с его меню. Для этого вводим «e» латиницей.

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

Чтобы восстановить пароль, мы можем использовать как single-user mode, так и трюк с init=/bin/bash. Поскольку возможно, что у вас single-user mode настроен так, чтобы все равно запрашивать root-пароль, мы сразу опишем способ с запуском bash как init процессом.

Наши образы openSUSE используют Grub как загрузчик. Если вы использовали свой образ openSUSE, ваш загрузчик может оказаться не Grub, а LiLo. В таком случае, синтакс будет отличаться.

3. Стрелками переходим к началу строки, что начинается с «linux». Это указание пути к файлу ядра, которое нужно загрузить, а также опции загрузки. Нам нужно переписать эти опции, чтобы попасть в ОС без root-пароля.
Делаем следующее:

  • Удаляем значение: console=ttyS0,115200n8
  • Меняем значение console=tty0 на console=tty
  • В конце добавляем init=/bin/bash

Было:

Стало:

4. После изменения нажимаем комбинацию клавиш CTRL+X, что выполняет перезагрузку с новыми опциями.

5. Если все было выполнено корректно, видим такую картину:

Мы попали на сервер от root без пароля и можем выполнить сброс самого пароля.

6. Для начала выполняем монтирование файловой системы для возможности внесения изменений, в консоли вводим:

Проверяем корректность изменений:

Если все было выполнено правильно, мы увидим следующее:

Нас интересует опция rw, должна быть указана именно она, а не ro.

7. Сбрасываем пароль командой:

Важно! Новый пароль не отображается даже звездочками, потому надо вводить его вслепую дважды.

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

9. Далее нужно выполнить перезагрузку сервера для применения изменений.
Команды reboot и shutdown -r и кнопка «Send Ctrl+Alt+Del» не подойдут. Они рассчитывают на init-демона, который мы подменили процессом /bin/bash.
Поэтому нужно сделать hard reboot сервера (Холодная перезагрузка) из контрольной панели, или запустить init-демона вручную. Это можно сделать, выполнив команду:

13. После перезагрузки можем зайти на сервер от имени root с новым паролем.

Ubuntu 14.04

1. Нажмите на кнопку «Send Ctrl+Alt+Del» — это перезагрузит сервер. Сразу выделяем область консоли мышью. В процессе загрузки требуется успеть «поймать» меню загрузчика В нашем образе Ubuntu используется Grub.

2. В Canonical меню Grub обычно не видно. Чтобы его вызвать, надо зажать клавишу Shift (только левый) в процессе загрузки, как только мелькает надпись Booting from hard disk.

Если с первого раза не получится, пробуйте еще раз.

В результате вы должны получить следующую картинку:

3. На первом пункте Ubuntu нажимаем e латиницей и видим следующее:

4. Стрелками переходим к началу строки, которая начинается с «linux». Это указание пути к файлу ядра, которое нужно загрузить, а также опции загрузки. Нам нужно переписать эти опции, чтобы попасть в ОС без root-пароля.
Делаем следующее:

  • Меняем ro на rw
  • Меняем первое значение console=tty1 на console=tty
  • Удаляем значение: console=ttyS0
  • В конце добавляем init=/bin/bash
Читайте также:  Общий доступ для папки linux

Было:

Стало:

5. После изменения нажимаем комбинацию клавиш CTRL+X, что выполняет перезагрузку с новыми опциями.

Если все сделали правильно, видим следующее:

Мы попали на сервер от root и можем сбросить пароль.

6. Выполняем проверку возможности внесения изменений в файловую систему:

Если все сделали правильно, видим следующее:

Нас интересует опция rw, которую мы задавали в настройках. Должна быть указана она — не ro.

7. Если видим ro — нужно перемонтировать файловую систему в rw:

8. После монтирования снова проверьте, что опция при проверке указана как rw, при помощи команды из предыдущего пункта.

9. Сбрасываем пароль командой:

Важно! Новый пароль не отображается даже звездочками. Поэтому нужно вводить его вслепую дважды.

Еще важнее! Если вы не выключали Selinux, вам также понадобится заставить его перечитать контексты. Для этого надо создать файл /.autorelabel, который даст Selinux понять, что нужно перечитать контекст. Без этого мы не сможем залогиниться с новым паролем:

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

11. Чтобы изменения применились, перезагрузите сервер.

Команды reboot и shutdown -r и кнопка «Send Ctrl+Alt+Del» не подойдут. Они рассчитывают на init-демона, который мы подменили процессом /bin/bash.
Поэтому нужно сделать hard reboot сервера (Холодная перезагрузка) из контрольной панели, или запустить init-демона вручную. Это можно сделать, выполнив команду:

13. После перезагрузки можем зайти на сервер от имени root с новым паролем.

Ubuntu 16.04

1. Нажмите на кнопку «Send Ctrl+Alt+Del» — это перезагрузит сервер. Сразу выделяем область консоли мышью. В процессе загрузки требуется успеть «поймать» меню загрузчика В нашем образе Ubuntu используется Grub.

2. В Canonical меню Grub обычно не видно. Чтобы его вызвать, надо зажать клавишу Shift (только левый) в процессе загрузки, как только мелькает надпись Booting from hard disk.
Если с первого раза не получится, пробуйте еще раз.
В результате вы должны получить следующую картинку:

3. Стрелками выбираем «Advanced options for Ubuntu» и нажимаем Enter, видим следующее:

4. Выбираем пункт с (recovery mode) и нажимаем Enter.

5. Выбираем пункт «root Drop to root shell prompt» и нажимаем Enter:

7. В наших шаблонах ОС Ubuntu не нужно вводить дополнительный пароль. Мы попадаем на сервер от root без него.

8. Для начала выполняем проверку возможности внесения изменений в файловую систему, в консоли вводим:

Нас интересует опция rw, которую мы задавали в настройках. Должна быть указана она — не ro.

9. Если видим ro — нужно перемонтировать файловую систему в rw:

10. После монтирования снова проверьте, что опция при проверке указана как rw, при помощи команды из предыдущего пункта.

11. Сбрасываем пароль командой:

Важно! Новый пароль не отображается даже звездочками. Поэтому нужно вводить его вслепую дважды.

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

13. Чтобы изменения применились, перезагрузите сервер.
Команды reboot и shutdown -r и кнопка «Send Ctrl+Alt+Del» не подойдут. Они рассчитывают на init-демона, который мы подменили процессом /bin/bash.
Поэтому нужно сделать hard reboot сервера (Холодная перезагрузка) из контрольной панели, или запустить init-демона вручную. Это можно сделать, выполнив команду:

14. После перезагрузки можем зайти на сервер от имени root с новым паролем.

Debian 8 + Debian 9

1. Нажмите на кнопку «Send Ctrl+Alt+Del» — это перезагрузит сервер. Сразу выделяем область консоли мышью. В процессе загрузки требуется успеть «поймать» меню загрузчика В наших образах Debian используется Grub.

2. В Canonical меню Grub обычно не видно. Чтобы его вызвать, надо зажать клавишу Shift (только левый) в процессе загрузки, как только мелькает надпись Booting from hard disk.

Если с первого раза не получится, пробуйте еще раз.

В результате вы должны получить следующую картинку:

3. В отличие от Ubuntu, root-пользователь в Debian образе закрыт (на пароле). Потому мы не сможем воспользоваться штатным Rescue вариантом загрузки.
Нужно поправить опции загрузки.

4. Выбираем пункт Debian GNU/Linux и нажимаем e латиницей.

5. Попадем в конфигурацию выбранного пункта меню:

6. Стрелками переходим к началу строки, которая начинается с «linux». Это указание пути к файлу ядра, которое нужно загрузить, а также опции загрузки. Нам нужно переписать эти опции, чтобы попасть в ОС без root-пароля.
Делаем следующее:

  • Меняем ro на rw
  • Меняем первое значение console=tt0 на console=tty
  • Удаляем 2 значения: console=ttyS0,115200 и earlyprintk=ttyS0,115200
  • в конце добавляем init=/bin/bash

Было:

Стало:

7. После изменения нажимаем комбинацию клавиш CTRL+X, видим меню и нажимаем Enter.

8. Мы попали на сервер от root и можем сбросить пароль.
Выполняем проверку возможности внесения изменений в файловую систему:

Если все сделали правильно, видим следующее:

Нас интересует опция rw, которую мы задавали в настройках. Должна быть указана она — не ro.

9. Если видим ro — нужно перемонтировать файловую систему в rw:

10. После монтирования снова проверьте, что опция при проверке указана как rw, при помощи команды из предыдущего пункта.

11. Сбрасываем пароль командой:

Важно! Новый пароль не отображается даже звездочками. Поэтому нужно вводить его вслепую дважды.

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

13. Чтобы изменения применились, перезагрузите сервер.
Команды reboot и shutdown -r и кнопка «Send Ctrl+Alt+Del» не подойдут. Они рассчитывают на init-демона, который мы подменили процессом /bin/bash.
Поэтому нужно сделать hard reboot сервера (Холодная перезагрузка) из контрольной панели, или запустить init-демона вручную. Это можно сделать, выполнив команду:

14. После перезагрузки можем зайти на сервер от имени root с новым паролем.

Источник

Оцените статью