我想让 ubuntu 将我的登录视为 root。我不需要 sudo。我该怎么办?
对于我需要做的几乎任何事情,我都必须使用 sudo。这会导致问题,特别是当我需要安装软件并且它创建的所有目录都归“root”所有时。
我最近安装了 apache,/var/www 归 root 所有,然后我必须 chmod 777 才能使它正常工作。这太疯狂了。
答案1
我最近安装了 apache,/var/www 归 root 所有,然后我必须 chmod 777 才能使它正常工作。这太疯狂了。
是的,不要这么做。使用:
chown -R www-data.www-data /var/www
相反。否则,您将危及网页的安全性。建议将 chmod 设置为 777 的指南通常是为共享托管提供商编写的教程,因为如果他们已经将其设置为775, 或者755并以 www-data 用户身份进行 chown 没有必要对任何东西进行 chmod 777 除非你正在与系统上的另一个用户共享文件,但即使这样cp它/tmp
Sudo 旨在防止您以 root 身份做您不该做的蠢事。如果您需要临时的“root”shell,请执行须藤苏-。请注意,这只能临时使用。我建议在 root 的 .bashrc 中设置 TMOUT=600,这样 root 闲置 10 分钟后就会自动被踢出。
我建议你读一下Ubuntu 服务器指南(直接链接到 pdf)。特别是第 8 章关于安全性。阅读整本书应该能让你更好地监督你的服务/质量/安全性的执行、维护和增强。
答案2
您可以在密码文件中将您的 uid 设置为 0。
我的意思是,这是一个非常愚蠢的想法,但你可以这样做。这与成为 root 是一样的,但从技术上讲是可行的。
答案3
在 Linux 中,仅root
具有所有权限。对于普通用户来说,sudo
更像su
是“以管理员身份运行”,而不是 UAC。您能得到的最接近的权限是:
- 禁用密码要求
sudo
- 这已在其他答案中解释过(我不会在手机上重新输入它)。 - 对于多个操作,运行
sudo -i
即可获得以 root 身份运行的 shell。 - 我可能会因此被彻底否决,但总是有办法在启动时以 root 身份登录。(并接受与 Windows 上的管理员相同甚至更多的风险。)
答案4
您可以授予自己无密码的 sudo 权限。sudo
不过,您仍然需要在需要 root 权限的命令前输入。查看文件man sudoers
中的注释/etc/sudoers
(使用该visudo
命令进行编辑)。
下面是从我的/etc/sudoers
文件(在 Gentoo 上)中摘录的一个有趣的内容:
# Uncomment to allow people in group wheel to run all commands
# %wheel ALL=(ALL) ALL
# Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
您的用户需要加入该wheel
组才能使用此功能。
当然,当涉及到权限和安全时,在放宽任何限制之前要仔细考虑。
我最近安装了 apache,/var/www 归 root 所有,然后我必须 chmod 777 才能使它正常工作。这太疯狂了。
是的,那是太疯狂了!我强烈建议你恢复/var/www
到原来的样子。