jenkins执行shell脚本提示权限不够

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jenkins执行shell脚本提示权限不够相关的知识,希望对你有一定的参考价值。

#!/bin/bash
export JAVA_HOME=/usr/java/jdk1.7.0_79
tomcat_pid=`/usr/sbin/lsof -n -P -t -i :8081`
[ -n "$tomcat_pid" ] && pkill -9 $tomcat_pid
cd /usr/local/weikuaiyun-tomcat-7.0.69/webapps/
mv express.war express.war.bak
rm -rf /usr/local/weikuaiyun-tomcat-7.0.69/webapps/express.war
cp /var/lib/jenkins/workspace/express/web/target/express.war /usr/local/weikuaiyun-tomcat-7.0.69/webapps/
cd /usr/local/weikuaiyun-tomcat-7.0.69/bin/
./startup.sh
用户权限已设置最高了
[express] $ /bin/bash /tmp/hudson5047073660466815844.sh
channel stopped
mv: 无法将"express.war" 移动至"express.war.bak": 权限不够
rm: 无法删除"/usr/local/weikuaiyun-tomcat-7.0.69/webapps/express.war": 权限不够
cp: 无法创建普通文件"/usr/local/weikuaiyun-tomcat-7.0.69/webapps/express.war": 权限不够
export BUILD_DISPLAY_NAME="#75"
export BUILD_ID="75"
export BUILD_NUMBER="75"
export BUILD_TAG="jenkins-express-75"

参考技术A 很显然你当前用户对/usr/local/weikuaiyun-tomcat-7.0.69/没有写执行权限,解决这个问题只要把/usr/local/weikuaiyun-tomcat-7.0.69/权限对jenkins对应的管理员放开所有权限就行了本回答被提问者和网友采纳

jenkins执行shell脚本执行docker操作权限问题?

docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.40/containers/create?name=api_imooc: dial unix /var/run/docker.sock: connect: permission denied.报了这个错误, 我把这个组加进来还是不行, jenkins 用户 id属组 994(docker), 怎么改成992(docker)啊? 是不是这要和上面的root 992要一致啊?

参考技术A sudo chown "$USER":"$USER" /home/"$USER"/.docker -R
sudo chmod g+rwx "$HOME/.docker" -R

以上是关于jenkins执行shell脚本提示权限不够的主要内容,如果未能解决你的问题,请参考以下文章

Shell基础--运行Bash脚本的方式

jenkins执行shell脚本 命令被解析成两行了 导致自行不成功

./执行shell脚本提示没有权限Permission denied

jenkins执行groovy 脚本报错

jenkins权限

Jenkins用户授予root权限