Caddy v1 用 service 启动时报错 read-only
今天又遇到以前碰到过的一个奇怪的问题:Caddy 跑起来效果很奇怪。
我在 Filemanager 里面指定了.db 文件,Caddy 的 status 报错说文件为 read-only。
cmdline 执行,一点问题也没有。Filemanager 功能一切正常。
查了各种文件的属性,用 chmod chown chgrp 改来改去,还是不解决问题。
最终在 Telegram 上面,Newlearner 大佬指了一条路 https://caddy.community/t/problem-with-filemanager-plugin-and-systemd/3900/5,看过之后,再结合其它资料 https://www.cnblogs.com/goldd/articles/5756942.html
解决方案如下:
1. 如果想粗暴一点解决问题,或者还想用 Filemanager 管理更多目录的话,在 /lib/systemd/system/caddy.service 里面把 ProtectSystem 设置为 off
保存 caddy.service 之后,需要 systemctl daemon-reload 再 service caddy restart
我在
我不指定.db 文件让 Filemanager 自动生成,Caddy 能跑起来了,但是用 Filemanager 去管理 Aria2 的下载目录 /usr/local/caddy/www/aria2/download/ 总是报错,就像下面这样
同样的命令(下图标记部分)在查了各种文件的属性,用
最终在
解决方案如下:
1. 如果想粗暴一点解决问题,或者还想用
; Make /usr, /boot, /etc and possibly some more folders read-only.ProtectSystem=off
2. 我的 Filemanager 只是用来管理 Aria2 下载的文件,所以我选择修改 ReadWriteDirectories,添加一些目录(空格分隔)红色部分是我添加的。
; … except /etc/ssl/caddy, because we want Letsencrypt-certificates there.
; This merely retains r/w access rights, it does not add any new. Must still be writable on the host!
ReadWriteDirectories=/etc/ssl/caddy /usr/local/caddy/filemanager /usr/local/caddy/www/aria2/download
评论
发表评论