Raspbian по умолчанию настроен таким образом, что в учетную запись root невозможно войти, используя пароль. Это делается, начиная с записи, в /etc/password
которой начинается:
root:x:0:0:
Поля разделены двоеточиями и объяснены в man 5 passwd
(обратите внимание на 5
, так man passwd
как даст вам страницу руководства для команды passwd
; раздел 5 для файлов конфигурации, и в этом случае они имеют одинаковое имя). Здесь первый - name ( root
), третий и четвертый - числовые uid и gid (оба 0
), а второй - для пароля. Для большинства записей это будет означать x
, что фактический пароль находится в другом файле /etc/shadow
.
Обратите внимание, что «настоящий пароль» нигде не хранится. В нем хранится shadow
однонаправленный хэш действительного пароля. Односторонний хэш - это результат процесса, который всегда будет производить одно и то же (что позволяет подтвердить ваш пароль), но необратим. Другими словами, если кто-то попадает в руки shadow
, нет способа вывести пароль из хэша. Однако, если они могут изменить shadow
, очевидно, что они могут отключить или изменить то, что будет работать в качестве пароля. Но они никогда не смогут узнать ваши пароли. Вот почему даже root
не может этого сделать (хотя root всегда может изменить их на что-то другое, не требуя оригинала).
В случае root запись in shadow
начинается следующим образом, как и для большинства других системных учетных записей:
root:*:
*
Не указывает на наличие в настоящее время возможно пароль , который можно было бы использовать для этой учетной записи.
Привилегированный пользователь может изменить это, однако, используя passwd
команду , чтобы установить новый пароль, который заменит *
с хэш уже упоминалось ранее (это всегда начинаются , $n$
где n
некоторая случайная величина , которая используется как «соль» для хэша, но вы не не нужно это понимать).
В любом случае, когда я настраиваю карту из свежего изображения, первое, что я делаю, это захожу /etc/passwd
и удаляю x
запись root, поэтому теперь начинается:
root::0:0
Обратите внимание, что теперь нет второго поля. Это означает, что пароля нет, и все, что вам нужно сделать, это набрать root
в приглашении для входа в систему, и вы вошли как root
. Затем вы можете использовать, passwd
чтобы установить один.
Итак, у вас есть два варианта здесь, но они оба требуют, чтобы вы вынули карту из pi и получили доступ ко второму разделу из другой системы (которая может читать / записывать разделы ext4).
Восстановление sudoers
. Если у вас есть эталонное изображение, это легко, вы можете просто вернуть его на место, заменив его. В противном случае это более сложный вариант, так как вы должны знать, что вы делаете (и ваш послужной список sudoers
не так хорош ...).
Отредактируйте /etc/passwd
и удалите его, x
как описано выше, вставьте карту обратно, войдите как root
, создайте пароль. Конечно, вам все равно придется исправить sudoers
, но проб и ошибок будет легче, так как если вы действительно root
, вы всегда сможете получить к нему доступ.
Если у вас нет системы, которая может обращаться к файловым системам ext4 («живой CD» Debian здесь хороший выбор), то вы застряли. Вам придется перепрошить карту и начать заново.
/etc
. Еслиsudoers
его там нет, вы можете случайно удалить его, и в этом случае вам придется заменить его из свежего образа Debian (вам не нужно создавать новую карту, вам просто нужен файл изображения, см. Здесь ) .. .etc/passwd
к карте и изменять ее через корневую учетную запись виртуальной машины Debian.Raspbian не имеет
root
пароля. В этом отношении он отличается от Ubuntu. Вы можете создатьroot
пароль, но AFAIK, который требуетsudo
.Лучше всего редактировать файлы, монтируя SD-карту на Linux-машине.
Это можно сделать на Pi, если 1. у вас есть устройство для чтения карт SD 2. Вы используете хорошую ОС на другой SD для загрузки Pi.
источник
Чтобы установить пароль root:
sudo passwd root
Источник: https://www.raspberrypi.org/forums/viewtopic.php?f=91&t=5056&start=25.
источник
Если вы загрузите Puppy Linux for Raspberry Pi с http://puppylinux.org/main/Download%20Latest%20Release.htm#quirky и установите его на флэш-накопителе, то вы сможете загружать свой компьютер с этого, а поскольку Puppy всегда запускается как root без пароля, вы можете изменить что-либо на компьютере, который вы хотите. Сделайте ваши изменения, затем перезагрузите компьютер без загрузочного носителя Puppy. Теперь компьютер загрузится в вашу измененную систему без Puppy.
Я немного новичок в Raspberry Pi, так что я не знаю, как загрузить его с другого устройства (thumbdrive), но, вероятно, есть способ. Возможно, система Noobs, удерживая нажатой клавишу shift во время загрузки.
Я добавлю простую альтернативу загрузке с другого диска: вместо этого Raspberry Pi может быть загружен из установки Puppy на SD-карту (или карту microSD), а исходный установочный носитель может быть считан и изменен с устройства чтения карт, подключенного к тот же Raspberry Pi.
источник