Linux Golang os。创建权限被拒绝
我正在尝试在linux/var/log目录下创建日志文件,但权限被拒绝。在不必更改目录所有权的情况下,是否有任何最佳做法Linux Golang os。创建权限被拒绝,linux,file,go,permission-denied,Linux,File,Go,Permission Denied,我正在尝试在linux/var/log目录下创建日志文件,但权限被拒绝。在不必更改目录所有权的情况下,是否有任何最佳做法 f, _ := os.Create("/var/log/go_server.log") defer f.Close() log.SetOutput(f) 您所拥有的是一个标准的UNIX权限问题。鉴于该目录的特殊性质,您有三种选择: 将该目录的权限更改为更混乱。坏主意,因为它打开了一个肮脏的蠕虫安全明智的罐 使用sysV、upstart或systemd运行go程序,以使该程序
f, _ := os.Create("/var/log/go_server.log")
defer f.Close()
log.SetOutput(f)
您所拥有的是一个标准的UNIX权限问题。鉴于该目录的特殊性质,您有三种选择:
尽管systemd得到了很多好处,但它实际上在这个用例中表现得相当出色。您所拥有的是一个标准的UNIX权限问题。鉴于该目录的特殊性质,您有三种选择:
尽管systemd得到了所有的支持,但它实际上在这个用例中表现得相当出色。从具有足够权限的用户帐户运行一个程序。机器在AWS云中运行,具有go环境,代码通过BeanStalk部署。因此,没有终端用户控制机器或程序用户。认为有更好的方法。从具有足够权限的用户帐户运行程序。机器在AWS云中旋转,go环境和代码通过BeanStalk部署。因此,没有终端用户控制机器或程序用户。我认为有更好的方法。机器在AWS云中旋转,go环境和代码通过BeanStalk部署。因此,没有终端用户控制机器或程序用户。我认为有更好的方法。机器在AWS云中旋转,go环境和代码通过BeanStalk部署。因此,没有终端用户控制机器或程序用户。我觉得有更好的办法。