在Linux系统中,修改文件或目录权限主要通过chmod命令实现,以下是详细操作指南:
chmod命令chmod [who][+/-/=][permissions] 文件名
u:所有者(user)g:所属组(group)o:其他用户(others)a:所有用户(all,默认)+:添加权限-:移除权限=:精确设置权限r:读(4)w:写(2)x:执行(1)示例:
chmod u+rwx file.txt # 给所有者添加读、写、执行权限
chmod g-w file.txt # 移除所属组的写权限
chmod a=rx file.txt # 所有用户设为读和执行权限
用三位八进制数表示权限(分别对应所有者、组、其他用户):
chmod 755 文件名
4(r) + 2(w) + 1(x) = 74(r) + 1(x) = 5常见权限:
- 755:所有者可读/写/执行,其他用户可读/执行(常用于可执行文件)
- 644:所有者可读/写,其他用户仅读(普通文件)
- 777:所有用户可读/写/执行(慎用!)
chown)sudo chown 新所有者:新组名 文件名
示例:
sudo chown root:admin file.txt # 将所有者改为root,组改为admin
sudo chown user1 file.txt # 仅修改所有者
添加 -R 参数可递归修改目录及其内容:
chmod -R 755 /path/to/dir # 递归修改目录权限
chown -R user:group /path/to/dir # 递归修改所有者和组
bash
chmod 4755 file # 设置SUIDbash
chmod 2775 dir # 设置SGIDbash
chmod 1777 dirls -l 文件名 # 查看详细权限
stat 文件名 # 查看权限的数字表示
sudo权限。777权限会带来安全风险,尽量避免。x权限才能进入,文件需x权限才能执行。通过以上命令,你可以灵活控制Linux系统中的文件权限。