Linux文件权限管理指南
在Linux系统中,文件权限是保障数据安全与系统稳定的核心机制,通过合理配置可有效控制用户对文件/目录的访问行为。以下是具体的管理方法:
使用ls -l命令可查看文件/目录的详细权限信息,输出结果的前三位为文件类型(-表示普通文件、d表示目录),后续九位分为三组,分别对应所有者(u)、所属组(g)、**其他用户(o)**的权限,每组内的r(读)、w(写)、x(执行)表示是否具备对应权限。例如:
-rw-r--r-- 1 user group 1024 Jan 1 12:00 file.txt
表示file.txt为普通文件,所有者user有读写权限,所属组group和其他用户仅有读权限。
chmod是调整权限的核心命令,支持符号模式(直观易记)和数字模式(精准高效)两种方式:
[用户类别][操作][权限]格式设置,例如:chmod u+x file.txt(给所有者添加执行权限);chmod g-w file.txt(移除所属组的写权限);chmod o=r file.txt(将其他用户的权限设为只读)。r=4、w=2、x=1),例如:chmod 755 file.txt(所有者7=4+2+1,具备读写执行权限;所属组5=4+1,具备读执行权限;其他用户5,同理);chmod 644 file.txt(所有者6=4+2,具备读写权限;所属组和其他用户4,仅具备读权限)。-R参数,例如:chmod -R 755 /data。chown newowner file.txt(将所有者改为newowner);chown newowner:newgroup file.txt(同时修改所有者为newowner、所属组为newgroup)。chgrp newgroup file.txt(将所属组改为newgroup)。root用户或有sudo权限的用户可执行此操作。/usr/bin/passwd),设置命令为chmod u+s file;/var/www),设置命令为chmod g+s directory;root可删除/重命名文件(如/tmp),设置命令为chmod +t directory。setfacl -m u:username:rwx file.txt(给username添加读写执行权限);setfacl -m g:groupname:r file.txt(给groupname添加读权限);getfacl file.txt(查看文件的ACL设置)。777(所有用户具备读写执行权限)等宽松设置;ls -l或find命令(如find / -type f -perm 777 -exec ls -l {} \;)定期检查权限设置,及时修复过度权限;umask命令控制新文件/目录的默认权限(如umask 022表示新文件权限为644、目录为755),减少误配置风险;getfacl -R /path > permissions.bak),便于问题恢复。