文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>一个诡异的错误:bad interpreter: Permission denied

一个诡异的错误:bad interpreter: Permission denied

时间:2010-08-10  来源:yantao123yt

在编译一个deb包的时候,运行dpkg-buildpackage之后,出现下面的错误:

fakeroot debian/rules clean
/usr/bin/fakeroot: debian/rules: /usr/bin/make: bad interpreter: 权限不够
dpkg-buildpackage: error: fakeroot debian/rules clean gave error exit status 126



于是先后尝试了以下解决方法:
1. 检查包内文件权限,检查/bin/bash  /bin/sh可执行权限,检查当前用户权限,结果显示一切正常; 2. 切换到root用户再次尝试编译,结果出现同样错误; 3. 创建新用户再次尝试,同样出错;

最后终于找到了问题所在:
原来是因为编译的包所在的分区在挂载的时候默认是以"noexec"方式挂载的,所以才造成在此分区上的可执行文件或脚本无法正常执行。下面是"man mount" 中关于"exec"的片段:

exec   Permit execution of binaries.

noexec   Do not allow direct execution of any binaries on the mounted filesystem. (Untilrecently it was possible to run binaries anyway using a command like  /lib/ld*.so  /mnt/binary. This trick fails since Linux 2.4.25 /2.6.0.)



那么解决办法就是:在/etc/fstab中的条目中加入exec选项:

1 # UNCONFIGURED FSTAB FOR BASE SYSTEM
2 # to mount userdata volume.
3 /dev/hda8 /home/username/userdata ext3 rw,users,exec 0 0



然后重新挂载此分区即可,再进入源码包试一下,发现编译正常了。

参考:http://forums.fedoraforum.org/archive/index.php/t-19374.html




相关阅读 更多 +
排行榜 更多 +
幸运硬币官方正版下载

幸运硬币官方正版下载

休闲益智 下载
宝宝来找茬手机版 v9.86.00.00 安卓版

宝宝来找茬手机版 v9.86.00.00 安卓版

休闲益智 下载
翻滚飞机大战最新版 v1.0.4 安卓版

翻滚飞机大战最新版 v1.0.4 安卓版

飞行射击 下载