- Вики IT-KB
- Инструменты пользователя
- Инструменты сайта
- Боковая панель
- Содержание
- Как восстановить доступ к Debian Linux в случае проблем с sudo или утратой root-пароля
- Загрузка в recovery mode
- Нестандартная загрузка
- Cannot open access to console, root account is locked #755
- Comments
- newtonmunene99 commented Dec 24, 2018
- Describe the bug
- To Reproduce
- Expected behavior
- Screenshots
- Enviroments:
- Distro & Version
- Related package version
- Additional context
- Как исправить неверный файл /etc /sudoers, если root-доступ отключен?
- 3 ответа 3
- Решение
- Как в Kali Linux запускать терминал с правами root? Как запустить программу с графическим интерфейсом с правами root
- 1. Переключение на пользователя root
- 2. Открыть сессию root
- 3. Использование sudo, в том числе с внутренними командами Bash
- 4. Использование sudo без пароля
Вики IT-KB
Пошаговые руководства, шпаргалки, полезные ссылки.
Инструменты пользователя
Инструменты сайта
Боковая панель
Содержание
Как восстановить доступ к Debian Linux в случае проблем с sudo или утратой root-пароля
В некоторых ситуациях может получиться так, что мы потеряем административный доступ к серверу на базе Debian GNU/Linux. Например, к такому исходу могут привести некорректные действия администратора по настройке механизма sudo (ошибки при правке файлов /etc/sudoers и/или /etc/sudoers.d/* ) и, как следствие, получение ошибки «Username is not in the sudoers file» при любых дальнейших попытках использования sudo. Иногда бывают ситуации, когда локальный доступ к серверу есть, а данные административной учётной записи недоступны и требуется восстановить административный доступ к серверу.
Загрузка в recovery mode
В типичных ситуациях в Linux имеется режим восстановления Recovery Mode, который, как правило, доступен из загрузчика ОС. В этом режиме наша Linux-система доступна в режиме супер-пользователя root, и мы можем исправить в ней имеющиеся у нас проблемы, например внести корректировки в файлы sudo или добавить/изменить учётные данные локального администратора.
Для того, чтобы попасть в меню загрузки, в процессе запуска ОС Debian нажимаем кнопку Shift. В появившемся меню загрузчика GRUB выбираем расширенный режим загрузки:
Затем выбираем интересующее нас ядро Linux в режиме recovery mode…
Однако в случае с Debian, где супер-пользователь root в конфигурации по умолчанию выключен, мы можем получить сообщение о невозможности загрузки консоли восстановления «Cannot open access to console, the root account is locked»:
В таком случае мы можем прибегнуть к приёму изменения параметров загрузки ядра.
Нестандартная загрузка
В процессе загрузки в GRUB выбираем в списке ядер нужное нам ядро (режим recovery mode здесь уже не важен) и нажимаем «e» для редактирования параметров загрузки.
Находим строку начинающуюся с «linux …»
В конце строки меняем значение « ro » на « rw », а в самом конце строки дописываем вызов оболочки « init=/bin/bash ».
После чего для продолжения загрузки жмём F10
Теперь мы получили беспарольный root-доступ к нашему серверу. Здесь можно исправить имеющиеся у нас проблемы, например внести корректировки в файлы sudo. После внесения нужных правок система может быть загружена обычным образом (все сделанные нами ранее изменения в GRUB были временными).
Дополнительные источники информации:
Проверено на следующих конфигурациях:
Версия ОС |
---|
Debian GNU/Linux Stretch 9.4 |
Автор первичной редакции:
Алексей Максимов
Время публикации: 13.06.2018 15:45
Источник
Cannot open access to console, root account is locked #755
Comments
newtonmunene99 commented Dec 24, 2018
Describe the bug
When I boot up the system I get an error stating
Cannot open access to console, root account is locked
When I press enter, the system continues with the boot process normally. After signing in sometimes it just loads forever without showing the desktop and sometimes it shows the desktop and some apps work fine but deepin apps don’t work at all. Apps like the launcher, control center etc. I also can’t right click on docked applications.
I tried running from the terminal to see if i get any errors. What I get is
«dtkwidget2» can not find qm files «dde-launcher» can not find qm files 2018-12-24, 12:52:23.653 [Debug ] [dapplication.cpp Dtk::Widget::DApplicationPrivate::setSingleInstanceByDbus 203] register service failed: QDBusError(«», «»)
To Reproduce
I really don’t know how to reproduce. Just Boot up the system,I guess.
Expected behavior
System should boot up normally and apps should also open normally.
Screenshots
Enviroments:
Distro & Version
Linux Deepin 15.8
Related package version
Additional context
I only installed deepin os two days ago. My system is already the latest stable version.
The text was updated successfully, but these errors were encountered:
Источник
Как исправить неверный файл /etc /sudoers, если root-доступ отключен?
Это относится к моему Raspberry Pi, на котором у меня установлен Raspbmc. Я понимаю, что есть сайт Raspberry Pi StackExchange, но я подумал, что я мог бы больше взглянуть на эту проблему здесь.
Проблема в том, что я изменил /etc/sudoers в попытке предоставить разрешения NOPASSWD одному из пользователей, но я предполагаю, что где-то по пути я запустил файл, и теперь я получаю следующую ошибку при каждом входе в систему / попытке использовать sudo :
Я нашел похожие посты как в Ubuntu, так и в StackOverflow, но проблема в том, что для всех ответов требуется пароль root, а учетная запись root отключена по умолчанию в Raspbmc, и я, очевидно, не включал его до попытки изменить /etc/sudoers .
Итак, мой вопрос: как мне исправить файл, если у меня не включен root-доступ? Это вообще возможно?
3 ответа 3
Вы по-прежнему сможете загружать Pi в однопользовательском режиме, чтобы получить доступ к root.
Используя другой компьютер, измените cmdline.txt и добавьте single в конец строки
Затем, когда вы загружаете Pi с SD-карты, он автоматически выводит вас в приглашение root, которое позволяет вам обновить /etc/sudoers
Самое простое решение — это загрузить другую ОС на LiveDVD или LiveUSB (в идеале LiveUSB, а в идеале на ОС Linux), затем смонтировать диск и вручную изменить файл. Я делал подобные вещи раньше и исправлял это таким образом. Все ваши файлы будут видны и доступны для редактирования из системы Live. Если вы не зашифровали диск; это делает вещи немного сложнее.
Дайте мне знать, если у вас есть вопросы, и я отредактирую этот ответ — я не уверен, насколько вам удобно с настройкой живого USB, но это не очень сложно.
После двух дней исследований и просмотра веб-страниц я, наконец, нашел решение и смог сохранить свою собственную систему Raspberry Pi (без необходимости переформатировать SD-карту и начинать с нуля)!
ПРИМЕЧАНИЕ. Этот ответ довольно длинный. Если вы хотите быстро найти реальное решение, я добавил заголовок, к которому вы можете прокрутить вниз. Тем не менее, я рекомендую прочитать весь ответ, так как он может дать некоторое представление о различиях между дистрибутивом Raspbian и другими дистрибутивами Linux, а также понять, почему многие из предлагаемых решений, которые вы найдете в Интернете, могут не работать на вашем Pi ,
Обычно в среде Linux самый быстрый способ восстановить поврежденный sudo без перезагрузки — это использовать PolicyKit или команду pkexec например, например:
Но на Pi он, скорее всего, не будет работать, он будет запрашивать пароль root, но пароль не принимается. (Я имею в виду, вы даже помните установку пароля root? Подожди, а ты? Затем перейдите к звездочке *.)
Некоторые дистрибутивы Linux, например Ubuntu, поставляются с режимом восстановления, доступ к которому можно получить, удерживая нажатой клавишу Shift во время загрузки, и предлагает удобный интерфейс и позволяет перетащить его в приглашение корневой оболочки, где можно получить доступ к исправить сломанные файлы. Дистрибутив Pi Raspbian Linux не имеет такого режима восстановления, поэтому решение не является для нас решением. Тем не менее, Pi при загрузке предлагает вам удерживать нажатой клавишу Shift, чтобы войти в какой-то режим восстановления, и, войдя в режим восстановления Pi или в диалоговое окно NOOBS, мы, безусловно, находимся на правильном пути восстановления поврежденного sudo на нашем Pi.
Другим распространенным способом восстановления sudo является загрузка в однопользовательском режиме, которая приводит вас к приглашению корневой оболочки. Это можно сделать, добавив слово single в конец cmdline.txt в загрузочном разделе системы. В следующий раз, когда ваша система загрузится, она загрузится в однопользовательском режиме.
Мы можем легко попробовать это решение на нашем Pi, потому что, удобно, режим восстановления Pi или диалог NOOBS позволяет нам редактировать cmdline.txt . В режиме восстановления или в диалоговом окне NOOBS, нажав кнопку «Редактировать конфигурацию», вы открываете редактор, который позволяет редактировать два файла, одним из которых является cmdline.txt . При нажатии «ОК» в редакторе ваши изменения сохраняются.
К сожалению, когда вы загружаетесь в однопользовательский режим или «режим восстановления» на Pi, вы, скорее всего, получите следующее сообщение:
Это так же, как и то, почему ранее упомянутое приглашение корневого пароля не принимало никаких паролей, заключается в том, что Raspbian по умолчанию не имеет пароля, установленного для учетной записи root. Это не должно быть перепутано с паролем, который является ничем или что пароль не требовался бы. Raspbian, как и несколько других дистрибутивов Linux (например, Debian, производный Raspbian), ожидает, что пользователь будет работать как root с помощью sudo, а не через саму учетную запись. Следовательно, корневая учетная запись находится в состоянии «блокировки», которое мы испытываем.
* Если вы устанавливаете пароль пользователя root, например, с помощью команды sudo passwd root , то вы сможете использовать команду pkexec -com и загрузиться в однопользовательском режиме. Обратите внимание, что когда вы делаете это, вам нужно использовать sudo, так что, очевидно, это не решение проблемы, когда sudo нарушено, но я указываю на это, потому что, возможно, именно поэтому некоторые люди добились успеха в исправлении своих Pi при применении решений, предлагающих pkexec -командный или однопользовательский режим. Эти люди в какой-то момент ушли и вручную установили пароль root, разблокировав корневую учетную запись своей системы.
Решение
В этом блоге объясняется, как делать то, что нам нужно. Шаги практически идентичны шагам, которые мы предприняли при попытке восстановить sudo в однопользовательском режиме. Вам не нужно делать все громоздкие вещи, о которых упоминается в блоге, чтобы редактировать cmdline.txt , вместо этого просто делайте это в диалоговом окне NOOBS. Ключ заключается в добавлении init=/bin/sh в конец cmdline.txt . После добавления этого фрагмента при следующей загрузке Pi вы попадете в приглашение командной оболочки root.
Первоначально файловая система будет загружена в режиме только для чтения, поэтому, прежде чем иметь возможность что-либо редактировать, вам придется перемонтировать корневой раздел в режиме чтения и записи, выполнив следующую команду:
Теперь вы должны быть в приглашении root-оболочки, где вы можете свободно редактировать любой файл, включая испорченные файлы sudo.
Источник
Как в Kali Linux запускать терминал с правами root? Как запустить программу с графическим интерфейсом с правами root
Что нужно сделать чтобы терминал запускался с правами root?
Рассмотрим несколько вариантов
1. Переключение на пользователя root
В последних версиях Kali Linux пользователь по умолчанию изменился: раньше им был root, а теперь обычный пользователь.
Если вы хотите вернуться к прежнему варианту, то есть сделать пользователя root основным пользователем, то это возможно.
Для начала установите пароль пользователя root:
Теперь при включении компьютера вы можете войти как root:
В результате все открываемые терминалы будут иметь повышенные привилегии.
2. Открыть сессию root
Запустите терминал с обычными правами и выполните в нём:
Будет открыта сессия пользователя root, все команды будут выполняться с повышенными привилегиями.
Ещё один вариант запустить сессию с повышенными привилегиями, выполнить такую команду:
Чтобы завершить сессию root, нажмите Ctrl+d
3. Использование sudo, в том числе с внутренними командами Bash
На самом деле, немногие команды требуют прав суперпользователя. А для тех, которые требуют прав root, достаточно запускать их с sudo :
Но что если нам нужно дописать строку в файл требующих повышенных привилегий примерно следующей командой:
Команда должна выполняться с повышенными привилегиями, что должно дать права на запись в файл. Но в этом случае ни > , ни >> не получится использовать, в том числе как root. И будет выведена ошибка вида:
Эту проблему можно обойти открыв сессию суперпользователя:
Либо с помощью команды tee. Используйте её с опциями —append или -a — это важно, без этих опций файл будет полностью перезаписан. Пример:
Приведённая команда допишет новую строку в существующий файл.
Но особенность команды tee в том, что она не только допишет файл, но ещё и выведет добавленную строку в консоль. Если вы не хотите, чтобы данные вновь возвращались в консоль, то сделайте редирект вывода на /dev/null.
Это будет работать аналогичным образом, но на экран не будет выведена ‘новая строка’.
Ещё один вариант использования echo для записи или добавления в файл от имени администратора:
В команде используются и одинарные и двойные кавычки, это означает, что если в строке, которую вы добавляете в файл, также есть кавычки, то они должны быть экранированы обратными слэшами.
4. Использование sudo без пароля
Если для вас не проблема добавлять sudo перед командами, но вам не нравится каждый раз вводить пароль, то следующая команда позволит запускать команды с sudo и при этом не будет запрашиваться пароль:
Используйте это только если вы понимаете риски для безопасности!
Источник