Как я могу запустить все как root

Я дважды загрузился на lubuntu (с Windows XP), и каждый раз, когда меня спрашивают о моем пароле. Как мне запустить все с правами root и больше не спрашивать пароль? В идеале я хотел запустить nginx, но у него есть проблемы с разрешением:

apathetic@ubuntu:~$ service nginx start
Starting nginx: nginx: [alert] could not open error log file: open() "/var/log/nginx/error.log" failed (13: Permission denied)
2012/08/03 20:06:25 [warn] 4762#0: the "user" directive makes sense only if the master process runs with super-user privileges, ignored in /etc/nginx/nginx.conf:1
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
2012/08/03 20:06:25 [emerg] 4762#0: open() "/var/run/nginx.pid" failed (13: Permission denied)
nginx: configuration file /etc/nginx/nginx.conf test failed
0
задан 4 August 2012 в 05:46

2 ответа

вы можете использовать команду sudo в начале вашей командной строки для запуска чего-либо от имени пользователя root;

т.е. #sudo service nginx start

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

Если вы просто хотите постоянно запускать эту службу от имени root, то вы можете добавить ее в /etc/rc.local, и это запустит службу от имени пользователя root во время загрузки?

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

0
ответ дан 4 August 2012 в 05:46

Это плохая идея запускать все как root.

Для вещей, которые на самом деле нужно запускать с правами суперпользователя (включая service nginx start), лучше всего использовать sudo:

sudo service nginx start

По умолчанию, при запросе пароля Вы не ввели его за последние 15 минут.

Вы можете настроить /etc/sudoers так, чтобы вы могли запускать команды от имени пользователя root без ввода пароля с помощью NOPASSWD. man sudoers для деталей.

(Команда visudo является рекомендуемым способом редактирования /etc/sudoers.)

Если вы настаиваете на выполнении команд напрямую от имени пользователя root, вы можете запустить оболочку root с помощью

sudo bash
[ 1120] или

 sudo -i

(эквивалентно sudo --login).

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

0
ответ дан 4 August 2012 в 05:46

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

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