Для приложения требуется разрешение root

Как заставить приложение всегда требовать разрешения root?
Например, если я запускаю nautilus, оно должно сообщить мне об отказе в разрешении и запустить его как root.
Есть ли способ сделать это в Ubuntu? Принудительно требовать права root?

1
задан 9 May 2013 в 08:58

1 ответ

Я бы предположил, что вам нужно установить владельца bin-файла (программы) как root и сделать его исполняемым только для root.

Итак, в качестве примера, это текущие разрешения на моем nautilus, который находится в /usr/bin/nautilus:

alaa@aa-UBUNTU:~$ ls -l /usr/bin | grep nautilus
-rwxr-xr-x 1 root   root       1542692 Feb 20 23:13 nautilus

В случае, если вам нужно больше узнать о разрешениях, нажмите здесь . Кроме того, прежде чем что-либо делать, запомните разрешения вашей программы, прежде чем выполнять какие-либо команды, чтобы вы могли вернуться к этим разрешениям, если что-то пойдет не так.

Обратите внимание, что есть три символа «x», что означает, что владелец, группа и другие (в основном все) имеют доступ для его выполнения. Если мы хотим, чтобы приложение требовало разрешения root, нам нужно настроить его так, чтобы root был единственным, кто мог его выполнить, поэтому нам нужно удалить символы «x» (которые являются исполняемыми разрешениями) из «group» и «другой», и оставьте только первый «х». Для этого вы должны сделать:

sudo chmod go-x /usr/bin/nautilus

Эта команда означает:

  • chmod : изменить режим / права доступа
  • ] go : применить следующее к «group» и «other»
  • -x : удалить (из-за знака минус) разрешение на выполнение из «group» и «other» «
  • / usr / bin / nautilus : файл для применения этого к

Таким образом, мы удаляем« x »из« group »и« other ». Теперь разрешения выглядят так:

alaa@aa-UBUNTU:~$ ls -l /usr/bin | grep nautilus
-rwxr--r-- 1 root   root       1542692 Feb 20 23:13 nautilus

Если я попытаюсь запустить nautilus с моим именем пользователя, я получу следующее:

alaa@aa-UBUNTU:~$ nautilus
bash: /usr/bin/nautilus: Permission denied

Чтобы иметь возможность запустить nautilus Я должен был бы сделать sudo nautilus.

0
ответ дан 9 May 2013 в 08:58

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

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