'sudo' не работает после изменения разрешений каталога '/ usr'

Недавно мне пришлось изменить права доступа к папке папки /usr. Теперь все sudo не работает. Если я попытаюсь обновить свою систему с помощью этой команды:

sudo apt-get update

Я получаю следующее сообщение:

sudo: /usr/lib/sudo/sudoers.so must be only be writable by owner
sudo: fatal error, unable to load plugins

Поэтому я попытался изменить права доступа к папке, открыв Nautilus как root используя эту команду

gksudo nautilus

Но ничего не произошло. Наутилус не открылся. Это чрезвычайная ситуация, так как все sudo не работают. когда я попытался найти решение из Google, многие предлагали переустановку. Я не предпочитаю переустановку. так же есть ли другое решение?

5
задан 29 May 2012 в 11:18

20 ответов

В Ubuntu на самом деле созданы два механизма для выполнения административных задач. sudo является одним из них, и он и его графические интерфейсы (например, gksu и gksudo) не будут работать, пока вы не устраните проблему с разрешениями.

Другим механизмом является sudo .

Команда pkexec будет запускать любую (неграфическую) команду в качестве [ f8] (при условии, что пользователь, вызывающий его, является администратором системы). pkexec способен выполнять графические команды (например, nautilus) в качестве root, но это довольно нетривиально, так как вам нужно настроить для них файлы конфигурации, описывающие, как они должны запускаться, и что они должно быть разрешено делать. Поэтому вам лучше использовать командную строку для устранения этой проблемы ... по крайней мере до такой степени, когда sudo работает снова. (Затем вы можете запустить gksu nautilus, чтобы получить браузер файла root, если вам удобнее использовать это для рекурсивного редактирования прав доступа к файлам.)

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

sudo: /usr/lib/sudo/sudoers.so must be only be writable by owner

Поэтому удалите group и other права записи (не изменяя разрешения на запись owner для этого файла:

pkexec chmod go-w /usr/lib/sudo/sudoers.so

Затем вы может видеть, работает ли sudo (запустив некоторую безобидную команду, например sudo ls).

Если вам нужно выполнить другие операции с разрешениями файлов из командной строки с помощью chmod, см. pkexec .

(Кстати, вот еще одна связанная с этим ситуация, когда это удобно знать о pkexec.)

Если у вас возникли проблемы с получением , чтобы работать на это, пожалуйста, не стесняйтесь комментировать здесь, и я постараюсь оказать дальнейшую помощь. Но вы должны знать, что даже если этот метод не работает, вам не придется переустанавливать Ubuntu.

Но вы должны знать, что даже если этот метод не работает, вы не должны переустановить Ubuntu.

Или как третий вариант (как вот еще одна связанная с этим ситуация, когда это удобно знать о pkexec , имеет gksu ), вы можете использовать режим восстановления.

7
ответ дан 25 May 2018 в 10:51
  • 1
    Спасибо! команда pkexec выполнила работу, и sudo снова работает, спасибо! – Bharat 29 May 2012 в 17:43

установите «Пользователи и группы», используя this , перейдите в «Управление группами» и добавьте вас в sudo группу

7
ответ дан 31 July 2018 в 12:30

установите «Пользователи и группы», используя this , перейдите в «Управление группами» и добавьте вас в sudo группу

7
ответ дан 2 August 2018 в 00:52

установите «Пользователи и группы», используя this , перейдите в «Управление группами» и добавьте вас в sudo группу

7
ответ дан 4 August 2018 в 16:23

установите «Пользователи и группы», используя this , перейдите в «Управление группами» и добавьте вас в sudo группу

7
ответ дан 6 August 2018 в 01:02

установите «Пользователи и группы», используя this , перейдите в «Управление группами» и добавьте вас в sudo группу

7
ответ дан 7 August 2018 в 18:29

установите «Пользователи и группы», используя this , перейдите в «Управление группами» и добавьте вас в sudo группу

7
ответ дан 10 August 2018 в 07:10

установите «Пользователи и группы», используя this , перейдите в «Управление группами» и добавьте вас в sudo группу

7
ответ дан 15 August 2018 в 19:09
  • 1
    Это не поможет. Проблема заключается не в том, что исходный плакат не находится в группе sudo. Проблема в том, что sudo отказывается работать для любого пользователя, поскольку видит, что он сам настроен небезопасно (некоторые из его собственных файлов доступны для всех пользователей). – Eliah Kagan 29 May 2012 в 11:08
  • 2
    Спасибо! команда pkexec выполнила работу, и sudo снова работает, спасибо! – Bharat 29 May 2012 в 17:43

На самом деле в Ubuntu установлены два механизма для выполнения административных задач. sudo является одним из них, и он и его графические интерфейсы (например, gksu и gksudo ) не собираются работать пока вы не устраните проблему с разрешениями.

Другим механизмом является PolicyKit . В зависимости от того, что вы сделали с разрешениями на файлы, вполне вероятно, что вы все еще можете восстановить с помощью PolicyKit для запуска команд как root.

Команда pkexec будет запущена любая (неграфическая) команда как root (при условии, что пользователь, вызывающий ее, является администратором системы). pkexec способен выполнять графические команды (например, nautilus) в качестве root, но это довольно нетривиально, так как вам нужно настроить для них файлы конфигурации, описывающие, как они должны запускаться, и что они должно быть разрешено делать. Поэтому вам лучше использовать командную строку для устранения этой проблемы ... по крайней мере до такой степени, когда sudo работает снова. (Затем вы можете запустить gksu nautilus, чтобы получить браузер файла root, если вам удобнее использовать это для рекурсивного редактирования прав доступа к файлам.)

Я не знаю точно, что вы сделали с вашим разрешений, поэтому мне сложно дать вам определенную команду pkexec для запуска, чтобы устранить проблему. Но вы можете исправить конкретную проблему, с которой жалуется sudo. В нем написано:

sudo: /usr/lib/sudo/sudoers.so must be only be writable by owner

Так что удалите group и other права на запись (пока не изменяете разрешения для записи owner) для этого файла:

pkexec chmod go-w /usr/lib/sudo/sudoers.so

Затем вы может видеть, работает ли sudo (запустив некоторую безобидную команду, например sudo ls).

Если вам нужно выполнить другие операции с разрешениями файлов из командной строки с помощью chmod, см. man chmod .

(Кстати, вот еще одна, связанная с этим ситуация, когда удобно знать о pkexec .)

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

Вместо этого вы можете исправить эту проблему с живого CD / DVD-диска Ubuntu или с живой USB-системы, поскольку живая система будет работать - sudo будет работать над ней - и вы можете смонтировать свой раздел Ubuntu и изменить права доступа таким образом.

Или как третий вариант (в качестве forestpiskie предложил ), вы можете использовать режим восстановления .

7
ответ дан 18 August 2018 в 21:57
  • 1
    Спасибо! команда pkexec выполнила работу, и sudo снова работает, спасибо! – Bharat 29 May 2012 в 17:43

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

Перезагрузка - выберите второй элемент из меню, чтобы перейти в режим восстановления.

Недавно я для изменения прав доступа к папке / usr

Что потребовало изменить разрешения для всей папки / usr?

1
ответ дан 25 May 2018 в 10:51
  • 1
    " установление разрешения на то, что они были " - Я изменил их и не знаю, кто они! – sangharsh 11 October 2015 в 13:05

установите «Пользователи и группы», используя это, перейдите в «Управление группами» и добавьте вас в sudo группу

0
ответ дан 25 May 2018 в 10:51
  • 1
    Это не поможет. Проблема заключается не в том, что исходный плакат не находится в группе sudo. Проблема в том, что sudo отказывается работать для любого пользователя, поскольку видит, что он сам настроен небезопасно (некоторые из его собственных файлов доступны для всех пользователей). – Eliah Kagan 29 May 2012 в 11:08

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

Перезагрузка - выберите второй элемент из меню, чтобы перейти в режим восстановления.

В последнее время мне пришлось изменить права доступа к папке / usr folder

. Что попросило изменить разрешения всей папки / usr?

1
ответ дан 25 July 2018 в 18:44

установите «Пользователи и группы», используя this , перейдите в «Управление группами» и добавьте вас в sudo группу

0
ответ дан 25 July 2018 в 18:44

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

Перезагрузка - выберите второй элемент из меню, чтобы перейти в режим восстановления.

В последнее время мне пришлось изменить права доступа к папке / usr folder

. Что попросило изменить разрешения всей папки / usr?

1
ответ дан 31 July 2018 в 12:30

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

Перезагрузка - выберите второй элемент из меню, чтобы перейти в режим восстановления.

В последнее время мне пришлось изменить права доступа к папке / usr folder

. Что попросило изменить разрешения всей папки / usr?

1
ответ дан 2 August 2018 в 00:52

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

Перезагрузка - выберите второй элемент из меню, чтобы перейти в режим восстановления.

В последнее время мне пришлось изменить права доступа к папке / usr folder

. Что попросило изменить разрешения всей папки / usr?

1
ответ дан 4 August 2018 в 16:23

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

Перезагрузка - выберите второй элемент из меню, чтобы перейти в режим восстановления.

В последнее время мне пришлось изменить права доступа к папке / usr folder

. Что попросило изменить разрешения всей папки / usr?

1
ответ дан 6 August 2018 в 01:02

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

Перезагрузка - выберите второй элемент из меню, чтобы перейти в режим восстановления.

В последнее время мне пришлось изменить права доступа к папке / usr folder

. Что попросило изменить разрешения всей папки / usr?

1
ответ дан 7 August 2018 в 18:29

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

Перезагрузка - выберите второй элемент из меню, чтобы перейти в режим восстановления.

В последнее время мне пришлось изменить права доступа к папке / usr folder

. Что попросило изменить разрешения всей папки / usr?

1
ответ дан 10 August 2018 в 07:10

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

Перезагрузка - выберите второй элемент из меню, чтобы перейти в режим восстановления.

В последнее время мне пришлось изменить права доступа к папке / usr folder

. Что попросило изменить разрешения всей папки / usr?

1
ответ дан 15 August 2018 в 19:09
  • 1
    & quot; установление разрешения на то, что они были & quot; - Я изменил их и не знаю, кто они! – sangharsh 11 October 2015 в 13:05

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

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