Изменено pam.d - невозможно su и sudo [duplicate]

Как редактировать недопустимый файл sudoers?

Вот что происходит:

$ sudo visudo >>> /etc/sudoers: syntax error near line 28 <<< sudo: parse error in /etc/sudoers near line 28 sudo: no valid sudoers sources found, quitting
213
задан 10 October 2017 в 13:32

92 ответа

В современной системе Ubuntu (и многих других дистрибутивах GNU / Linux) исправление поврежденного файла sudoers на самом деле довольно простое и не требует перезагрузки, использования Live CD или физического доступа к машине. [ ! d0]

Чтобы сделать это через SSH, войдите в систему и запустите команду pkexec visudo. Если у вас есть физический доступ к машине, SSH не требуется; просто откройте окно терминала и запустите команду pkexec.

Предполагая, что вам (или другому пользователю) разрешено запускать программы в качестве root с помощью PolicyKit, вы можете ввести свой пароль, а затем он будет выполните visudo как root, и вы можете исправить свой /etc/sudoers.

Если вам нужно отредактировать один из файлов конфигурации в /etc/sudoers.d (что в редких случаях в этой ситуации, но возможно) , используйте pkexec visudo -f /etc/sudoers.d/filename.

Если у вас есть связанная ситуация, когда вам необходимо выполнить дополнительные команды системного администрирования как root, чтобы исправить проблему (также необычные в этом случае, но общие в других), вы можете начать интерактивная корневая оболочка с pkexec bash. Вообще говоря, любая неграфическая команда, которую вы запускали с sudo, может быть запущена с pkexec вместо этого.

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

Если это не сработает - для Например, если нет пользователей, которым разрешено запускать программы как root с помощью PolicyKit, а затем загрузитесь с Live CD с Ubuntu (например, на CD, который вы, вероятно, использовали для установки Ubuntu), и установите файловую систему для установленной системы. Вы можете сделать это, запустив sudo parted -l для просмотра ваших разделов - возможно, есть только один раздел ext4, и это корневая файловая система.

Предположим, что корневая файловая система установленной системы Ubuntu включена / dev / sda1. Затем вы можете установить его с помощью sudo mount /dev/sda1 /mnt. Затем вы можете отредактировать файл sudoers установленной системы с помощью sudo nano -w /mnt/etc/sudoers. Или, что еще лучше, вы можете отредактировать его с помощью

sudo visudo -f /mnt/etc/sudoers

(что не позволит вам сохранить файл sudoers с неправильным синтаксисом).

309
ответ дан 17 July 2018 в 21:18

В современной системе Ubuntu (и многих других дистрибутивах GNU / Linux) исправление поврежденного файла sudoers на самом деле довольно простое и не требует перезагрузки, использования Live CD или физического доступа к машине. [ ! d0]

Чтобы сделать это через SSH, войдите в систему и запустите команду pkexec visudo. Если у вас есть физический доступ к машине, SSH не требуется; просто откройте окно терминала и запустите команду pkexec.

Предполагая, что вам (или другому пользователю) разрешено запускать программы в качестве root с помощью PolicyKit, вы можете ввести свой пароль, а затем он будет выполните visudo как root, и вы можете исправить свой /etc/sudoers.

Если вам нужно отредактировать один из файлов конфигурации в /etc/sudoers.d (что в редких случаях в этой ситуации, но возможно) , используйте pkexec visudo -f /etc/sudoers.d/filename.

Если у вас есть связанная ситуация, когда вам необходимо выполнить дополнительные команды системного администрирования как root, чтобы исправить проблему (также необычные в этом случае, но общие в других), вы можете начать интерактивная корневая оболочка с pkexec bash. Вообще говоря, любая неграфическая команда, которую вы запускали с sudo, может быть запущена с pkexec вместо этого.

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

Если это не сработает - для Например, если нет пользователей, которым разрешено запускать программы как root с помощью PolicyKit, а затем загрузитесь с Live CD с Ubuntu (например, на CD, который вы, вероятно, использовали для установки Ubuntu), и установите файловую систему для установленной системы. Вы можете сделать это, запустив sudo parted -l для просмотра ваших разделов - возможно, есть только один раздел ext4, и это корневая файловая система.

Предположим, что корневая файловая система установленной системы Ubuntu включена / dev / sda1. Затем вы можете установить его с помощью sudo mount /dev/sda1 /mnt. Затем вы можете отредактировать файл sudoers установленной системы с помощью sudo nano -w /mnt/etc/sudoers. Или, что еще лучше, вы можете отредактировать его с помощью

sudo visudo -f /mnt/etc/sudoers

(что не позволит вам сохранить файл sudoers с неправильным синтаксисом).

309
ответ дан 23 July 2018 в 21:58

В современной системе Ubuntu (и многих других дистрибутивах GNU / Linux) исправление поврежденного файла sudoers на самом деле довольно простое и не требует перезагрузки, использования Live CD или физического доступа к машине.

Чтобы сделать это через SSH, войдите в систему и запустите команду pkexec visudo. Если у вас есть физический доступ к машине, SSH не требуется; просто запустите окно терминала и запустите команду pkexec.

Предполагая, что вам (или другому пользователю) разрешено запускать программы как root с помощью PolicyKit, вы можете ввести свой пароль, а затем он будет запустите visudo как root, и вы можете исправить свой /etc/sudoers.

Если вам нужно отредактировать один из файлов конфигурации в /etc/sudoers.d (что в редких случаях в этой ситуации, но возможно) , используйте pkexec visudo -f /etc/sudoers.d/filename.

Если у вас есть связанная ситуация, когда вам нужно выполнить дополнительные команды системного администрирования как root, чтобы исправить проблему (также необычные в этом случае, но общие в других), вы можете начать интерактивная корневая оболочка с pkexec bash. Вообще говоря, любая неграфическая команда, которую вы запускали с sudo, может быть запущена с pkexec.

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

Если это не сработает - для Например, если нет пользователей, которым разрешено запускать программы как root с помощью PolicyKit, а затем загрузитесь с Live CD с Ubuntu (например, на CD, который вы, вероятно, использовали для установки Ubuntu), и установите файловую систему для установленной системы. Вы можете сделать это, запустив sudo parted -l для просмотра ваших разделов - возможно, есть только один раздел ext4, и это корневая файловая система.

Предположим, что корневая файловая система установленной Ubuntu включена / dev / sda1. Затем вы можете установить его с помощью sudo mount /dev/sda1 /mnt. Затем вы можете отредактировать файл sudoers установленной системы с помощью sudo nano -w /mnt/etc/sudoers. Или, что еще лучше, вы можете отредактировать его с помощью

sudo visudo -f /mnt/etc/sudoers

(что не позволит вам сохранить файл sudoers с неправильным синтаксисом).

309
ответ дан 31 July 2018 в 19:29

В современной системе Ubuntu (и многих других дистрибутивах GNU / Linux) исправление поврежденного файла sudoers на самом деле довольно простое и не требует перезагрузки, использования Live CD или физического доступа к машине.

Чтобы сделать это через SSH, войдите в систему и запустите команду pkexec visudo. Если у вас есть физический доступ к машине, SSH не требуется; просто запустите окно терминала и запустите команду pkexec.

Предполагая, что вам (или другому пользователю) разрешено запускать программы как root с помощью PolicyKit, вы можете ввести свой пароль, а затем он будет запустите visudo как root, и вы можете исправить свой /etc/sudoers.

Если вам нужно отредактировать один из файлов конфигурации в /etc/sudoers.d (что в редких случаях в этой ситуации, но возможно) , используйте pkexec visudo -f /etc/sudoers.d/filename.

Если у вас есть связанная ситуация, когда вам нужно выполнить дополнительные команды системного администрирования как root, чтобы исправить проблему (также необычные в этом случае, но общие в других), вы можете начать интерактивная корневая оболочка с pkexec bash. Вообще говоря, любая неграфическая команда, которую вы запускали с sudo, может быть запущена с pkexec.

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

Если это не сработает - для Например, если нет пользователей, которым разрешено запускать программы как root с помощью PolicyKit, а затем загрузитесь с Live CD с Ubuntu (например, на CD, который вы, вероятно, использовали для установки Ubuntu), и установите файловую систему для установленной системы. Вы можете сделать это, запустив sudo parted -l для просмотра ваших разделов - возможно, есть только один раздел ext4, и это корневая файловая система.

Предположим, что корневая файловая система установленной Ubuntu включена / dev / sda1. Затем вы можете установить его с помощью sudo mount /dev/sda1 /mnt. Затем вы можете отредактировать файл sudoers установленной системы с помощью sudo nano -w /mnt/etc/sudoers. Или, что еще лучше, вы можете отредактировать его с помощью

sudo visudo -f /mnt/etc/sudoers

(что не позволит вам сохранить файл sudoers с неправильным синтаксисом).

309
ответ дан 2 August 2018 в 12:32

В современной системе Ubuntu (и многих других дистрибутивах GNU / Linux) исправление поврежденного файла sudoers на самом деле довольно простое и не требует перезагрузки, использования Live CD или физического доступа к машине.

Чтобы сделать это через SSH, войдите в систему и запустите команду pkexec visudo. Если у вас есть физический доступ к машине, SSH не требуется; просто запустите окно терминала и запустите команду pkexec.

Предполагая, что вам (или другому пользователю) разрешено запускать программы как root с помощью PolicyKit, вы можете ввести свой пароль, а затем он будет запустите visudo как root, и вы можете исправить свой /etc/sudoers.

Если вам нужно отредактировать один из файлов конфигурации в /etc/sudoers.d (что в редких случаях в этой ситуации, но возможно) , используйте pkexec visudo -f /etc/sudoers.d/filename.

Если у вас есть связанная ситуация, когда вам нужно выполнить дополнительные команды системного администрирования как root, чтобы исправить проблему (также необычные в этом случае, но общие в других), вы можете начать интерактивная корневая оболочка с pkexec bash. Вообще говоря, любая неграфическая команда, которую вы запускали с sudo, может быть запущена с pkexec.

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

Если это не сработает - для Например, если нет пользователей, которым разрешено запускать программы как root с помощью PolicyKit, а затем загрузитесь с Live CD с Ubuntu (например, на CD, который вы, вероятно, использовали для установки Ubuntu), и установите файловую систему для установленной системы. Вы можете сделать это, запустив sudo parted -l для просмотра ваших разделов - возможно, есть только один раздел ext4, и это корневая файловая система.

Предположим, что корневая файловая система установленной Ubuntu включена / dev / sda1. Затем вы можете установить его с помощью sudo mount /dev/sda1 /mnt. Затем вы можете отредактировать файл sudoers установленной системы с помощью sudo nano -w /mnt/etc/sudoers. Или, что еще лучше, вы можете отредактировать его с помощью

sudo visudo -f /mnt/etc/sudoers

(что не позволит вам сохранить файл sudoers с неправильным синтаксисом).

309
ответ дан 3 August 2018 в 16:53

В современной системе Ubuntu (и многих других дистрибутивах GNU / Linux) исправление поврежденного файла sudoers на самом деле довольно простое и не требует перезагрузки, использования Live CD или физического доступа к машине.

Чтобы сделать это через SSH, войдите в систему и запустите команду pkexec visudo. Если у вас есть физический доступ к машине, SSH не требуется; просто запустите окно терминала и запустите команду pkexec.

Предполагая, что вам (или другому пользователю) разрешено запускать программы как root с помощью PolicyKit, вы можете ввести свой пароль, а затем он будет запустите visudo как root, и вы можете исправить свой /etc/sudoers.

Если вам нужно отредактировать один из файлов конфигурации в /etc/sudoers.d (что в редких случаях в этой ситуации, но возможно) , используйте pkexec visudo -f /etc/sudoers.d/filename.

Если у вас есть связанная ситуация, когда вам нужно выполнить дополнительные команды системного администрирования как root, чтобы исправить проблему (также необычные в этом случае, но общие в других), вы можете начать интерактивная корневая оболочка с pkexec bash. Вообще говоря, любая неграфическая команда, которую вы запускали с sudo, может быть запущена с pkexec.

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

Если это не сработает - для Например, если нет пользователей, которым разрешено запускать программы как root с помощью PolicyKit, а затем загрузитесь с Live CD с Ubuntu (например, на CD, который вы, вероятно, использовали для установки Ubuntu), и установите файловую систему для установленной системы. Вы можете сделать это, запустив sudo parted -l для просмотра ваших разделов - возможно, есть только один раздел ext4, и это корневая файловая система.

Предположим, что корневая файловая система установленной Ubuntu включена / dev / sda1. Затем вы можете установить его с помощью sudo mount /dev/sda1 /mnt. Затем вы можете отредактировать файл sudoers установленной системы с помощью sudo nano -w /mnt/etc/sudoers. Или, что еще лучше, вы можете отредактировать его с помощью

sudo visudo -f /mnt/etc/sudoers

(что не позволит вам сохранить файл sudoers с неправильным синтаксисом).

309
ответ дан 5 August 2018 в 02:13

В современной системе Ubuntu (и многих других дистрибутивах GNU / Linux) исправление поврежденного файла sudoers на самом деле довольно простое и не требует перезагрузки, использования Live CD или физического доступа к машине.

Чтобы сделать это через SSH, войдите в систему и запустите команду pkexec visudo. Если у вас есть физический доступ к машине, SSH не требуется; просто запустите окно терминала и запустите команду pkexec.

Предполагая, что вам (или другому пользователю) разрешено запускать программы как root с помощью PolicyKit, вы можете ввести свой пароль, а затем он будет запустите visudo как root, и вы можете исправить свой /etc/sudoers.

Если вам нужно отредактировать один из файлов конфигурации в /etc/sudoers.d (что в редких случаях в этой ситуации, но возможно) , используйте pkexec visudo -f /etc/sudoers.d/filename.

Если у вас есть связанная ситуация, когда вам нужно выполнить дополнительные команды системного администрирования как root, чтобы исправить проблему (также необычные в этом случае, но общие в других), вы можете начать интерактивная корневая оболочка с pkexec bash. Вообще говоря, любая неграфическая команда, которую вы запускали с sudo, может быть запущена с pkexec.

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

Если это не сработает - для Например, если нет пользователей, которым разрешено запускать программы как root с помощью PolicyKit, а затем загрузитесь с Live CD с Ubuntu (например, на CD, который вы, вероятно, использовали для установки Ubuntu), и установите файловую систему для установленной системы. Вы можете сделать это, запустив sudo parted -l для просмотра ваших разделов - возможно, есть только один раздел ext4, и это корневая файловая система.

Предположим, что корневая файловая система установленной Ubuntu включена / dev / sda1. Затем вы можете установить его с помощью sudo mount /dev/sda1 /mnt. Затем вы можете отредактировать файл sudoers установленной системы с помощью sudo nano -w /mnt/etc/sudoers. Или, что еще лучше, вы можете отредактировать его с помощью

sudo visudo -f /mnt/etc/sudoers

(что не позволит вам сохранить файл sudoers с неправильным синтаксисом).

309
ответ дан 6 August 2018 в 18:53

В современной системе Ubuntu (и многих других дистрибутивах GNU / Linux) исправление поврежденного файла sudoers на самом деле довольно простое и не требует перезагрузки, использования Live CD или физического доступа к машине.

Чтобы сделать это через SSH, войдите в систему и запустите команду pkexec visudo. Если у вас есть физический доступ к машине, SSH не требуется; просто запустите окно терминала и запустите команду pkexec.

Предполагая, что вам (или другому пользователю) разрешено запускать программы как root с помощью PolicyKit, вы можете ввести свой пароль, а затем он будет запустите visudo как root, и вы можете исправить свой /etc/sudoers.

Если вам нужно отредактировать один из файлов конфигурации в /etc/sudoers.d (что в редких случаях в этой ситуации, но возможно) , используйте pkexec visudo -f /etc/sudoers.d/filename.

Если у вас есть связанная ситуация, когда вам нужно выполнить дополнительные команды системного администрирования как root, чтобы исправить проблему (также необычные в этом случае, но общие в других), вы можете начать интерактивная корневая оболочка с pkexec bash. Вообще говоря, любая неграфическая команда, которую вы запускали с sudo, может быть запущена с pkexec.

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

Если это не сработает - для Например, если нет пользователей, которым разрешено запускать программы как root с помощью PolicyKit, а затем загрузитесь с Live CD с Ubuntu (например, на CD, который вы, вероятно, использовали для установки Ubuntu), и установите файловую систему для установленной системы. Вы можете сделать это, запустив sudo parted -l для просмотра ваших разделов - возможно, есть только один раздел ext4, и это корневая файловая система.

Предположим, что корневая файловая система установленной Ubuntu включена / dev / sda1. Затем вы можете установить его с помощью sudo mount /dev/sda1 /mnt. Затем вы можете отредактировать файл sudoers установленной системы с помощью sudo nano -w /mnt/etc/sudoers. Или, что еще лучше, вы можете отредактировать его с помощью

sudo visudo -f /mnt/etc/sudoers

(что не позволит вам сохранить файл sudoers с неправильным синтаксисом).

310
ответ дан 8 August 2018 в 23:15

В современной системе Ubuntu (и многих других дистрибутивах GNU / Linux) исправление поврежденного файла sudoers на самом деле довольно простое и не требует перезагрузки, использования Live CD или физического доступа к машине.

Чтобы сделать это через SSH, войдите в систему и запустите команду pkexec visudo. Если у вас есть физический доступ к машине, SSH не требуется; просто запустите окно терминала и запустите команду pkexec.

Предполагая, что вам (или другому пользователю) разрешено запускать программы как root с помощью PolicyKit, вы можете ввести свой пароль, а затем он будет запустите visudo как root, и вы можете исправить свой /etc/sudoers.

Если вам нужно отредактировать один из файлов конфигурации в /etc/sudoers.d (что в редких случаях в этой ситуации, но возможно) , используйте pkexec visudo -f /etc/sudoers.d/filename.

Если у вас есть связанная ситуация, когда вам нужно выполнить дополнительные команды системного администрирования как root, чтобы исправить проблему (также необычные в этом случае, но общие в других), вы можете начать интерактивная корневая оболочка с pkexec bash. Вообще говоря, любая неграфическая команда, которую вы запускали с sudo, может быть запущена с pkexec.

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

Если это не сработает - для Например, если нет пользователей, которым разрешено запускать программы как root с помощью PolicyKit, а затем загрузитесь с Live CD с Ubuntu (например, на CD, который вы, вероятно, использовали для установки Ubuntu), и установите файловую систему для установленной системы. Вы можете сделать это, запустив sudo parted -l для просмотра ваших разделов - возможно, есть только один раздел ext4, и это корневая файловая система.

Предположим, что корневая файловая система установленной Ubuntu включена / dev / sda1. Затем вы можете установить его с помощью sudo mount /dev/sda1 /mnt. Затем вы можете отредактировать файл sudoers установленной системы с помощью sudo nano -w /mnt/etc/sudoers. Или, что еще лучше, вы можете отредактировать его с помощью

sudo visudo -f /mnt/etc/sudoers

(что не позволит вам сохранить файл sudoers с неправильным синтаксисом).

311
ответ дан 14 August 2018 в 13:15
  • 1
    pkexec / usr / sbin / visudo работал над debian 7 – marinara 5 March 2014 в 07:33
  • 2
    Не могли ли они просто загрузиться в режим восстановления? – Seth♦ 11 October 2014 в 21:43
  • 3
    СВЯТАЯ КОРОВА! Большое спасибо! Спасла мой бекон. Добавлен файл, как предлагается в каталог etc / sudoers.d /. ИСПОЛЬЗОВАНИЕ РЕГУЛЯРНОГО ТЕКСТОВОГО РЕДАКТОРА (D-O-N-T__D-O__T-H-A-T !!!). Потеряли все возможности делать повышенные привилегии, ВКЛЮЧАЯ, редактируя нарушительный файл. Это помогло отредактировать файл. Странно, однако, мне пришлось сначала отредактировать файл / etc / sudoers, затем он обнаружил ошибки в другом файле и открыл это для меня. EVEN WEIRDER, директива в файле / etc / sudoers 'inlcudedir /etc/sudoers.d' была закомментирована, и она по-прежнему включает ее. – Dennis 5 April 2015 в 06:15
  • 4
    @Dennis Несколько смутно, директивы #include в файлах sudoers обрабатываются специально; ведущий # не приводит к тому, что остальная часть строки будет интерпретироваться как комментарий в этом случае. Поскольку man sudoers говорит: «Знак фунта ('#') используется для указания комментария (если он не является частью директивы #include или если ...». См. Также visudo: #includedir sudoers.d (заархивировано из lzone.de/blog ). – Eliah Kagan 5 April 2015 в 06:49
  • 5
    Мой пользователь sudoer, но я получил эту ошибку: Ошибка выполнения команды как другого пользователя: не разрешено – SuB 30 October 2016 в 14:05
  • 6
    – Juha Untinen 14 August 2018 в 12:30

Вы также можете войти в систему как root на консоли tty с Ctrl + Fn (Fn от 1 до 6) и запустить visudo.

2
ответ дан 17 July 2018 в 21:18

Я нашел ошибку. Он находится в двух последних строках файла /etc/sudoers по умолчанию. Удалите следующие записи из конца файла / etc / sudoers с помощью visudo.

#includedir /etc/sudoers.d
0
ответ дан 17 July 2018 в 21:18
pkexec visudo

, а затем верните свои ошибки

2
ответ дан 17 July 2018 в 21:18

запустить режим восстановления, тогда введите это

chown -R root:root /etc/sudoers.d chmod u=rwx,g=rx,o=rx /etc/sudoers.d/ chmod u=r,g=r,o= /etc/sudoers.d/*

только группа и корень пользователя должны прочитать privelege

3
ответ дан 17 July 2018 в 21:18

Вы можете редактировать свои записи загрузки в grub, а также.

просто перезагрузите ваш компьютер, и ждать жратвы, чтобы показать. Затем нажать клавишу "e" на "убунту" запись для редактирования.

найдите строку с "линукс =" или "ядра =" и просто добавить "один" на конце этой линии.

нажмите клавишу F10 для загрузки этого временно изменена загрузочная запись. Это даст вам раковины (без GUI) с root права и вы можете редактировать файлами sudoers с s.й. как нано /etc/пользователям использовать sudo? вернулся в свое прежнее состояние.

затем перезагрузить и готово.

2
ответ дан 17 July 2018 в 21:18

, если кто-то еще, как я, не установил pkexec или не смог запустить vi, visudo, nano или любой другой редактор для изменения файла sudoers, вы можете быть уверены в этом процессе. Я был сохранен с этим: [ ! d0] перезагрузите клавишу сдвига при загрузке, чтобы иметь возможность для режима восстановления (введите его) введите в командной строке как root (вторая последняя опция в моем меню grub), перезагрузите устройство перезагрузки для rw и примените exec для пользователя, и редактировать файл mount -n -o remount,rw / chmod u+x /etc/sudoers nano /etc/sudoers

исправить эту ошибку и быть счастливой:)

9
ответ дан 17 July 2018 в 21:18

Если u перепутал ваш файл sudoers. Вам нужно:

Перезагрузиться в режим восстановления (нажмите escape во время загрузки, выберите режим режима восстановления на экране grub) Выберите «Включить сетевое взаимодействие», (если вы не используете вашу файловую систему как доступную только для чтения, кто знал) Chosee 'Drop to root shell', запустите visudo, исправьте свой файл. Перезагрузитесь с помощью обычной опции grub

source: http://mario.net.au/content/recover-etcsudoers-ubuntu-1204

5
ответ дан 17 July 2018 в 21:18

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

42
ответ дан 17 July 2018 в 21:18

Нет ничего неправильного #include sudoer.d удаление #include sudoer.d не имеет никакого значения.

Но, пожалуйста, убедитесь, что у вас нет синтаксических ошибок. У меня была одна и та же проблема, но я потратил несколько часов на исправление и выяснил, что это синтаксические ошибки.

Например, скажите, что ваше имя пользователя: dolly Я использовал следующее, что неверно

dolly ALL = (ALL) ALL NO PASSWD: ALL

правильный синтаксис

dolly ALL = (ALL) ALL //give permission to everything, not good

или

dolly ALL=(ALL) NOPASSWD:/usr/bin/thurderbird //good, give specific permission

надеюсь, что это поможет

5
ответ дан 17 July 2018 в 21:18

Вы также можете войти в систему как root на консоли tty с Ctrl + Fn (Fn от 1 до 6) и запустить visudo.

2
ответ дан 23 July 2018 в 21:58

Я нашел ошибку. Он находится в двух последних строках файла /etc/sudoers по умолчанию. Удалите следующие записи из конца файла / etc / sudoers с помощью visudo.

#includedir /etc/sudoers.d
0
ответ дан 23 July 2018 в 21:58
  • 1
    Это похоже на связанную, но отличную от этого ситуацию. В этой ситуации проблема заключается не в том, что в /etc/sudoers.d есть плохие файлы (или неправильные разрешения), но /etc/sudoers сам был поврежден. – Eliah Kagan 29 May 2012 в 11:32
pkexec visudo

, а затем верните свои ошибки

2
ответ дан 23 July 2018 в 21:58
  • 1
    не нужно использовать pkexec – Braiam 1 January 2014 в 18:01
  • 2
    @Braiam visudo должен быть запущен как root. Если sudo не работает, иногда выполняется pkexec. Это объясняется моим более ранним ответом ... но это правильный ответ, visudo сам по себе (когда он не запускается как root) не будет работать, и может быть значение в правильных кратких ответах даже когда их рекомендации значительно перекрываются с другими ответами. Конечно, если перейти в режим восстановления, это корневая оболочка, и тогда для команд, подобных pkexec, не нужны ни sudo, ни visudo. Возможно, это то, что вы имеете в виду ... – Eliah Kagan 29 March 2014 в 11:30

запустить режим восстановления, тогда введите это

chown -R root:root /etc/sudoers.d chmod u=rwx,g=rx,o=rx /etc/sudoers.d/ chmod u=r,g=r,o= /etc/sudoers.d/*

только группа и корень пользователя должны прочитать privelege

3
ответ дан 23 July 2018 в 21:58

Вы также можете редактировать свою загрузочную запись в grub.

Просто перезагрузите компьютер и дождитесь появления grub. Затем нажмите «e» в записи «Ubuntu», чтобы отредактировать ее.

Найдите строку с «linux =» или «kernel =» и просто добавьте «сингл» в конец этой строки.

Затем нажмите F10, чтобы загрузить эту временно измененную загрузочную запись. Это даст вам оболочку (без GUI) с правами root, и вы можете редактировать файл sudoers с помощью s.th. например, nano / etc / sudoers вернуться к предыдущему состоянию.

Затем перезагрузиться и выполнить.

2
ответ дан 23 July 2018 в 21:58

, если кто-то еще, как я, не установил pkexec или не смог запустить vi, visudo, nano или любой другой редактор для изменения файла sudoers, вы можете быть уверены в этом процессе. Я был сохранен с этим: [ ! d0] перезагрузите клавишу сдвига при загрузке, чтобы иметь возможность для режима восстановления (введите его) введите в командной строке как root (вторая последняя опция в моем меню grub), перезагрузите устройство перезагрузки для rw и примените exec для пользователя, и редактировать файл mount -n -o remount,rw / chmod u+x /etc/sudoers nano /etc/sudoers

исправить эту ошибку и быть счастливой:)

9
ответ дан 23 July 2018 в 21:58
  • 1
    Я заметил, что удаление ведущего # из #includedir вызывает синтаксические ошибки, # является частью директивы, по крайней мере, на Ubuntu 12.10. – SAFX 5 April 2013 в 07:46
  • 2
    Хотя решение pkexec, предложенное @ eliah-kagan, кажется более простым, оно более универсально. На моей машине оказалось, что нет pkexec, и, конечно, я не смог установить его, потому что sudo apt-get install pkexec как-то не работал. – running.t 15 October 2015 в 17:06
  • 3
    Это просто избавило меня от головной боли. Благодаря тонну :) – Nitroware 16 July 2017 в 21:29
  • 4
    У меня нет visudo. Поэтому я сделал pkexec vim. Затем он отображает список пользователей и запрашивает пароль. Когда я предоставляю пароль, он выдает ошибку как " Ошибка при выполнении команды в качестве другого пользователя: не разрешено & quot ;. Пожалуйста помоги – Shyamkkhadka 24 May 2018 в 08:48

если вы испортили свой файлами sudoers.Вам потребуется:

перезагрузить в режим восстановления (нажмите побег во время загрузки, выбираем режим восстановления на экране жратвы) выберите 'активировать опцию сеть' (если Вы не ваша файловая система будет смонтирована только для чтения. кто знал) выбрали 'капли для корня параметр Шелл запустить visudo, чтобы исправить ваши перезагрузите файл с нормальным вариантом жратвы

источник :- http://mario.net.au/content/recover-etcsudoers-ubuntu-1204

5
ответ дан 23 July 2018 в 21:58
  • 1
    Привет, удаляет ли iptables, файлы существующей системы? – Shyamkkhadka 24 May 2018 в 10:48

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

42
ответ дан 23 July 2018 в 21:58
  • 1
    задним числом 20/20 – code_monk 9 January 2015 в 05:57
  • 2
    Это не предотвратит катастрофу. Достаточно легко оправдать себя. – Joshua 6 October 2015 в 01:02
  • 3
    Может ли visudo использоваться скриптами? Если да, то как? – Lukas 7 July 2016 в 18:01
  • 4
    У меня нет visudo. Поэтому я сделал pkexec vim. Затем он отображает список пользователей и запрашивает пароль. Когда я предоставляю пароль, он выдает ошибку как " Ошибка при выполнении команды в качестве другого пользователя: не разрешено & quot ;. Пожалуйста помоги – Shyamkkhadka 24 May 2018 в 08:48

Нет ничего неправильного #include sudoer.d удаление #include sudoer.d не имеет никакого значения.

Но, пожалуйста, убедитесь, что у вас нет синтаксических ошибок. У меня была одна и та же проблема, но я потратил несколько часов на исправление и выяснил, что это синтаксические ошибки.

Например, скажите, что ваше имя пользователя: dolly Я использовал следующее, что неверно

dolly ALL = (ALL) ALL NO PASSWD: ALL

правильный синтаксис

dolly ALL = (ALL) ALL //give permission to everything, not good

или

dolly ALL=(ALL) NOPASSWD:/usr/bin/thurderbird //good, give specific permission

надеюсь, что это поможет

5
ответ дан 23 July 2018 в 21:58
  • 1
    Лучший подход, чем убедиться, что у вас нет синтаксических ошибок, - всегда использовать visudo при редактировании этих файлов, что гарантирует, что у вас нет синтаксических ошибок для вас, прежде чем он изменяет файл. visudo предназначен не только для редактирования /etc/sudoers - он также будет создавать и редактировать файлы в /etc/sudoers.d. Он также будет работать с любым текстовым редактором, который вы хотите. Подробнее см. В manpage . – Eliah Kagan 3 July 2012 в 05:12
  • 2
    Что касается специального разрешения, обратите внимание, что это полезно только для очень простых команд / приложений, потому что любое достаточно сложное приложение (в том числе thunderbird, которое никогда не должно запускаться как root в любом случае) будет эффективно предоставлять пользователю полный доступ к системе при запуске как корень. Даже кажущаяся простая функциональность открывает дверь для полного доступа root. Например, пользователь, который может запускать программу, которая может сохранить файл в произвольном месте с правами root, может получить полный доступ к корневому каталогу (они могут установить свои собственные /etc/sudoers, или если ограничения синтаксиса предотвращают это, они могут установить свои собственные /etc/crontab). – Eliah Kagan 3 July 2012 в 05:16

запустите режим восстановления, затем введите это

chown -R root:root /etc/sudoers.d
chmod u=rwx,g=rx,o=rx /etc/sudoers.d/
chmod u=r,g=r,o= /etc/sudoers.d/*

, только группа и корень пользователя должны были прочитать privelege

3
ответ дан 31 July 2018 в 19:29

Вы можете отредактировать свою загрузочную запись и в grub.

Просто перезагрузите компьютер и дождитесь появления grub. Затем нажмите «e» в записи «Ubuntu», чтобы отредактировать ее.

Найдите строку с «linux =» или «kernel =» и просто добавьте «сингл» в конец этой строки.

Затем нажмите F10, чтобы загрузить эту временно измененную загрузочную запись. Это даст вам оболочку (без GUI) с правами root, и вы можете редактировать файл sudoers с помощью s.th. например, nano / etc / sudoers вернуться к предыдущему состоянию.

Затем перезагрузитесь и сделайте это.

2
ответ дан 31 July 2018 в 19:29

, если кто-то еще, как я, не установил pkexec или не смог запустить vi, visudo, nano или любой другой редактор для изменения файла sudoers, вы можете быть уверены в этом процессе. Я был сохранен с этим:

  • reboot
  • удерживать клавишу Shift во время загрузки, чтобы иметь опцию для режима восстановления (введите его)
  • введите командную строку как root (вторая последняя опция в моем меню grub)
  • загрузочное устройство remount для rw и применить exec для пользователя и отредактировать файл
    mount -n -o remount,rw /
    chmod u+x /etc/sudoers
    nano /etc/sudoers
    

исправить эту ошибку и будьте счастливы:)

19
ответ дан 31 July 2018 в 19:29

Другие вопросы по тегам:

Похожие вопросы: