报错:sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set
新开一个terminal,显示所有的docker镜像:
docker ps -a
CONTAINER ID IMAGE COMMAND NAMES
59609d36457e apolloauto/apollo:apollo5.5_g515 "/bin/bash" apollo_dev_yinshaohui
进去管理员root模式:
docker exec -u root -t -i 59609d36457e /bin/bash
59609d36457e 是我的container ID。
我之前把/usr文件夹改成777权限了,先改回755
cd /
chmod -R 755 /usr/
改sudo文件的权限:
chown root:root /usr/bin/sudo
chmod 4755 /usr/bin/sudo
之后在docker下的普通用户里运行sudo,报错
sudo: /etc/sudoers is world writable
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
运行
chmod 0440 /etc/sudoers
报错
sudo: /etc/sudoers.d is world writable
运行
chmod 555 /etc/sudoers.d
chmod 555 /etc/sudoers.d/README
再运行一下
docker ps -a
CONTAINER ID IMAGE COMMAND NAMES
59609d36457e apolloauto/apollo:apollo5.5_g515 "/bin/bash" apollo_dev_yinshaohui
提交一下
docker commit -p 59609d36457e apolloauto/apollo:apollo5.5_g515
59609d36457e是CONTAINER ID,然后返回一个很长的字符串。
docker stop,然后再start启动,进入,可以使用sudo,成功!