sudo,caddy,docker,以及报错。

尽管很多命令行,或者个人习惯,都喜欢在一些命令之前添加sudo,但其实这十分危险。

拿caddy举例:如果第一次运行caddy的时候是直接运行而且是sudo运行的,那么caddy会直接在root下生成证书:这会导致一系列的问题:比如caddy.service默认以www-data运行,必须手动切换至root才能正常。

这是一个特别奇怪的事情:明明sudo是为了使用更高的权限以获得最完美的使用体验,但是很多东西并不需要sudo,sudo了反而会导致它的文件生成在root,从而导致与之相关的服务会莫名其妙失效或者bug。