Ubuntu下执行make编译遇Permission denied报错,求解决方法
解决Ubuntu下make编译的权限报错问题
问题分析
报错包含两类权限问题:无法修改./bin/下shell脚本的执行权限,以及无法在obj/目录创建目标文件,核心是当前用户对这些文件/目录缺乏足够操作权限。
解决方案
修改文件/目录所有权(推荐)
先查看目标文件和目录的所有者:ls -l ./bin/ ls -ld obj/若所有者不是当前用户,执行以下命令将当前目录所有内容的权限归属改为自己:
sudo chown -R $USER:$USER .完成后重新执行
make即可。临时用管理员权限执行编译
直接以root权限运行make:sudo make注意:此方法生成的文件所有者为root,后续操作这些文件可能仍需权限,仅作临时应急方案。
检查文件系统是否只读挂载
查看当前目录所在分区的挂载状态:mount | grep $(pwd)如果输出包含
ro,说明分区为只读挂载,执行以下命令重新挂载为可读写:sudo mount -o remount,rw /对应的挂载点替换
/对应的挂载点为实际分区路径,比如/或/home。
内容的提问来源于stack exchange,提问作者rlamj99
相关产品推荐
相关产品推荐

