写的一个golang项目需要开机自启,于是引入了一个第三方库github.com/kardianos/service
,日志框架使用的zap
+lumberjack
创建开机自启服务需要用到root权限,所以程序启动时使用sudo ./main
,可以正常启动,但是重启之后,无法再次启动了,查看系统日志提示如下报错信息
logfile: open ./run.log: read-only file system
2021-07-14 11:02:02.260009 +0800 CST m=+0.665712760 write error: can't open new logfile: open ./run.log: read-only file system
2021-07-14 11:02:02.400718 +0800 CST m=+0.806416342 write error: can't open new logfile: open ./run.log: read-only file system
2021-07-14 11:02:02.886868 +0800 CST m=+1.292548622 write error: can't open new logfile: open ./run.log: read-only file system
2021-07-14 11:02:02.93952 +0800 CST m=+1.345198941 write error: can't open new logfile: open ./run.log: read-only file system
求大佬们帮忙看下
尝试过更改权限,更改用户组,都不行
./run.log
这个路径你确认过在哪儿吗?报错说
read-only file system
说明路径所在位置是只读方式挂载的,和程序、目录的权限设置没什么关系。解决办法可以是改成绝对路径,指向
/var/log/run.log
之类的地方。