给用户写入文件夹的权限

如何给用户'testuser'在文件夹'/var/www/test/public_html'上赋予写权限?

5我已经看到了,但我不同意它是一个重复的问题。我的问题非常具体。 - RSM
2如果您启用了ACL(访问控制列表):sudo setfacl -Rm u:testuser:rwx /var/www/test/public_html - simlev
1个回答

最简单的方法是使用chown命令:
sudo chown -R testuser:testuser /var/www/test/public_html

这将使用户和组testuser成为文件的所有者。如果您使用不同的用户名 (运行whoami或查看终端提示符中@之前的内容,或者直接替换testuser$USER),请使用该用户名。例如,用户Flora colossus可能有用户名groot,那么您应该运行sudo chown -R groot:groot...。如有疑问,请使用下面链接的手册页面。

或者使用chmod(请谨慎阅读和使用):

sudo chmod -R 777 /var/www/test/public_html

允许所有者、组和其他用户具有读写执行权限。对于目录来说,执行位是必需的,文件可以使用666权限(严格来说,大多数文件不需要执行权限,但这样做最不容易出错,并且不需要find等命令)。如果需要的话,chmod比其他选项更难“撤销”。
这里是关于chownchmod的手册页面(也可以通过运行man chownman chmod找到)。
我还应该补充一点,您也可以给用户组赋予写入权限(示例 这里 这里)。
此外,如果您的服务器上没有可信任的用户/脚本运行等情况,请小心使用chmod命令给予全局写入权限 - 我建议改变组或用户权限。如果使用chmod命令,请先了解其功能并阅读相关文档。

如何撤消chown命令? - Karl Morrison
@KarlMorrison 对于上述命令中的哪一个(具有相同选项),还是其他命令? - Wilf
刚在考虑着 sudo chown -R testuser:testuser /var/www/test/public_html 这个命令! - Karl Morrison
3可能是 sudo chown -R root:root /var/www/test/public_html... 你遇到了什么问题? - Wilf
只是好奇!:) 以前从未见过如何恢复它。 - Karl Morrison
2@KarlMorrison 只是作为参考,并不一定“还原”更改;它只是将所有者指定为 root。如果所有者是其他用户,你需要用该用户的名称和组替换 root:root: - Mitch
1垃圾答案,应用于主题文件夹,现在被锁定,无法访问。 - Kayote
3@Kayote - 将testuser更改为您的用户名(和组)!抱歉忘记添加这一点 :) 我建议在运行从互联网上找到的随机命令之前阅读命令手册,因为通常会有一些注意事项(而且很少见,也可能是恶意或者只是糟糕的 - 例如,在需要将Web服务器文件正确拥有特定用户和组的设置中,这样做是不好的) - Wilf
@Wilf 是的,我知道那个。幸运的是,在发布问题后,我得到了修复系统所需的帮助。:) 谢谢你回复。 - Kayote
1只需更改用户,将组保留为www-data。 - Ravi Soni