2011年1月27日 星期四

安裝 mercurial server

筆記一下 mercurial server 安裝過程。

照著 README 所言打 sudo make setup-adduser, 結果出現錯誤, 看起來是缺一些 package 無法產生文件。反正用不到文件, 看了一下 Makefile, 找出必要部份, 一步步自己 make, 跳過產生文件那步 即可:
  1. sudo make installetc
  2. sudo make pythoninstall
  3. sudo make adduser
  4. sudo make inituser
mercurial server 認 public key 管權限, 看一下官網文件就會懂怎麼用。先將第一個使用者加入  root 權限:
  1. sudo cp ~/.ssh/id_rsa.pub /etc/mercurial-server/keys/root/USER
  2. sudo -u hg /usr/local/share/mercurial-server/refresh-auth
第二步會將 key 加入 hg 帳號的 authorized_keys 裡。用 USER 執行 ssh hg@localhost 後看到以下的訊息表示 key 有設好:
mercurial-server: direct logins on the hg account prohibited
Connection to localhost closed.
有 root 後, 再來透過 repository hgadmin 來管比較方便, 也可以留 commit log:
  1. hg clone ssh://hg@localhost/hgadmin ~/hgadmin
  2. cd ~/hgadmin/
  3. mkdir -p keys/root/
  4. mkdir keys/root/USER
  5. cp PUBLIC_KEY_OF_USER_AT_HOST keys/root/USER/HOST
  6. hg add keys/root/USER/HOST
  7. hg ci -m 'Add USER@HOST with root permission'
  8. hg push
push 後就會更新結果。若需要做細部的設定, 參考官網文件修改 /etc/mercurial-server/access.conf。

沒有留言:

張貼留言

在 Fedora 下裝 id-utils

Fedora 似乎因為執行檔撞名,而沒有提供 id-utils 的套件 ,但這是使用 gj 的必要套件,只好自己編。從官網抓好 tarball ,解開來編譯 (./configure && make)就是了。 但編譯後會遇到錯誤: ./stdio.h:10...