2

В системе Unix, что является лучшим методом для редактирования системных файлов, таких как /etc/hosts и php.ini полномочий root, без использования утомительного пароля sudo+?

Могу ли я просто chown эти файлы моему не-root-пользователю, или есть лучший способ использования групп или чего-то еще?

4 ответа4

5

sudo - лучший и правильный способ сделать это. Если вы даете своей учетной записи слишком много прав администратора (например, добавляете себя в root группу), вы открываете себя для случайного совершения всевозможных вредоносных действий. Кроме того, вредоносные программы / трояны могут использовать ваши привилегии без вашего ведома, чтобы делать неприятные вещи. Просто подумайте о вводе sudo перед командой как о дополнительной проверке: «Действительно ли я хочу запустить это?"

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

2

В дополнение к ответу MattDMo. Если повторный ввод пароля вас беспокоит, вы можете добавить NOPASSWD к своим привилегиям. Это все равно потребует от вас sudo (чтобы вы могли знать, что вы делаете что-то, что может быть вредным), но не побеспокоит вас при вводе пароля.

В /etc/sudoers вы можете использовать эту строку:

forthrin ALL=(ALL) NOPASSWD: ALL

1

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

  • sudo su
  • sudo -i
  • su

Как только вы станете пользователем root , просто оставьте терминал thyat открытым и отредактируйте любые файлы с этого терминала, используя emacs или vim или gedit или что вы предпочитаете:

emacs /etc/hosts
0

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

%usergroup ALL=(ALL) NOPASSWD: /bin/vi

Вы можете ограничить эту команду определенным файлом, указав на скрипт, который запускает vi /etc/hosts , но это позволит пользователям открывать и другие файлы изнутри vi или переходить в оболочку из vi (:!sh или аналогичная команда).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .