-
-
Notifications
You must be signed in to change notification settings - Fork 5.8k
Debian 9.6 AMD64: Segfault on start at os/user.Current (1.7.0+) #6841
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Are you running Gitea on a raspberry pi? If so there is a known problem with the arm7 binary and you need to use arm6. If not what kernel version do you have? If it's very old you're likely to need to build Gitea yourself as we build on Ubuntu 18.04. Finally, please don't run 1.7.0 there are a number of security issues in that version and we recommend 1.8 if not at least 1.7.6 (there are fixes in 1.8 that cannot be ported back to 1.7.6) |
I'm on a virtual machine running Debian 9.6 x86_64 with kernel version 4.9.0-4-amd64. I tried version 1.7.0, 1.7.6 and 1.8. They all give me the same error. |
Ok. Under what user are you trying to run Gitea? The segfault looks like it's happening when Gitea tries to get the current username. That implies that you're running Gitea as a weird user. Although you state:
Gitea seems to be trying get its config:
Not in What does your service file look like? Does Gitea run when you just run it as a normal user from a normal directory? |
I followed the documentation when first installing gitea. So gitea service is running as git user:
The binary is located at Here's my service file: gitea.service I tried running gitea as root and git from the corresponding home directory but i still get a segfault.
Thats my fault. The log I gave you was from running gitea without the
So the answer to this question is: No, I can't run gitea anywhere. The strange thing is that version 1.6.4 runs everytime on every circumstance. Everything thats newer than that fails. Edit: Everything here was tested with version 1.8 of gitea. |
This thread on discourse seem related: https://discourse.gitea.io/t/solved-segfault-due-to-misconfigured-unix-user/1104 |
Hmm. It looks like this is: Which if I'm reading correctly causes panic on os/user.Current or Lookup for uid <1000. Now it seems like it's suggested that we need to add more flags to our static build: But I bet a simple workaround is to have a uid>=1000. Now you may actually need that in any case because of the SSH requirements - in that if you want to clone over SSH you need to be able to login as that user and run authorized_keys or an authorized keys command which I'm not certain you can do as a uid <1000. |
@zeripath It is a pity that we need an other tag ( |
I tried running gitea with a new user with a uid>1000: root@gitea:/usr/local/bin# grep gitea /etc/shadow
gitea:!:18022:0:99999:7:::
root@gitea:/usr/local/bin# grep gitea /etc/passwd
gitea:x:1003:1002:Gitea,,,:/home/gitea:/bin/bash
Still no luck. I get exactly the same. Current version 1.6.4 runs perfectly, everything above that fails. Can I use the |
@hendrikbl That's dump and restore are not guaranteed. |
@hendrikbl I assume that by a uid > 1000 you haven't marked the user as a system user? OK, so I wonder how we test this. I've just downloaded the docker debian:latest and that doesn't replicate the issue with 1.8.0 |
and I've just tried docker pull debian:9.6 and haven't got this issue either and 1.8 and 1.7.6 |
@zeripath correct, I just used Hmm, have you done everything according to the installation guide? Because that's what I did. I'll see if I can try this on a fresh debian install this week. I'm not sure when I have time for that though. |
OK, I mean I can start from the command line - I think getting systemd started on a debian docker is fairly difficult. |
|
|
Damn if we can't replicate this we can't be sure that osusergo will actually fix it. |
Hmm what's the result of: dpkg -l libc6 mine is: |
So we're fairly certain that #6862 will fix this. We'll get it backported to the 1.8 line but that won't fix the other releases at present. |
[x]
):Description
After upgrading from gitea version 1.6.4 to 1.7.0 (replacing gitea binary with new one) I'm unable to start gitea. The gitea service fails with the following message (
service gitea status
):If I try to run it directly via
gitea web
I get the following:Gist
More logs:
I get this error with every version greater than 1.6.4. All permissions were set the same with every version I tried. I haven't tried building gitea myself since this is something I only want to do if there really is no other way.
The text was updated successfully, but these errors were encountered: