chmodding /var/www 时“找不到有效的 sudoers 来源,正在退出”错误

Bez*_*eel 0 sudo permissions ubuntu-11.04

我是 Ubuntu 的新手,刚刚安装了 LAMP。我正在尝试将文件粘贴到/var/www/目录中,以便我可以测试我的 PHP 项目,但我不能。

我在网上搜索过,我读到的只是:“类型sudo chmod 077 /var/www/”或类似的东西,但我的机器抛出了这个:

sudo: /etc/sudoers is mode 0777, should be 0440
sudo: no valid sudoers sources found, quitting
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

slh*_*hck 7

你的问题似乎更大。请尝试以下操作:

  • 重启你的电脑

  • 启动到恢复模式(从启动屏幕中选择“恢复”选项。如果您是单启动 Ubuntu,则需要按住该Shift键才能进入 GRUB 菜单)

  • 在您看到的提示中,选择“Drop to root shell prompt”

    在此处输入图片说明

  • 在命令提示符处(应该说root@your-computer:~#,输入:

      chmod 0440 /etc/sudoers
    
    Run Code Online (Sandbox Code Playgroud)
  • 然后重启你的机器

      shutdown -r now
    
    Run Code Online (Sandbox Code Playgroud)

现在,您应该可以sudo再次使用了。看来您之前尝试过一些错误的命令。


笔记:

在使用sudo.

另一个注意事项:

跑步sudo chmod 077 /var/www/绝对不是你想做的事情。如果要在 上设置权限/var/www,建议创建一个对目录具有写访问权限的新用户组。

sudo addgroup www-users
sudo adduser <your-username> www-users
Run Code Online (Sandbox Code Playgroud)

替换<your-username>为您的真实用户名。这将添加一个新组www-users并将您自己添加到其中。

然后,将网络服务器用户添加到其中:

sudo adduser www-data www-users
Run Code Online (Sandbox Code Playgroud)

并给予正确的权限:

sudo chgrp www-users /var/www
sudo chmod –R 775 /var/www
sudo chmod g+s /var/www
Run Code Online (Sandbox Code Playgroud)