2012年5月5日土曜日

CygwinでCVSサーバーを立てる - EclipseWiki


詳しい方法は

インストールプログラムは、ネット上から必要なモジュールを選択してインストールする仕様になっているので、NETカテゴリにあるinetutilsとDEVELにあるcvsを忘れずにチェックしておく。

初期設定 †

環境変数でCygwinのインストールフォルダにPATHを通しておく。

  • PATHを通すのは「インストールフォルダ/bin」のようです。
  • 2000/XPでinetdをサービス化する場合は要マシン再起動 (PATHの変更を反映するため)

Win9xならautoexec.batを編集。 2000/XPは「コントロールパネル」-「システム」の詳細タブから環境変数。

$ mkpasswd -l > /etc/passwd  $ mkgroup -l > /etc/group  $ /usr/bin/iu-config

順にパスワードの設定、グループの設定、/etc/inetd.confの作成。
最後の一行はこんな質問がくる。全部yesでいいと思う。

Overwrite existing /etc/ftpusers file? (yes/no) yes  Creating default /etc/ftpusers file  Overwrite existing /etc/ftpwelcome file? (yes/no) yes  Creating default /etc/ftpwelcome file  Overwrite existing /etc/inetd.conf file? (yes/no) yes  Creating default /etc/inetd.conf file  Overwrite existing /etc/motd file? (yes/no) yes  Creating default /etc/motd file  Overwrite existing /etc/shells file? (yes/no) yes  Creating default /etc/shells file

ちなみにオプションで

Options:     --debug  -d     Enable shell's debug output.     --yes    -y     Answer all questions with "yes" automatically.     --no     -n     Answer all questions with "no" automatically.

とある。全部yesなら「-y」をつけると少し幸せになれるかも。

inetdの起動 †

2種類やり方が選べます。


ラップトップはLinux RedHat 9でフルスクリーン表示されません。

サービスとして起動する。(2000/XP向け) †

$ /usr/sbin/inetd --install-as-service((サービスから消したいときはinetd --remove-as-service))

その後、「管理ツール」−[サービス]のCYGWIN inetdを起動する。*1*2*3

スタートアップに登録する。(9x向け) †

inetd が C:\cygwin\usr\sbin\inetd.exe にあるとする。 inetd.exe のショートカットを作成し、ショートカットのプロパティのリンク先を 'C:\cygwin\usr\sbin\inetd.exe -d' と、オプション '-d' を付け加える。

スタートアップフォルダに追加する。

確認 †

適当にtelnetでもしてみて下さい。

CVSの設定 †

初期設定 †

まずは、レポジトリのルートディレクトリを決める。 今回はとりあえず、/var/cvsとして話を進める。

$ export CVSROOT=/var/cvs((当然~/.bashrcあたりに記述しておいてもかまいません。))  $ mkdir /var/cvs  $ cvs init

パスワードの作成 †

$CVSROOT/CVSROOT/passwdに

ユーザー名:暗号化されたパスワード

といったリストを記述する。

パスワードの暗号化はcryptコマンドを用いる。

例えば、ユーザー名が「hoge」、パスワードが「piyopiyo」なら

echo -n "hoge:" >> $CVSROOT/CVSROOT/passwd  crypt Zz piyopiyo >> $CVSROOT/CVSROOT/passwd

「Zz」は任意のアルファベット2文字。(ランダムで作った方がいいのですけどね・・・)


スクリーンセーバー]タブを非表示にする方法

このときユーザー名は初期設定の時に登録してあるユーザー名を使わないとinetdにつっぱなれるらしいので、注意。とりあえずは、すでにある自分のユーザーアカウントを使うのが安全。(cvsanoyを作りたかったら、同名のユーザーを登録して、ユーザーグループを分けた後にパーミッションを区切らないといけないと言うことですね。) 2003-01-24追記

passwdファイルの改行コードはLFになるように設定してください。CRLFで保存してしまうとうまくユーザの認識をしてくれません。つまり、passwdファイルには下記のような形でユーザ名を保存しなければ、EclipseのCVSの認証で、no such userというエラーではじかれてしまいます。2003-02-03 追記

<任意のユーザ名>:<暗号化したパスワード>:[LF]

passwdファイルの例は下記のとおり

Administrator::Administrator[LF]  hoge:ZzEpcdUPaSLTs:Administrator[LF]  [EOF]

サーバー関係の設定 †

%WINDOWS%/system32/drivers/etc/servicesに以下の1行を追加。(%WINDOWS%はWindowsをインストールしたディレクトリ。)

cvspserver 2401/tcp

次に/etc/inetd.confに以下の1行を追加。

cvspserver stream tcp nowait root /bin/cvs cvs --allow-root=/var/cvs pserver

その後、inetdを再起動すれば、とりあえずpserverが動いているはず。

inetdのかわりにxinetdを使う場合の設定 †

サーバ関係の設定として、CVSラッパを記述する必要があります。 ディレクトリ /etc/xinetd.d の下に cvspserver という名前のファイルを作り、次のように書いてください。


PHP-核8.0をインストールする方法
 service cvspserver   {       socket_type  =  stream       user  =  SYSTEM       wait  =  no       server  =  /usr/bin/cvs       server_args  =  -f  --allow-root=/var/cvs  pserver   }

コマンド行から

 $ cvs -d :pserver:hogの中にある cvsweb.cgi, cvsweb.conf を Apache の cgi-bin(cgi の実行可能なディレクトリ。cygwin での標準は /var/www/cgi-bin)にコピーします。
  • CVS Root のディレクトリの位置を設定します。cvsweb.conf の 以下の行を編集します。(/var/cvs に CVS リポシトジが格納されている場合の例)
 @CVSrepositories = (     'local'   => ['Local Repository', '/var/cvs'],
  • cvsweb-?.?.?.tar.gz の中にある icons/ のファイルを、HTTPサーバで使われるアイコン表示のための画像を格納するディレクトリ(cygwin の標準では /var/www/icons)へコピーします。

(リポシトジに格納されたファイルを閲覧する際、セキュリティの関係で chdir がうまくいかない、という主旨のメッセージが出る Perl 拡張ライブラリのバージョンがあります。その際は、cvsweb.cgi の先頭の行の Perl の起動オプションに「U(危険な動作の警告を解除する)」を付けます。)


  #!/usr/bin/perl -wTU

cygwin の Apache をサービスとして追加する †

  • /etc/apache/httpd.conf のユーザ、グループのエントリを変更します。
  User Guest    Group Guests
  • /usr/sbin/apachectl start でウェブサーバが動作することを確認します。
  • 以下のコマンドでサービスを登録します
  $ cygrunsrv --install cygwin_apache \      --path /usr/sbin/httpd \      --args -F \      --env "CYGWIN=ntsec nosmbntsec binmode tty"
  • サービスを起動します。
  $ net start cygwin_apache

その他 †

不足していると思ったことを書き足してあげて下さい。 とりあえずは

  • cvswrapperのこと。
  • sshでポートフォワーディング。

くらいでしょうかね?

ネットワーク越しに使うならばhosts.allowの設定も書いておいた方がよさそうですよね。

taro



These are our most popular posts:

Windows XP SP2 ファイル共有のトラブル - Windows系OS - 教えて!goo

2008年2月23日 ... Windows XP SP2でファイル共有を行っているのですが、一部のフォルダ、ファイルに アクセスできず困っています。Windows 2000 ... できますが、 3階層下のフォルダに アクセスしようとすると、「アクセスが拒否されました」と表示され、アクセスできません。 ... されます。 なぜ、ルートフォルダ に適用した everyone のアクセス権が、 ... read more

Xp Service Pack2 セットアップが取り消されました。

バグ(不具合)が含まれているかもしれないので、公開されてからすぐに適用するのは 危険と思い、適用を控えていました。 ... ウイルス対策ソフト、スパイウエア検知・除去 ソフトやファイヤーオールソフトを使い、セキュリティ対策は行ってきましたが、 WindowsUpdateができない状態というのは、好ましい状況ではありませんね。 ... SP1 のパソコンにSP2を適用する手順ですが、これはWindowsUpdateで行うことができます 。 ... 「Windows XP Service Pack 2 のインストール時に、アクセス拒否のエラー メッセージが表示される ... read more

Vistaとの共有ができない(1/2)

アクセスが拒否されました 診断 キャンセル ... しかし、VistaからXPのPCは見えてはい ます、ただ、そのアイコンをダブルクリックしても、アクセス権がないと、はねられて ... 値 を変更しましょう、という話になったので、それはバックアップもとりたいし、ちょっと月曜 まで待ってくれ、と言っています。そんな、PC共有なのに、レジストリまでいじるほどの ことかな、とも思うのです。共有できない原因はどこにあるのでしょう。 XP…NEC LaVie LL350/C Home SP2 ... 2人が「このQAが役に立った」と投票しています ... read more

フォルダーを開くしようとするとエラー メッセージ「アクセスが拒否されました」

2011年12月18日 ... ( : windows.microsoft.com/en-us/windows/help/end-support-windows-xp-sp2- windows-vista-without-service-packs). Edit this article Edit Article ... Windows 7 アクセス拒否のメッセージが表示されている場合は、ファイルを開く操作を行います。 ... マイクロソフトは、機械翻訳システムの改善を継続的に行っています。 read more

Related Posts



0 コメント:

コメントを投稿