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
),便于問題恢復。