linux - 使用 mkdir 数据 : permission denied 设置后全新安装 gogs panic

标签 linux git ubuntu go gogs

这里只是检查 gogs,我按照教程在 apache 后面设置 gogs。我能够看到安装页面,成功运行安装。但无法超越这一步,因为我没有看到 gogs 的登录页面。终端显示以下错误

[Macaron] 2020-03-03 16:48:29: Completed GET / 500 Internal Server Error in 743.184µs
[Macaron] 2020-03-03 16:48:29: Started GET /favicon.ico for 10.108.23.170
[Macaron] PANIC: session(start): mkdir data: permission denied
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/github.com/go-macaron/session/session.go:162 (0x9bae70)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/gopkg.in/macaron.v1/context.go:79 (0x963b80)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/github.com/go-macaron/inject/inject.go:157 (0x934080)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/github.com/go-macaron/inject/inject.go:135 (0x933daa)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/gopkg.in/macaron.v1/context.go:121 (0x963cd9)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/gopkg.in/macaron.v1/context.go:112 (0x976b1f)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/gopkg.in/macaron.v1/recovery.go:161 (0x976b0d)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/gopkg.in/macaron.v1/logger.go:40 (0x967973)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/github.com/go-macaron/inject/inject.go:157 (0x934080)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/github.com/go-macaron/inject/inject.go:135 (0x933daa)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/gopkg.in/macaron.v1/context.go:121 (0x963cd9)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/gopkg.in/macaron.v1/context.go:112 (0x975e40)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/gopkg.in/macaron.v1/logger.go:52 (0x975e2b)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/gopkg.in/macaron.v1/logger.go:40 (0x967973)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/github.com/go-macaron/inject/inject.go:157 (0x934080)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/github.com/go-macaron/inject/inject.go:135 (0x933daa)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/gopkg.in/macaron.v1/context.go:121 (0x963cd9)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/gopkg.in/macaron.v1/router.go:187 (0x977d66)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/gopkg.in/macaron.v1/router.go:303 (0x970405)
/home/vagrant/gopath/src/github.com/gogs/gogs/vendor/gopkg.in/macaron.v1/macaron.go:220 (0x968d4c)
/usr/local/go/src/net/http/server.go:2774 (0x74a9c7)
/usr/local/go/src/net/http/server.go:1878 (0x7466b0)
/usr/local/go/src/runtime/asm_amd64.s:1337 (0x466190)
[Macaron] 2020-03-03 16:48:29: Completed GET /favicon.ico 500 Internal Server Error in 649.106µs

我已经设置了目录/权限。
我可以从中看到
$su -c '/opt/gogs/gogs web' gogs
Password: 
2020/03/03 16:52:17 [TRACE] Custom path: /opt/gogs/custom
2020/03/03 16:52:17 [TRACE] Log path: /opt/gogs/log
2020/03/03 16:52:17 [TRACE] Log Mode: File (Info)

当我点击浏览器时,出现上述错误。

最佳答案

解决此问题的方法是将 dir 更改为 gogs 安装目录并运行

$su -c '/opt/gogs/gogs web' gogs
Password: 
2020/03/03 16:52:17 [TRACE] Custom path: /opt/gogs/custom
2020/03/03 16:52:17 [TRACE] Log path: /opt/gogs/log
2020/03/03 16:52:17 [TRACE] Log Mode: File (Info)

解决了问题,

原因:gogs 尝试在当前目录上 mkdir,当从您家运行时,gogs 用户将没有权限。
cd /opt/gogs/

帮助 gogs 在 gogs 用户拥有的目录下运行所需的权限。

希望对某人有所帮助

https://www.itfanr.cc/2017/03/23/docker-ubuntu-gogs-deploy/解释了 docker 的 workdir,它有助于找到这些信息

谢谢

关于linux - 使用 mkdir 数据 : permission denied 设置后全新安装 gogs panic ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60506670/

相关文章:

git - git 克隆中丢失的文件

c# - C# 函数执行批处理文件的 Git pull 问题

java - org.openqa.selenium.WebDriverException : Timed out waiting for driver server to start. 构建信息 : version: 'unknown' , 修订版: 'unknown'

Linux Mininet Scapy 错误

linux - 将windows应用程序移植到linux

git - 在没有 parent 的情况下在 gerrit 中提交补丁

java - Ubuntu RXTX 无法识别 USB 串口设备

linux - Linux 服务器上的 Haxe 应用程序和 Gtk-WARNING

c++ - x86-64 调用约定中的返回值

mysql - 无法启动服务器 : Bind on TCP/IP port: Cannot assign requested address