在 Linux 系统中,错误码 13(Permission Denied) 表示权限不足,通常发生在用户或进程尝试访问文件、目录或执行操作时缺乏足够的权限。以下是详细分析和解决方案:
ls -l
查看文件/目录的权限。
bash
ls -l /path/to/file_or_directory
bash
chmod u+rwx /path/to/file # 用户权限
chmod 755 /path/to/file # 常用权限(用户:rwx,组和其他:rx)
bash
chmod -R 755 /path/to/directory
bash
ls -l /path/to/file
bash
sudo chown user:group /path/to/file
例如:
bash
sudo chown alice:alice /path/to/file
bash
sestatus
bash
sudo setenforce 0 # 临时关闭SELinux(重启后失效)
/etc/selinux/config
,设置 SELINUX=permissive
或 disabled
,然后重启。bash
chmod +x /path/to/script.sh
sudo
:
bash
sudo command
bash
su - root
bash
mount | grep /path/to/mountpoint
bash
sudo mount -o remount,rw /path/to/mountpoint
bash
ps aux | grep nginx # 查看运行用户
chown -R nginx:nginx /var/www/html # 示例
bash
strace -e trace=open,read,write command # 跟踪系统调用
bash
journalctl -xe # Systemd 日志
tail -f /var/log/syslog # 通用日志
错误码 13 的核心是权限问题,需逐步检查:
1. 文件/目录权限(ls -l
+ chmod
/chown
)。
2. SELinux 或 AppArmor 安全模块。
3. 用户/进程的权限上下文(如 sudo
或服务账户)。
如果问题仍存在,请提供具体操作和错误上下文以便进一步分析。