Linux中/etc/rc.d/rc.local配置失败总结
1./etc/rc.local
和/etc/rc.d/rc.local
是软链接关系
/etc/rc.local
和/etc/rc.d/rc.local
是软链接关系,因此两者内容一致,默认/etc/rc.local
是777,但/etc/rc.d/rc.local
的权限默认是644
本次也是存在大量非软链关系导致失败的问题
通过查找发现问题,系统/etc/rc.local
和/etc/rc.d/rc.local
是2个独立的文件,导致内容不统一,开机自启失效。
/etc/rc.d/rc.local 用于添加开机启动命令
/etc/rc.local是/etc/rc.d/rc.local的软连接
2.查找导致的情况
sed修改导致软链接失效
查看历史命令发现有同事使用sed
命令修改了/etc/rc.local
文件,导致软链接文件/etc/rc.local
失效,上网搜索了下,查明了原因
sed -i 's/^\/\.\/AppHome/\/AppHome/' /etc/rc.local
结果导致/etc/rc.local
成为普通文件,不是软链接文件
解决办法,使用sed时增加参数-c
这样修改能保证修改文件的软硬链接属性不变。
sed -i -c 's/^\/\.\/AppHome/\/AppHome/' /etc/rc.local