egg-scripts: Permission denied
在启动egg的时候发现报错:
sh: 1: egg-scripts: Permission denied
npm ERR! code ELIFECYCLE
npm ERR! errno 126
npm ERR! test-egg-jssdk@1.0.0 start: `egg-scripts start --daemon --title=egg-server-test-egg-jssdk`
npm ERR! Exit status 126
npm ERR!
npm ERR! Failed at the test-egg-jssdk@1.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/liuyanan/.npm/_logs/2020-12-29T04_48_44_018Z-debug.log
其实只看标题就知道了缺少权限。而且也告诉了是egg-scripts缺少权限。我猜测导致这个问题的原因是
我本地是windows,服务器是Linux,本地下载的时候可执行文件是egg-scripts.cmd文件有执行权限,而egg-scripts.sh是没有的。
以下,rw-rw-r--
对应了读写执行
,完整应该是rwxrwxrwx
,也就是所谓的777权限,之所以有三个rwx,因为分别对应了当前用户,当前组,所有用户。
显然没有执行权限,所以用sudo也白搭。
所以解决起来也很简单,加上可执行权限接口。
chmod +x ./node_modules/.bin/egg-scripts
另外说一句,上边的目录存放的是当前项目所有的可行性文件,类似的问题也可以到这个文件夹去找对应文件是否有权限。
更深一层的说当运行npm start 的时候,会把这个.bin目录下导入到path环境变量中,所以你就可以执行了。
还没有评论,来说两句吧...