Не удается инициализировать модуль политики centos
Обновлено: 07.07.2024
При попытке настроить срабатывание одного из скриптов, который обращается к системной функции от имени обычного пользователя системы, возникла необходимость внести изменения в полномочия пользователя через файл /etc/sudoers
В найденных на эту тему материалах говорится, что редактирование данного файла необходимо производить через команду visudo . Хотелось бы, конечно, чтобы авторы таких материалов уточняли, что команду следует запускать от имени суперпользователя, так как при вводе просто visudo в терминале появляется:
$ visudo
visudo: /etc/sudoers: Отказано в доступе
После ввода "правильной" команды открывается окно редактора nano с загруженным в него содержанием файла sudoers .
Авторы публикаций поясняют, что при таком способе будет проверяться правильность синтаксиса вносимых в него изменений.
Вследствие отсутствия необходимости использования редактора nano мне не было известно назначение клавиш, с помощью которых производится запись в файл вносимых изменений:
И только в дальнейшем после "подсказки друга" мне стало известно, что символ ^ соответствует клавише Ctrl.
>>> /etc/sudoers: ошибка синтаксиса near line 21 <<<
sudo: parse error in /etc/sudoers near line 21
sudo: no valid sudoers sources found, quitting
sudo: не удаётся инициализировать модуль политики
Следствием этого стало невозможным использование любых начинающихся с sudo команд, а также символ ошибки в значке, отображающем доступность обновлений системы
К счастью, "лечение" сломанного механизма сводится к выполнению одной команды:
После ввода пароля суперпользователя будет открыт тот же редактор nano с загруженным в него содержанием файла sudoers .
root ALL=(ALL:ALL) ALL
%admin ALL=(ALL) ALL
%sudo ALL=(ALL:ALL) ALL
Исправьте свои "неверные" записи или приведите файл к исходного значению, после чего нажмите на комбинацию клавиш Ctrl и o. На последующий запрос нажмите y:
Далее, используя клавишу Backspace, удалите в наименовании файла .tmp и на вопрос о перезаписи существующего файла снова нажмите клавишу y:
Как видите, нет необходимости в переустановке системы. К тому же Вы будете избавлены от боязни дальнейшего редактирования файла sudoers, так как всегда сможете вернуться к корректному состоянию его содержания.
я только что установил sudo на свой свежий сервер centos и успешно установил его с помощью команды:
Теперь, когда я набираю sudo , он показывает ошибку:
может ли кто-нибудь сказать мне, что случилось с sudo
Вот мой конфигурационный файл sudo:
2 ответа
Пытаюсь запустить инструментальный тест на AS. застрял с этой ошибкой: java.lang.IllegalStateException: не удалось инициализировать плагин: interface org.mockito.plugins.MockMaker at org.mockito.internal.configuration.plugins.PluginLoader$1.invoke(PluginLoader.java:66) в.
Попробуйте переустановить sudo
если это не сработает, удалите sudo и переустановите с:
Надеюсь, это сработает для вас!
Просто была такая же ошибка. В моем случае пользователь, упомянутый в команде sudo, не существовал в этой системе (мы используем мультисистемные sudoers)
Похожие вопросы:
Я попытался изменить файл /etc/sudoers в AIX7.1, чтобы избежать запроса пароля при использовании sudo, так как у меня нет достаточного права на visudo , поэтому попытался добавить разрешение на.
Я следовал документации о android-studio, однако, когда я выполняю studio.sh, я получил эту ошибку : Плагин com.intellij не удалось инициализировать и будет отключен: null
При создании модели сущности из базы данных она выдает следующую ошибку с помощью VS 2012 Я погуглил его, но не нашел никакого ответа Пожалуйста, помогите мне решить мою проблему ошибка есть.
Пытаюсь запустить инструментальный тест на AS. застрял с этой ошибкой: java.lang.IllegalStateException: не удалось инициализировать плагин: interface org.mockito.plugins.MockMaker at.
Я работаю над CentOS 7, и обычные команды sudo (например, sudo yum update и т. д.) работают нормально. Однако одна из моих команд sudo требует сохранения переменных окружения, поэтому я использовал.
Я использую PythonAnywhere с Postgresql и столкнулся с несколькими проблемами. Когда я пытаюсь сделать что-нибудь, например python manage.py makemigrations , я получаю следующую ошибку : sudo.
Я обращаюсь к своему серверу (centOS 6.9 (hostgator)) через SSH. Когда я использую команду sudo в пределах PuTTY, я получаю следующую ошибку sudo: эффективный uid не равен 0, us sudo установлен.
Я не знаю, в чем проблема. Ошибка не появляется, когда я удаляю import mysql.connector из моего модуля connection.py, но это не решает мою проблему.
Я использую python 3.5.3 и для from scipy import maxentropy Я получаю ошибку: ImportError: не удается импортировать имя 'maxentropy' Пожалуйста, предложите решение этой ошибки. Спасибо
Я должен получить ImportError: не удается импортировать имя 'deque' из 'collections' Как решить эту проблему? Я уже изменил имя модуля (имя модуля- collections.py ), но это не сработало.
Чтобы ответить на этот вопрос, нам нужно понять проблему циклической зависимости.
Чтобы понять циклическую зависимость, я хочу привести перед вами простой пример.
Я думаю, что каждое приложение должно иметь несколько основных блоков следующим образом:
В нашем простом примере также будет три файла
Содержимое файла app.py будет выглядеть следующим образом:
Содержимое файла models.py будет выглядеть следующим образом:
Содержимое файла controllers.py будет выглядеть следующим образом:
Я думаю, что теперь, когда я изложил схему нашего приложения, теперь давайте перейдем к пониманию того, как приложение будет работать.
- Приложение начинается с app.py
- переменная app внутри файла app.py создается в памяти.
- переменная db внутри app.py создается в памяти.
- Теперь, чтобы импортировать auth из файла controllers.py , мы переключаемся на файл ``controllers.py`.
- Мы импортируем Blueprint из flask.
- Чтобы импортировать User , мы переключаемся на файл models.py .
- Теперь внутри файла models.py мы импортируем db (мы можем импортировать его, потому что он был создан на шаге 3)
- И программа продолжается, и так далее, и так далее.
Самым важным шагом импорта в приведенной выше последовательности является step 7 , потому что это вызовет проблему циклической зависимости в нашем приложении всего за мгновение.
Теперь мы попытаемся изменить файл app.py , чтобы ввести проблему циклической зависимости.
Теперь, как разработчик, мы можем подумать, что весь наш импорт должен быть в верхней части файла, разве это не делает ваш код чище. Да, конечно! это действительно делает код чище.
Теперь у нас есть проблема циклической зависимости в нашем приложении. Позвольте мне показать вам, как?
- Наше приложение начинается с файла app.py
- Во-первых, нам нужно импортировать auth_controller из файла controllers.py
- Давайте посетим файл controllers.py и обработаем его.
- Из flask мы импортируем чертеж
- Давайте переключимся на файл models.py , чтобы импортировать User
- Внутри файла models.py мы импортируем db из app (но бд еще не существует.)
Теперь, я думаю, вы поняли суть, проблема, если только что увидели, была примером циклической зависимости. Та же проблема вызывает ImportError в вашем случае.
Решение состояло бы в том, чтобы проверить import statements и поместить их в нужное место. Иногда мы используем форматер кода, и он рефакторирует все операторы импорта в верхней части. Это может быть причиной проблемы для вас.
Я надеюсь, что это может ответить на ваш вопрос!
Я пытаюсь импортировать некоторые переменные из другого файла python , находящегося в том же каталоге, что и другой файл python. У меня есть два файла в том же каталоге , что и ниже: constantvariables.py test.py Вот как выглядит constantvariables.py class CONST(object): FOO = 1234 NAMESPACE =.
Я постоянно получаю код ошибки: from bs4 import BeautifulSoup ImportError: не удается импортировать имя 'BeautifulSoup' из частично инициализированного модуля 'bs4' (скорее всего, из-за циклического импорта ) Не могу найти решение нигде пожалуйста помогите import requests from bs4 import.
Я установил postgres9. далее работаю с ним через командную строку. Моя ОС linux mint 18.
После установки postgres, в ОС создался пользователь postgres, о чем говорит запись в /etc/passwd:
Теперь я хотел бы создать пользователя postgres и работать под ним, а не под суперпользователем. Для этого я зашел в postgres под суперпользователем:
sudo -u postgres psql
и создал нового пользователя, новую БД, дал права пользователю на эту БД:
Далее я выхожу из аккаунта суперпользователя и пытаюсь залогиниться под пользователем user1, но не получается:
Простой 3 комментария
Bacon, а разве в 12 процедура входа под определённым пользователем сильно изменилась? zlodiak, 9 это такое легаси, не вижу не одной причины ее использовать, кроме мазохизмаsudo - запуск команды от имени пользователя ОС.
Пользователь ОС не имеет совсем ничего общего с пользователем в БД. Пользователя ОС вы не создали, ответ sudo закономерен.
Для использования psql sudo не нужен. Нужны настройки pg_hba.conf и сам psql. Например, psql -U user1 database1
Не получается. В соответствии с документацией я добавил в файл/etc/postgresql/9.5/main/pg_hba.conf
строку
local database1 user1 trust
и снова попробовал зайти:
Пользователь ОС не имеет совсем ничего общего с пользователем в БД.
Не совсем так, судя по ошибке "Peer authentication failed", у автора включена как раз аутентификация через пользователя ОС, т.е. PostgreSQL ищет и проверяет пароль пользователя в ОС.
Хотя он вроде пытался изменить это, значит либо ошибка в pg_hba.conf, либо не было reload.
Что не противоречит утверждению
Пользователь ОС не имеет совсем ничего общего с пользователем в БД.
Это разные сущности, peer лишь проверяет совпадение имени. Пароли могут разные. пользователя может не быть на какой-то из сторон и т.д.
hba же необходимо смотреть целиком, от позиции строки в списке правил результат может меняться. Правила проверяются строго по порядку и применяется только первое совпадающее. Так если сначала сделать local all all peer а затем local all all trust - второе правило никогда не сработает.
Читайте также: