问题现象
手动执行如下命令,出现如下报错日志。
ssh -p 22 -o ConnectTimeout=10 -o StrictHostKeyChecking=no teledb@10.218.14.144 sudo yum -y install dos2unix expect readline createrepo net-tools lsof uuid
经过排查发现目录文件权限不对,用户组不具备读写操作权限。
原因分析
执行umask命令,发现其设置的值与实际不相符,查找出位0027,实际上位022才对,导致用户创建的文件或者目录用户组权限不对。
解决方案
方式一
-
执行如下命令,给解压出的安装包赋予读写执行权限。
cd /app sudo chmod -R 755 teledb-x-v2.8.6-centos.x86_64 sudo chown -R teledb:teledb teledb-x-v2.8.6-centos.x86_64 ssh -p 22 -o ConnectTimeout=10 -o StrictHostKeyChecking=no teledb@10.218.14.144 sudo yum -y install dos2unix expect readline createrepo net-tools lsof uuid
-
重新install,当出现如下回显信息表示安装成功。
方式二
您可以修改umask的值,您可执行chmod命令授权也可参考如下方式 修改umask的值。
#1、临时修改umask的值
umask 022
#2、永久修改umask的值
vim /etc/profile
if[ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then umask 022
else
umask 022
fi
vim /etc/bashrc
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then umask 002
else
umask 022
fi
source /etc/profile
source vim /etc/bashrc
#检查