rc.local开机自动挂载samba无效问题

远程建立好了samba服务,并且手动挂载ok,但是把挂载命令放到/etc/rc.local里面不能实现开机自动挂载。而在开机后手动运行一下rc.local脚本是可以挂载的。

经过一些试验发现rc.local确实运行到了。但在运行到挂载samba命令时出错,然后直接退出了该脚本。而挂在命令确实是正确的。

原因应该是刚开机不久,运行到rc.local时samba服务还没有完全启动,导致挂载失败。(注意并不是没有启动,/etc/init.d/smb应该是在/etc/rc.local之前执行的。)

解决方法也很简单,就是把挂载命令前加个sleep,等samba服务完全启动ok后再挂载。需要注意的是由于用到了sleep,所以最好让该命令后台运行。如下:

sleep 10s && mount -t cifs //172.16.18.221/221-sdc-nicek /221 -o username=nicek.ni,password=,codepage=cp936 &

打赏
Bookmark the permalink.
0 0 投票数
文章评分
订阅评论
提醒
guest

2 评论
内联反馈
查看所有评论
kono
kono
3 年 前

感谢!这个问题确实如鲠在喉,难以愉悦。今得君一语,道破心中疑惑,甚是欢心。

kano
kano
3 年 前

后来的朋友,如果自己的系统开机比较久,可以吧 sleep 10s 调久一点
例如:
sleep 15s 或者 sleep 20s
避免在执行命令的时候,samba服务启动在命令后面

总之就是 samba服务一定要命令之前启动