4634.99.1
by Naoki INADA
import doc-ja rev90 |
1 |
スマートサーバーを稼働させる |
2 |
============================ |
|
3 |
||
4 |
BazaarはHTTP、FTPもしくはSFTPを通して動作するので特化したサーバーは\ |
|
5 |
必須ではありません。 |
|
6 |
SSH、inetd、もしくは専用モードで起動できるスマートサーバー(smart server)\ |
|
7 |
の選択肢があります。 |
|
8 |
||
9 |
ダムサーバー |
|
10 |
------------- |
|
11 |
||
12 |
HTTP、FTP、SFTPとHTTP-WebDAVを"ダム(dumb)"サーバーとして記述します。 |
|
13 |
これらはBazaarに支援を提供しないからです。 |
|
14 |
これらのプロトコルのどれかを通してBazaarリポジトリを利用できるようにする場合、 |
|
15 |
Bazaarはリモートからの読み込みを許可します。 |
|
16 |
実行しているBazaarコマンドの中でブランチへのURLを入力するだけです。:: |
|
17 |
||
18 |
bzr log http://bazaar-vcs.org/bzr/bzr.dev |
|
19 |
||
20 |
BazaarはFTP、SFTPと(プラグインを通した)HTTP-WebDAVを通した書き込みをサポートします。 |
|
21 |
||
22 |
ハイパフォーマンスなスマートサーバー |
|
23 |
------------------------------------- |
|
24 |
||
25 |
ハイパフォーマンスなスマートサーバー(hpss - high-performance smart server)は\ |
|
26 |
いくつかのオペレーションをダムサーバーよりも遙かに高速に実行します。 |
|
27 |
開発者がパフォーマンスのチューニングを継続するので、将来のリリースでは\ |
|
28 |
スマートサーバーを利用することで改善されるオペレーションの範囲は増えます。 |
|
29 |
||
30 |
高度なセキュリティの維持を可能にするために、 |
|
31 |
デフォルトでは現在のスマートサーバーはリードオンリーになります。 |
|
32 |
読み込みと書き込み権限を有効にするには、 ``--allow-writes`` で動かします。 |
|
33 |
SSHアクセスメソッドを利用するとき、bzrは ``--allow-writes`` オプションで\ |
|
34 |
自動的に実行します。 |
|
35 |
||
36 |
次はスマートサーバーの代替の設定方法を説明します。 |
|
37 |
||
38 |
SSH |
|
39 |
~~~ |
|
40 |
||
41 |
SSHを通してBazaarを利用する際にサーバー上の特別な設定は必要ありません:: |
|
42 |
||
43 |
BZR_REMOTE_PATH=~/bin/bzr bzr log bzr+ssh://host/path/to/branch |
|
44 |
||
45 |
``BZR_REMOTE_PATH`` 環境変数はリモートシステムで `bzr` が起動する方法を調整します。 |
|
46 |
デフォルトでは単に `bzr` として起動するので、 `bzr` 実行ファイルはデフォルトの\ |
|
47 |
検索パス上にあることが要求されます。 |
|
48 |
||
49 |
``bzr+ssh://`` URLスキームはファイルシステムのrootからの絶対パスだけをサポートします。 |
|
50 |
将来のバージョンでは ``sftp://`` URL (https://bugs.launchpad.net/bzr/+bug/109143) と同じように |
|
51 |
``~`` もサポートされる予定です。 |
|
52 |
||
53 |
inetd |
|
54 |
~~~~~ |
|
55 |
||
56 |
この例では ``/srv/bzr/repo/branchname`` にブランチがある ``/srv/bzr/repo`` 内の |
|
57 |
共用リポジトリ用に専用ユーザーの `bzruser` で `bzr` を実行する方法を示しています。 |
|
58 |
||
59 |
inetdからBazaarサーバーを動かすにはinetd.confエントリが必要です:: |
|
60 |
||
61 |
4155 stream tcp nowait bzruser /usr/bin/bzr /usr/bin/bzr serve --inet --directory=/srv/bzr/repo |
|
62 |
||
63 |
クライアントコマンドを実行するとき、提供するURLは |
|
64 |
inetd.confに渡される ``--directory`` オプションに相対的な `bzr://` です:: |
|
65 |
||
66 |
bzr log bzr://host/branchname |
|
67 |
||
68 |
専用サーバー |
|
69 |
~~~~~~~~~~~~~ |
|
70 |
||
71 |
このモードはinetdモードと同じパスとURLのふるまいを持ちます。 |
|
72 |
特定のユーザーとして実行するには、 ``su`` を使うもしくはそのユーザーとしてログインします。 |
|
73 |
||
74 |
この例では公式のポート番号の `4155` 上でbzrを稼働しすべてのインターフェイス上でリスンします。 |
|
75 |
これによってポート `4155` 上のマシンに到達できる世界のどこからでも接続できます。 |
|
76 |
||
77 |
サーバー:: |
|
78 |
||
79 |
bzr serve --directory=/srv/bzr/repo |
|
80 |
||
81 |
クライアント:: |
|
82 |
||
83 |
bzr log bzr://host/branchname |
|
84 |
||
85 |
この例では `localhost` のポート `1234` で ``bzr serve`` が実行されます。 |
|
86 |
||
87 |
サーバー:: |
|
88 |
||
89 |
bzr serve --port=localhost:1234 --directory=/srv/bzr/repo |
|
90 |
||
91 |
クライアント:: |
|
92 |
||
93 |
bzr log bzr://localhost:1234/branchname |
|
94 |