我已经双启动到 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
Run Code Online (Sandbox Code Playgroud)
以 root身份运行一切是个坏主意。
对于实际需要以 root 身份运行的东西(包括service nginx start),最好的方法是使用sudo:
sudo service nginx start
Run Code Online (Sandbox Code Playgroud)
默认情况下,如果您在过去 15 分钟内未输入密码,则会要求您输入密码。
您可以配置/etc/sudoers为让您以 root 身份运行命令而无需使用NOPASSWD. man sudoers详情。
(该visudo命令是推荐的编辑方式/etc/sudoers。)
如果你坚持直接以 root 身份执行命令,你可以启动一个 root shell
sudo bash
Run Code Online (Sandbox Code Playgroud)
或者
sudo -i
Run Code Online (Sandbox Code Playgroud)
(相当于sudo --login)。
我的建议:不要这样做。键入sudo每个实际上需要 root 访问权限的命令有助于提醒您不要不必要地使用它。这是很容易搬起石头砸自己的脚。
| 归档时间: |
|
| 查看次数: |
29601 次 |
| 最近记录: |