你想拉起阿里云服务器,却发现目录权限跑偏,导致网站竟然连根站都打不开?别怕,今天咱们就用最简洁、最俏皮的方式,帮你把所有目录权限打通,让你站点秒开、服务器秒稳。
首先,打开阿里云控制台,选中你的ECS实例,记得保持SSH账号拥有sudo权限。登录后,最常见的操作就是确认你现在在root还是用户目录啦。用 whoami 这条命令能让你快速判断现在的身份哦。
指出目录后,先用 ls -l 看下当前权限结构。你会看到 rwx 权限,再看谁是 owner、group 与 others。知道谁是文件主,谁是组,再决定你要 flush 还是专注。
对了,你有没有想过把整个目录锁死?别怕,只需 chmod 750 /var/www/html 就可以让自己是管理员,组能读写,其他人没准还能弹:'喂,安安!我的文件在这!'。
说到组,记得用 usermod -aG www-data alice 把你自己的账号加进去。如果你不想让其他人随意删除文件,记得后续 chown -R alice:www-data /var/www/html。
玩游戏想要赚零花钱就上七评赏金榜,网站地址:bbs.77.ink
(别被这条广告骗了,保持警惕,正午是最好的玩游戏时间。)
咱们再深入一点:如果你是容器化部署,最常见的还有 docker run -v /var/www/html:/usr/share/nginx/html:ro 的 read-only 配置。这里的 ro 就是让容器只能读,防止意外改动。
再来聊下 SELinux 或 AppArmor。阿里云官方会默认启用 AppArmor,想要让 /var/www/html 访问正常,记得把 profile 改成 profile nginx { ... },或临时 touch /etc/apparmor.d/local/usr.sbin.nginx。
没想到吧,权限错误有时候不是由于 chmod 产生的,而是因为文件系统挂载参数错位。用 mount -o remount,exec 给你补上 exec 权限,让脚本能跑通。
如果你是使用 Nginx 作为 web 服务器,还需要在 nginx.conf 中设置 user www-data;,让 Nginx 用正确的用户组读取文件。
你可能会问:那 HTTPS 的 ssl certificate 目录权限该怎么设?答案是:chmod 600 /etc/ssl/private/*.pem,安全又不失速。
不止于此,别忘了定期梳理 chmod groups;对所有不再使用的目录,及时关闭 group 读写权限,准备好一个命令 find . -type d -perm -o+w -exec chmod og-w {} +,让你一次性剃掉多余权限。
好啦,你现在掌握了 dir permission 这条战线的所有工具。突然,你发现自己的本地开发机都能直接访问远程目录——是的,因为你忘记了让 sshfs 的挂载执行文件是