$ sudo apt-get install git-daemon-run
安裝後會創建下面兩個用戶
$ cat /etc/passwd | grep git gitlog:x:117:65534::/nonexistent:/bin/false gitdaemon:x:118:65534::/nonexistent:/bin/false
git-daemon-run 包攜帶的檔案
$ dpkg -L git-daemon-run /. /etc /etc/sv /etc/sv/git-daemon /etc/sv/git-daemon/run /etc/sv/git-daemon/log /etc/sv/git-daemon/log/run /usr /usr/share /usr/share/doc /usr/share/doc/git-daemon-run /usr/share/doc/git-daemon-run/changelog.gz /usr/share/doc/git-daemon-run/changelog.Debian.gz /usr/share/doc/git-daemon-run/README.Debian /usr/share/doc/git-daemon-run/copyright
同時創建下面配置檔案
$ find /etc/sv/git-daemon/ /etc/sv/git-daemon/ /etc/sv/git-daemon/run /etc/sv/git-daemon/supervise /etc/sv/git-daemon/log /etc/sv/git-daemon/log/run /etc/sv/git-daemon/log/supervise
編輯/etc/sv/git-daemon/run配置
$ sudo vim /etc/sv/git-daemon/run #!/bin/sh exec 2>&1 echo 'git-daemon starting.' exec chpst -ugitdaemon \ "$(git --exec-path)"/git-daemon --verbose --reuseaddr \ --base-path=/var/cache /var/cache/git
git-daemon --verbose --reuseaddr \ --base-path=/var/cache /var/cache/git 改為 git-daemon --verbose --reuseaddr \ --enable=receive-pack --export-all --base-path=/opt/git
提示 | |
---|---|
* 我加上了一個--export-all 使用該選項後,在git倉庫中就不必創建git-daemon-export-ok檔案。 其他選項--enable=upload-pack --enable=upload-archive --enable=receive-pack |
/etc/services 檔案中加入
# Local services git 9418/tcp # Git Version Control System
確認已經加入
$ grep 9418 /etc/services
啟動git-daemon
$ sudo sv stop git-daemon or $ sudo runsv git-daemon runsv git-daemon: fatal: unable to change to directory: file does not exist
掃瞄git連接埠,確認git-daemon已經啟動
$ nmap localhost Starting Nmap 5.00 ( http://nmap.org ) at 2012-01-31 10:45 CST Warning: Hostname localhost resolves to 2 IPs. Using 127.0.0.1. Interesting ports on localhost (127.0.0.1): Not shown: 989 closed ports PORT STATE SERVICE 21/tcp open ftp 22/tcp open ssh 53/tcp open domain 80/tcp open http 111/tcp open rpcbind 139/tcp open netbios-ssn 445/tcp open microsoft-ds 1723/tcp open pptp 3128/tcp open squid-http 3306/tcp open mysql 9418/tcp open git