Archive for the ‘LINUX’ Category



29
1月

次の自宅サーバー機の構成(予定)


今回はあまっているパーツを使いまわそう!ということで下記構成を予定しています。

■余ってるパーツ
M/B: M4N78 PRO
CPU: Phenom II X4 955 Black Edition
Mem: Patriot Memory PSD24G800KH
HDD: Seagate 150Gx2

■購入予定のパーツ
ケース: CoolerMaster Silencio 450
CPUクーラー: ANTEC KUHLER-H2O-620
電源: Enhance RAGE POWER プラグ 700W

自宅サーバーにしてはTDPが高いCPUなのがちょっとアレなんですが・・・

とりあえず、電源とCPUにあわせたクーラーと静穏性重視のケースを新調してみようと思っております。

現在の自宅サーバーは欲しいという知り合い(彼女が未だに旧デスクトップなCeleronマシンらしい)がいるので譲る予定です( ´ー`)

27
1月

自宅のDNSサーバーの障害の原因が分かったかも


自宅のDNSサーバーが原因不明の障害の原因がまったく分からなかったわけですが、

昨日たまたまSSHで自宅サーバーにログインしていたら、いきなりプツッっとセッションが切れたので、messegesを確認してみたところネットワークがプチプチと切れていたことが判明したのです。

さらに過去のmessagesをチェックしてみたら丁度DNSサーバーの障害が発生したころからeth0がlink down→upを繰り返していたので、DNSもこれが原因なんじゃね?

っというのが原因としてかなり濃厚・・・

とりあえず余っていたネットワークカードに交換して、最悪名前解決できなくても問題ないドメイン1つを自宅のDNSサーバーに戻して現在様子見中です。

まぁ~今の自宅サーバーも間もなく5年経つのでそろそろ新調したいなぁ・・・とは思っていたのでこれはいいきっかけかもしれませんね( ´ー`)

幸いにも月末あたりに新しいパーツが揃いそうなので、今度はVine6の64bit環境で構築したいと思います!

24
1月

自宅のDNSサーバーが原因不明の障害(なのかどうかも未だ不明)


おそらく先週の水曜日あたりからだと思うのですが、何故か外から自宅サーバーにアクセスできなくなりました。

サーバーそのものにはまったく異常がなかったので試しにdigコマンドを叩いてみたら名前解決ができていない・・・

自宅サーバーのBINDはちゃんと動いてるし、digコマンドでネームサーバーに自宅サーバーを指定すればちゃんと帰ってくる。

念のため、BINDのdebugログを出力させてエラーがないかチェックしてみたけど特に問題なし・・・

完全お手上げ状態∩(・∀・)∩

仕方ないので、外部の無料DNSサービスに登録して現在はアクセスできるようになりました。

自宅サーバーで運用しているドメインは自分のが3つと知り合いのが1つあるのですが、1つのドメイン(com)はお名前.comに、2つのドメイン(汎用JP)は@ドメイン(ラットさん)、知り合いのドメインはVALUEDOMAINの無料ネームサーバーサービスにそれぞれ移しました。

自宅サーバーを運用して10年くらい経ちますがこんなことは初めてです。

何が原因なのか分からないのが非常に気持ち悪いです・・・

14
1月

PHP5.3.9がリリースされてた


ということで早速RPMを作成して自宅サーバーのPHPをアップグレード

欲しい方は下記からどうぞ~

Vine5.xで作ったRPM/SRC.RPM集

22
12月

TortoisesvnでcommitしたらWWWのDocumentRootに自動で反映させる方法(+ポートフォワーディング)


掲題のことを実現するために、まずwebdav経由の方法を考えたのですが、自宅サーバーはcgiはsuexec、phpはsuphpにより実行権限がディレクトリのオーナー(ユーザ)権限で実行されるため、webdavは現実的ではないと判断。(webdav経由だとcommit等がapacheユーザで実行されてしまうため、権限の問題が出てしまうので・・・)

次に、ssh経由の方法を考えたのですが、これも難点があって現実的ではないと判断。

何故かというと、自宅サーバーは外部から接続する場合、ゴニョゴニョして接続元のIPを許可した後、秘密鍵を使ってログインできるようになっています。これだけならいいのですが、許可したIPは一定時間経過すると自動的に無効になるようにしてあるため、commit等を行う度に毎回ゴニョゴニョしてIPを許可して・・・なんて面倒なことをやっていられないわけです。

で、最終的に、sshでポートフォワーディングさせる方法に行き着いたわけです。

■サーバー側の準備
1.svn管理+WWW公開用のアカウントを作成(以下svnuser)
2.svnuserでパスワード無しの公開鍵と秘密鍵を作成

su - svnuser ssh-keygen -t rsa


3.公開鍵をリネーム
cd .ssh/ mv id_rsa.pub authorized_keys


4.秘密鍵(id_rsa)をTortoisesvnを使うクライアントPCに持ってくる
5.svn管理用ディレクトリを作成
mkdir /home/svnuser/svnrepos


6.svnリポジトリを作成
svnadmin create /home/svnuser/svnrepos/hoge(任意の名称)


7.WWWのドキュメントルートが自動更新されるようpost-commitを設置
cd /home/svnuser/svnrepos/hoge/hooks mv post-commit.tmpl post-commit vi post-commit ----- REPOS="$1" REV="$2" #commit-email.pl "$REPOS" "$REV" commit-watchers@example.org #log-commit.py --repository "$REPOS" --revision "$REV" /usr/bin/svn up /home/svnuser/public_html/hoge/ ----- chmod 755 post-commit


8.自動更新の対象となるWWWディレクトリを作成
mkdir /home/svnuser/public_html/hoge


9.自動更新対象のディレクトリをチェックアウト
cd /home/svnuser/public_html/hoge svn checkout file:///home/svnuser/svnrepos/hoge ./

■クライアント側の準備
1.Puttyの公式から「putty.exe」「pageant.exe」「puttygen.exe」をダウンロードしてTortoisesvnのbinフォルダに保存
2.TortoiseSVNの設定メニューからネットワークの設定メニューを出して、SSHクライアントをTortoisePlink.exe(若しくはPuttyの公式からダウンロードしたplink.exe)を選択しておく
3.puttygen.exeを起動して「Load」をクリックしサーバーで作成した秘密鍵(id_rsa)を読み込む(Putty用にコンバートするか?聞かれるのでYesを選択)
4.3が完了したら「save private key」をクリックして適当な名前で保存
5.putty.exeを起動して下記を設定

■Session HostName:SSHの接続先IPまたはホスト Port:SSHの接続先ポート Connection Type:SSH Saved Session:任意の接続名称(例:svnssh) ■Connection>Data Auto-Login username:SSHでログインするユーザ(例:svnuser) ■Connection>SSH>Auth Attempt authentication using Pagent:チェックを入れる Private key file for authentication:4で作成した秘密鍵をセット ■Connection>SSH>Tunnels Source port:1024以上の任意のポート番号を設定(例:10022) Destination:localhost:22(自宅サーバーから自宅サーバーのSSHに接続) Addをクリックして保存


6.Sessionの項目に戻り「Save」をクリックして保存
7.putty.exeで続いて下記を設定
■Session HostName:localhost(クライアントPC自身のIP) Port:5のSource portで設定したポート番号(例:10022) Connection Type:SSH Saved Session:任意の接続名称(例:svntunnel) ■Connection>Data Auto-Login username:SSHでログインするユーザ(例:svnuser) ■Connection>SSH>Auth Attempt authentication using Pagent:チェックを入れる Private key file for authentication:4で作成した秘密鍵をセット Addをクリックして保存


8.Sessionの項目に戻り「Save」をクリックして保存
9.pageant.exeを起動して「Saved Sessions」から「svnssh」>「svntunnel」の順に接続する

これでTortoisesvnでcommitすると「/home/svnuser/public_html/hoge」も自動で更新されるようになるし、毎回パスワードを聞かれることもありません。

これで開発が楽になりました( ´ー`)

See Also
Subversionへポートフォワード+puttyで自動ログイン
【Subversion】mod_dav_svn(apache)経由でCommitした時に自動的にupdateを行う

15
12月

自宅サーバーの監視をデータホテルパトロールに変更


今までプロバイダのレンタルスペースに、自作のサーバー監視スクリプトを設置して、自宅サーバーを監視していたのですが、プロバイダを変更したため、使えなくなってしまいました。

そこで無料の監視サービスを探していたところ、ライブドアのサーバー監視サービス「データホテルパトロール」というのが結構よさげだったので使ってみました。

とても良い感じです( ´ー`)b

無料でこれだけの機能を提供してくれるなんてステキです♪

欲を言えばHTTPでGETした文字列を比較する機能があったらよかったんだけど、現状で十分満足です。

1
12月

Ubuntuの人気に陰り?


最近Ubuntu人気に陰りが出てきたらしい。

Ubuntu の人気が急降下 ― Unity の採用が原因か?

Ubuntuに変わって人気が急上昇中なのがLinuxMintらしい。

LinuxMintは触ったこと無いなぁ~。

今度、VirtualBoxに入れてみようかな。

9
11月

Poderosaが密かに更新されてた


Gigazineでなぜ今更Poderosaを紹介してるんだ???

っと思って最後の追記を読むと・・・・なんと密かに開発が進んでいるようなのです。

公式のTOPを見ると2006年で開発が止まっているように見えますが、フォーラムでひっそりと進めていたようです。

Poderosaフォーラム

私は数年前にRLoginに切り替えてしまったのですが、Poderosaの開発が進んでいたとは・・・

24
8月

PHP5.3.7に重大なバグ


PHP 5.3.7に重大なバグ、strncatの罠にはまる

アップグレードしなきゃなぁ・・・

と思っていた矢先にコレ。

Vine6に移行するまでアップグレードはやめておこうかな。

22
8月

vineのアップグレードどうしようかなぁ・・・


vine6のDVDイメージをダウンロードしてきて、試しにVirtualBox上のVine5.2をアップグレードしてみたのですが、

なぜか途中でエラーが出て止まってしまう(´・ω・`)

新規で再構築はしんどいなぁ・・・

どうするかなぁ・・・

もうちょっと調べてみるかな。

Celadon theme by the Themes Boutique