Subject: Re: git-daemon serving repos with repo.git/git-daemon-export-ok

From: John Griessen <[email-masked]>
Date: Mon, 03 Jan 2011 19:58:47 -0600

On 01/03/2011 05:55 PM, Jonathan Nieder wrote:

>> I can push to these repos with gitosis, and the permissions are:
>>
>> vking@mail:/srv/gitosis/repositories$ ll
>> total 16
>> drwxr-xr-x 7 gitosis gitosis 4096 Dec 30 12:32 extrudator.data.git
>
> So the gitdaemon user (used by git-daemon-run) wouldn't be able to
> access them.

It would be able, since I used
sudo strace -o strace.out /usr/lib/git-core/git-daemon --verbose --strict-paths --user=git --group=gitosis /srv/gitosis/repositories

git-daemon was asked to run as --user=git --group=gitosis, so it had read permissions and
there was no user git-daemon anymore -- removed it from /etc/passwd.

>
>> vking@mail:/etc/sv$ cat strace.out
>> execve("/usr/lib/git-core/git-daemon",
>> ["/usr/lib/git-core/git-daemon", "--verbose", "--strict-paths",
>> "--user=git", "--group=gitosis", "/srv/gitosis/repositories"], [/*
>> 10 vars */]) = 0
>
> In this case simple --verbose output would probably be more useful.
> (That's what cat-ing /var/log/git-daemon/current would have given
> if git-daemon-run were still installed.)

I tried this

sudo /usr/lib/git-core/git-daemon --verbose --strict-paths --user=git --group=gitosis /srv/gitosis/repositories  &>git-daemon-err.log

vking@mail:~$ cat git-daemon-err.log

and git-daemon-err.log was empty.  Not the same as the /etc/sv/run script.  Should I reinstall
debian's git-daemon-run to do some tests?

>
> Thanks for the strace.  I should have mentioned that strace -f can
> help by following child processes, though that doesn't seem to be
> an issue here.  It looks like another git-daemon process is running at
> the same time?  (One can check with "netstat -t -a".)

Nope, not as far as I can see.  What suggests that?

vking@mail:/etc/sv$ netstat -t -a
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 *:discard               *:*                     LISTEN
tcp        0      0 *:git                   *:*                     LISTEN
tcp        0      0 localhost:mysql         *:*                     LISTEN
tcp        0      0 *:daytime               *:*                     LISTEN
tcp        0      0 localhost:sunrpc        *:*                     LISTEN
tcp        0      0 *:www                   *:*                     LISTEN
tcp        0      0 localhost:690           *:*                     LISTEN
tcp        0      0 cottagematic.com:domain *:*                     LISTEN
tcp        0      0 mail.cibolo.us:domain   *:*                     LISTEN
tcp        0      0 localhost:domain        *:*                     LISTEN
tcp        0      0 *:ssh                   *:*                     LISTEN
tcp        0      0 *:telnet                *:*                     LISTEN
tcp        0      0 localhost:postgresql    *:*                     LISTEN
tcp        0      0 *:smtp                  *:*                     LISTEN
tcp        0      0 *:time                  *:*                     LISTEN
tcp        0      0 *:ldap                  *:*                     LISTEN
tcp        0      0 mail.cibolo.us:ssh      cpe-66-68-104-159:47248 ESTABLISHED
tcp        0    224 mail.cibolo.us:ssh      cpe-66-68-104-159:47247 ESTABLISHED
tcp6       0      0 *:pop3                  *:*                     LISTEN
tcp6       0      0 *:imap2                 *:*                     LISTEN
tcp6       0      0 *:ssh                   *:*                     LISTEN
tcp6       0      0 *:imaps                 *:*                     LISTEN
tcp6       0      0 *:pop3s                 *:*                     LISTEN
tcp6       0      0 *:ldap                  *:*                     LISTEN
tcp6       0      0 mail.cibolo.us:imaps    cpe-66-68-104-159:58203 ESTABLISHED
tcp6       0      0 mail.cibolo.us:imaps    cpe-66-68-104-159:58226 ESTABLISHED
tcp6       0      0 mail.cibolo.us:imaps    cpe-66-68-104-159:48747 ESTABLISHED
tcp6       0      0 mail.cibolo.us:imaps    cpe-66-68-104-159:58175 ESTABLISHED
tcp6       0      0 mail.cibolo.us:imaps    cpe-66-68-104-159:58174 ESTABLISHED
tcp6       0      0 mail.cibolo.us:imaps    cpe-66-68-104-159:48951 ESTABLISHED
tcp6       0      0 mail.cibolo.us:imaps    cpe-66-68-104-159:52013 ESTABLISHED
tcp6       0      0 mail.cibolo.us:imaps    cpe-66-68-104-159:52012 ESTABLISHED
tcp6       0      0 mail.cibolo.us:imaps    cpe-66-68-104-159:52015 ESTABLISHED
tcp6       0      0 mail.cibolo.us:imaps    cpe-66-68-104-159:52014 ESTABLISHED
tcp6       0      0 mail.cibolo.us:imaps    cpe-66-68-104-159:47076 ESTABLISHED
tcp6       0      0 mail.cibolo.us:imaps    cpe-66-68-104-159:47079 ESTABLISHED
tcp6       0      0 mail.cibolo.us:imaps    cpe-66-68-104-159:47078 ESTABLISHED

John Griessen