ircサーバの構築
環境
- CentOS 5.3
インストール
# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm
/etc/yum.repos.d/epel.repoのenabled=1をenabled=0に変更
# yum --enablerepo=epel install ircd-hybrid # mv /etc/ircd/ircd.conf /etc/ircd/ircd.conf.org # cp /usr/share/doc/ircd-hybrid-7.2.3/simple.conf /etc/ircd/ircd.conf # service ircd start
ViewGitのインストール
本家: http://viewgit.sourceforge.net/
インストール
最新版はhttp://sourceforge.net/project/showfiles.php?group_id=232733で確認する。
# wget http://nchc.dl.sourceforge.net/sourceforge/viewgit/viewgit-0.0.4.tar.gz # tar vzxf viewgit-0.0.4.tar.gz # mv viewgit-0.0.4 /mnt/drbd/www/viewgit ※インストールディレクトリは適当に読み替える # chown apache.apache -R /mnt/drbd/www/viewgit
localconfig.phpの作成
# cd /mnt/drbd/www/viewgit/inc # mv example-localconfig.php localconfig.php # vi localconfig.php 適当な名前を付けてgitのリポジトリを指定する $conf['projects'] = array( 'base' => array('repo' => '/mnt/drbd/www/git/projects.git'), );
オレオレ証明書をJavaのkeystoreにimportする
on mac
$ sudo keytool -import -file ~/Desktop/server.crt -keystore "/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home/lib/security/cacerts" Password: キーストアのパスワードを入力してください: changeit 所有者: EMAILADDRESS=yam.kazuki@gmail.com, CN=yamkazu.org, O=yamkazu.org, L=Hachioji, ST=Tokyo, C=JP 実行者: EMAILADDRESS=yam.kazuki@gmail.com, CN=yamkazu.org, O=yamkazu.org, L=Hachioji, ST=Tokyo, C=JP シリアル番号: 0 有効日: Mon May 04 02:27:32 JST 2009 有効期限: Thu May 02 02:27:32 JST 2019 証明書のフィンガープリント: MD5: E3:9E:1F:B7:38:D6:04:C6:21:EB:4E:81:D6:D6:3A:6C SHA1: 85:28:6F:4F:72:6D:57:05:92:16:21:01:01:6A:37:FC:70:47:F3:FD この証明書を信頼しますか? [no]: yes 証明書がキーストアに追加されました。
GitリポジトリをWebDAV(+https)経由で公開する
色々やったけどこれで出来た。
インストール
# yum -y instal git-core
WebDAVの設定
# vim /etc/httpd/conf.d/git.conf Alias /git /mnt/drbd/www/git <Location "/git"> DAV on SSLRequireSSL AuthType Basic AuthName "Git" AuthUserFile /mnt/drbd/www/.htpasswd <Limitexcept GET HEAD PROPFIND OPTIONS REPORT> Require valid-user </LimitExcept> </Location>
設定したら反映
# /etc/init.d/httpd reload
Gitリポジトリの作成
# cd /mnt/drbd/www/git/ # mkdir projects.git # cd projects.git # git --bare init # vim description 適当にdescriptionを書く # echo "https://yamkazu.org/git/projects.git" > cloneurl # printf "[gitweb]\n\towner = Kazuki YAMAMOTO\n" >> config # chmod +x hooks/post-update # git update-server-info # cd .. # chown -R apache.apache projects.git
クライアントの準備
httpsを使うにはcurlにオプションつけてインストールしないとダメなので、つけてない場合は一度アンイストール。
# sudo port uninstall git-core # sudo port uninstall curl
httpsアクセスの為の設定
# sudo port edit curl configure.argsのwithout-sslをwith-sslに変更
インストール
# sudo port install curl # sudo port install git-core
オレオレ証明書はGIT_SSL_NO_VERIFY=1をつけないと認証が通らない。毎回つけるのが面倒なのでaliasに設定してしまう。
# vim ~/.bashrc 以下を追加 alias git='GIT_SSL_NO_VERIFY=1 git'
認証情報の設定
# vim ~/.netrc machine yamkazu.org login <ユーザー名> password <パスワード>
パーミッションも変更
# chmod 600 ~/.netrc
動作確認
# git clone http://yamkazu.org/git/projects.git # cd projects # touch README.txt # git add README.txt # git commmit -m "test" # git push origin master
push出来ているか確認する為、適当な場所でcloneする。
# git clone http://yamkazu.org/git/projects.git # ls projects
さっきcommitしたREADME.txtがあればOK。
drbdのインストール
on centos5.3
参考
http://www.atmarkit.co.jp/flinux/rensai/heartbeat04/heartbeat04b.html
http://mojimoji.jp/wiki/index.php?CentOS%2F5.2%2F10.DRBD
DRBD用のパーティションの作成
# fdisk /dev/sda このディスクのシリンダ数は 32635 に設定されています。 間違いではないのですが、1024 を超えているため、以下の場合 に問題を生じうる事を確認しましょう: 1) ブート時に実行するソフトウェア (例. バージョンが古い LILO) 2) 別の OS のブートやパーティション作成ソフト (例. DOS FDISK, OS/2 FDISK) コマンド (m でヘルプ): m コマンドの動作 a ブート可能フラグをつける b bsd ディスクラベルを編集する c dos 互換フラグをつける d 領域を削除する l 既知の領域タイプをリスト表示する m このメニューを表示する n 新たに領域を作成する o 新たに空の DOS 領域テーブルを作成する p 領域テーブルを表示する q 変更を保存せずに終了する s 空の Sun ディスクラベルを作成する t 領域のシステム ID を変更する u 表示/項目ユニットを変更する v 領域テーブルを照合する w テーブルをディスクに書き込み、終了する x 特別な機能 (エキスパート専用) コマンド (m でヘルプ): n コマンドアクション e 拡張 p 基本領域 (1-4) p Selected partition 4 最初 シリンダ (912-32635, default 912): Using default value 912 終点 シリンダ または +サイズ または +サイズM または +サイズK (912-32635, default 32635): Using default value 32635 コマンド (m でヘルプ): p Disk /dev/sda: 268.4 GB, 268435456000 bytes 255 heads, 63 sectors/track, 32635 cylinders Units = シリンダ数 of 16065 * 512 = 8225280 bytes デバイス Boot Start End Blocks Id System /dev/sda1 * 1 13 104391 83 Linux /dev/sda2 14 650 5116702+ 83 Linux /dev/sda3 651 911 2096482+ 82 Linux swap / Solaris /dev/sda4 912 32635 254823030 83 Linux コマンド (m でヘルプ): w 領域テーブルは交換されました! ioctl() を呼び出して領域テーブルを再読込みします。 警告: 領域テーブルの再読込みがエラー 16 で失敗しました: デバイスもしくはリソースがビジー状態です。 カーネルはまだ古いテーブルを使っています。 新しいテーブルは次回リブート時に使えるようになるでしょう。 ディスクを同期させます。
再起動する
DRBDのインストール
# yum -y install drbd82 kmod-drbd82
DRBDの設定
# vim /etc/drbd.conf global { dialog-refresh 0; } common { syncer { rate 10M; } } resource r0 { protocol C; net { cram-hmac-alg sha1; shared-secret "FooFunFactory"; } on centos01.yamkazu.org { device /dev/drbd0; disk /dev/sda4; address 192.168.75.101:7788; meta-disk internal; } on centos02.yamkazu.org { device /dev/drbd0; disk /dev/sda4; address 192.168.75.102:7788; meta-disk internal; } }
詳細は
# man drbd.conf
ファイアーフォールの設定
事前に使用するポートで通信できるように設定しておく。
メタデータ領域の初期化
# drbdadm create-md r0
失敗する場合は作り直す
ディスクを初期化するので注意して実行
# dd if=/dev/zero of=/dev/sda4 bs=1M count=1000 # drbdadm create-md r0
DRBDの起動
# /etc/init.d/drbd start
初回実行時にはsyncが走る
# /etc/init.d/drbd status drbd driver loaded OK; device status: version: 8.2.6 (api:88/proto:86-88) GIT-hash: 3e69822d3bb4920a8c1bfdf7d647169eba7d2eb4 build by buildsvn@c5-x8664-build, 2008-10-03 11:30:17 m:res cs st ds p mounted fstype 0:r0 SyncSource Primary/Secondary UpToDate/Inconsistent C ... sync'ed: 4.0% (195703/203841)M
VMWare ESXi を USBメモリにインストールする
# mkdir /mnt/misc # mount -o loop VMware-VMvisor-InstallerCD-3.5.0_Update_4-153875.i386.iso /mnt/misc # tar zxvf /mnt/misc/install.tgz # bzip2 -d usr/lib/vmware/installer/VMware-VMvisor-big-3.5.0_Update_4-153875.i386.dd.bz2 # dd if=usr/lib/vmware/installer/VMware-VMvisor-big-3.5.0_Update_4-153875.i386.dd of=/dev/sdb bs=1M
/dev/sdb は環境に応じて読み替える。USBメモリ差したあとに/var/log/messagesで/devのどこにあるか確認出来る。
Galileoのプラグイン
3.5M6M7版限定
共通
- [help]-[Install New Software...]を選択
WTP
- Work withからhttp://download.eclipse.org/releases/galileoを選択
- [Web Developer Tools]を選択
- 適当に次へ
- 再起動
- Work withからhttp://download.eclipse.org/releases/galileoを選択
- [Java EE Developer Tools]を選択
- 適当に次へ
- 再起動
Subversive
- Work withからhttp://download.eclipse.org/releases/galileoを選択
- [Subversive SVN Team Provider (Incubation)]を選択
- 適当に次へ
- 再起動
- [add]でhttp://www.polarion.org/projects/subversive/download/eclipse/2.0/update-site/を追加。
- [SVNKit 1.2.2 Implementation (Optional)]を選択
- 適当に次へ
- 再起動
※Suversion1.5.x系を使っている場合は1.2.2、1.6.x系を使っている場合は1.3を選択
FindBugs
- [add]でhttp://findbugs.cs.umd.edu/eclipseを追加
- [FindBugs Feature]を選択
- 適当に次へ
- 再起動
Checkstyle
- [add]でhttp://eclipse-cs.sf.net/update/を追加
- [Eclipse Checkstyle Plug-in]を選択
- 適当に次へ
- 再起動
Viplugin
- [add]でhttp://www.viplugin.com/を追加
- [Statusbar Feature][viPluginFeature]を選択
- 適当に次へ
- 再起動するまえにviPlugin.licenseをインストールディレクトリ直下にコピー
- 再起動
QuickJunit
- [add]でhttp://quick-junit.sourceforge.jp/updates/current/を追加
- [Quick JUnit Plugin]を選択
- 適当に次へ
- 再起動
EGit
- [add]でhttp://www.jgit.org/update-siteを追加
- [Eclipse Git Plugin - Release Build]から[Eclipse Git Feature]を選択
- 適当に次へ
- 再起動
QuickREx
- [add]でhttp://www.bastian-bergerhoff.com/eclipse/featuresを追加
- [QuickREx]を選択
- 適当に次へ
- 再起動