Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.0k views
in Technique[技术] by (71.8m points)

为何docker里su到mysql居然无效

我docker的启动容器脚本是这样:
`docker run -itd --name my-new -v /mydir:/mydir -v /etc/localtime:/etc/localtime -v /filesys:/filesys --net=host --privileged=true docker.io/centos /sbin/init
`

通过mysql官方rpm安装的mysql8.0.22。
安装完成后,默认会给系统创建一个mysql组和一个mysql的用户。
经确认,确实是有mysql这个用户:
mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/false

然后,我通过su mysql,想切换到这个用户,发现,切换后,依然是原来的用户。。。。

这是什么玄学问题?是不是docker里要特殊操作?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

知道了,原来/bin/false表示该用户不能登录,
用这个命令usermod -s /bin/bash mysql更换用户权限就可以。

mysql的官方真是恶搞,通过rpm安装的,默认不允许mysql用户登录。。。。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...