登录
首页 >  Golang >  Go问答

golang 使用github.com/kardianos/service设置为服务开机自启后 无法打印日志了?

来源:SegmentFault

时间:2023-01-11 17:41:40 282浏览 收藏

本篇文章向大家介绍《golang 使用github.com/kardianos/service设置为服务开机自启后 无法打印日志了?》,主要包括go,具有一定的参考价值,需要的朋友可以参考一下。

问题内容

写的一个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
之类的地方。

今天带大家了解了go的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表