在Ubuntu中,文件系统权限设置是确保系统安全性和用户数据安全的关键。通过合理设置文件权限,可以防止未授权访问和修改,保护用户数据和系统稳定性。以下是一个详细的Ubuntu文件系统权限设置指南。
ls -l
命令查看文件详细信息,如 -rw-r--r--
,其中 alice
是文件所有者,developers
是所属用户组,rw-r--r--
是权限设置。查看权限地图:
ls -l
:查看当前目录详细权限。ls -l /var/www/html/index.html
:查看特定文件权限。groups
:显示当前用户的所有组。权限修改术(chmod):
sudo chmod 600 /var/log/nginx/access.log
:设置日志文件仅管理员可读写。sudo chmod +x backup.sh
:让脚本可执行。chmod g+w shared_doc.txt
:给同组用户增加写权限。chmod o-rwx secret.conf
:禁止其他人任何访问。所有权转移(chown):
sudo chown -R www-data:www-data /var/www/html
:将网站目录移交Apache服务。sudo chown ubuntu report.pdf
:修改文件所有者(保留原组)。临时提权(sudo):
sudo apt install git
:安装软件需要root权限。sudo nano /etc/nginx/nginx.conf
:编辑系统配置文件。chmod 777 *
:精确赋权,不推荐使用。sudo su
:长期使用用 sudo -i
临时切换。sudo -i
:直接操作 /usr/bin
。root运行浏览器
:普通用户启动+沙盒模式。多人协作开发:
dev
组:sudo groupadd dev
。alice
、bob
加入组:sudo usermod -aG dev alice
,sudo usermod -aG dev bob
。sudo chown -R :dev /opt/projects
,sudo chmod -R 775 /opt/project
。部署Web服务:
www-data
需要读取权限:sudo chown -R www-data:www-data /var/www
。sudo find /var/www -type d -exec chmod 755 {} \;
。sudo find /var/www -type f -exec chmod 644 {} \;
。防止误删文件:
sudo chattr +i database.sql
。sudo chattr -i database.sql
。症状1:Permission denied
ls -l
文件名。sudo
命令或 sudo chmod
调整权限。症状2:Command not found
ls -l /usr/bin/命令名
。sudo chmod +x 脚本.sh
。症状3:Access denied(Samba共享)
getenforce
(Ubuntu默认禁用)。sudo
。sudo timeshift --create
。find / -perm -4000
查找可疑SUID文件。通过以上步骤和最佳实践,您可以有效地管理Ubuntu系统中的文件权限,确保系统的安全性和稳定性。