電算室アーカイブ

バーチャル山中家のMTOSには、RebuildAt1stViewプラグインを使っています。
しょっちゅう再構築する私にとって、このプラグインは無くてはならないものになっています。
あと、同じ作者のプラグインで、PreviousNextInCategory互換プラグインも使っています。

さて、新しい記事をポストして、カテゴリー内での前後リンクがうまく貼られた時はいいんですが、前記事から今回の記事へのリンクが張られない(様は前記事が再構築されていない)ケースが時々発生していました。
その記事を上書き保存すればリンクが正しく作成されるのでそうしてもいいんですが、そうすると新着記事一覧に新着でない記事が出てしまうのがイヤ。
なので、その都度ブログ記事の再構築をしていました。
これが時間がかかる・・・(笑)
特定のファイルだけ、再構築できないかな?と考えて・・・

で、「そうか、ファイルがなくて404エラーになったときに、RebuildAt1stViewが呼ばれてファイル作成されるんだから、そのページのファイルを消せばいいじゃん」と気付き、試してみたところうまく行きました。
つまり、RebuildAt1stViewプラグインが入っていたら、誤ってhtmlファイルを消してしまっても大丈夫ってことですね。
(誤って消してしまう時点で大丈夫じゃないけど・・・)

本来の使い方ではないけど、結果オーライなケースとして、紹介しておきます。

サーバの移行、および、旧サーバからの資源移行を行いましたので、コンピュータのプロファイルを更新しました。
以前は、PukiWiki上で管理していましたが、今後はブログ側に移します。

プロファイルは、以下の通りです。

なお、コンピュー三郎 については、変更ありません。

居間のパソコンのFirefoxをVersion3.0にアップしました。
まだ、デザイン以外に変わったなぁという感じを受けませんが、動いているのでよしとしましょう。

前回までの記事は、以下の通りです。

後は、Webサーバの移行だけになりました。
が、これが結構大物。
というのも、バーチャル山中家にはMovable Typeがあるので、mysqlのデータベースも一緒に移動させるからです。
でも、そろそろ家族から 「ここんとこコンピュータばっかり触ってる」 と苦情がきているので、今回で一気にやっちゃいましょう。

11.Webサーバの移行

11.1.mysqlのインストール

山中家では、Movable Type のバックエンドに MySQL サーバを使っているので、まずはそれをインストールします。

portinstall databases/mysql50-server

11.2.Apacheのインストール

Apache はバージョン2を採用しました。

portinstall www/apache22

11.3.Movable Type のインストール

Movable Type も ports からインストールします。

portinstall www/MT

依存関係で、たくさんの ports がインストールされます。
気長に待ちましょう。
というわけで、ここでお昼ご飯を食べに行きます。
(続く)

[前々回}(http://blog.yamanakake.com/2008/06/hpml110g5freebsd_70release.html)、前回の続きです。

8.再起動不能のとりあえずの対策

Google先生に色々聞いてみたところ、またまた おうちサーバ入れ替えというページに行き着きました。
なので、暫定対応として、/boot/loader.conf に ipmi_load="YES" を記述して、/root/.cshrc に alias reboot 'watchdog -t 60; /sbin/reboot' を記述することで、無理やり再起動させることにしました。

9.日本語マニュアルの導入

必須ではないんですが、旧サーバでも入れていたので。
portinstall japanese/man を実行します。
そして、fetch http://home.jp.freebsd.org/%7Ekogane/JMAN/ja-man-doc-7.0.20080530.tbz してから pkg_add ja-man-doc-7.0.20080530.tbz しました。
jless が入ったので、.cshrc の setenv PAGER more を setenv PAGER jless に変更しました。

10.qmail+vpopmailの導入

まずは、portinstall mail/qmail する。
SMTPAUTHPATCH と LOCALTIMEPATCH と DISCBOUNCESPATCH と RCDLINK にチェック。
次に、portinstall mail/vpopmail する。
さらに、portinstall mail/qmailadmin する。
起動用スクリプトを旧サーバからコピーして、起動確認。
ここで新旧サーバのqmail関連をすべてストップ。
旧サーバの /usr/local/vpopmail/domains を tarボールにして新サーバにコピーし、展開。
vadddomain にてバーチャルドメインを作成。(postmasterの作成でエラーが出るが気にしない)
ルーターのメール関連ポート振り向け先を新サーバに変更。
DNSサーバのメールサーバアドレスを新サーバに変更。
なんやかんやして、無事移行を完了。

前回の続きです。

7:dns関連の設定

バーチャル山中家のサーバは、

  • バーチャル山中家ローカルのdnsサーバ
  • インターネット向けのdnsサーバ
  • バーチャル山中家の各マシンに対するdnsリゾルバ

を担います。
好みの問題もあり、面倒なBINDではなく、シンプルなdjbdnsを使用します。

まず、portinstall sysutils/daemontools します。
終わったら /etc/rc.conf に svscan_enable="YES" と追記します。
mkdir /var/service して /usr/local/etc/rc.d/svscan.sh start してみると、Starting svscan. と表示されました。OK、OK。
ps -aux | grep svscan してみると、

root 49425 0.0 0.1 3104 600 ?? S 6:19AM 0:00.00 /usr/local/bin/svscan /var/service

となりました。

さて、山中家ではdnsサーバを2つ起動する予定なので、IPアドレスを2つ用意します。
/etc/rc.conf に ifconfigbge0="inet 192.168.1.1 netmask 255.255.255.0" のような行があるはずです。(bge0の部分はネットワークインターフェースの違いで変わります。)
この行の下に、ifconfig
bge0_alias0="inet 192.168.1.201 netmask 255.255.255.0" という感じで追記します。
すると、この1つのインターフェースに2つのIPアドレスが割り当てられます。
山中家では192.168.1.1を内部用、192.168.1.201を外部用としました。
外部からのDNSリクエストは、ルーターにて192.168.1.201に向けられます。

次に、portinstall dns/djbdns します。依存性にて sysutils/ucspi-tcp もインストールされます。
/etc/passwd ファイルに

dnscache::71:71::0:0:DNS cache:/noexistent:/usr/sbin/nologin dnslog::72:71::0:0:DNS log:/noexistent:/usr/sbin/nologin tinydns:*:73:71::0:0:DNS server:/noexistent:/usr/sbin/nologin

を追加します。
/etc/group ファイルに

dns:*:71:

を追加します。

7.1:内部用DNSサーバの設定

tinydns-conf tinydns dnslog /usr/local/etc/tinydns-i 127.0.0.1 を実行して、内部用設定を作成します。
/usr/local/etc/tinydns-i/root/data を編集して、アドレスの一覧を作成します。
保存したら make し、data.cdb を作成します。
最後に、ln -s /usr/local/etc/tinydns-i /var/service/tinydns-i を実行して、起動用のシンボリックリンクを作成します。

7.2:外部用DNSサーバの設定

tinydns-conf tinydns dnslog /usr/local/etc/tinydns-o 192.168.1.202 を実行して、外部用設定を作成します。
/usr/local/etc/tinydns-o/root/data を編集して、アドレスの一覧を作成します。
保存したら make し、data.cdb を作成します。
最後に、ln -s /usr/local/etc/tinydns-o /var/service/tinydns-o を実行して、起動用のシンボリックリンクを作成します。

7.3:dnscacheの設定

dnscache-conf dnscache dnslog /usr/local/etc/dnscache 192.168.1.2 を実行して、リゾルバ用設定を作成します。
山中家のローカル(192.168.1.*)からの問い合わせに答えるように、

cd /usr/local/etc/dnscache/root/ip touch 192.168.1

します。
また、ローカル内の問い合わせについては、ローカルで処理するように、

cd /usr/local/etc/dnscache/root/servers echo 127.0.0.1 > yamanakake.com echo 127.0.0.1 > yamanakas.net echo 127.0.0.1 > wty.dyndns.org echo 127.0.0.1 > 1.168.192.in-addr.arpa

さらに、flets については flets に聞くように、

echo 10.60.21.72 > flets

それ以外はプロバイダに聞くように、

cd /usr/local/etc/dnscache/env echo 1 > FORWARDONLY cd ../root/servers ee @

202.224.32.1 202.224.32.2 ・・・

とします。
最後に、ln -s /usr/local/etc/dnscache /var/service/dnscache を実行して、起動用のシンボリックリンクを作成します。
(2008/06/19 18:00より、DNSサービスを新サーバに移行しました。)

山中家にやってきたHP ML110 G5サーバにFreeBSD 7.0-RELEASEを導入していく作業について、ここにメモを公開します。

1.FreeBSDのCDを作成

まずは、FreeBSDのftpサイトのどこかからISOイメージファイルを持ってきて、CD-Rに書き込むという作業です。
一応、disc1, disc2, disc3 の3枚を作成しました。

2.CDから起動してインストール

作成したdisc1をCD-RWドライブに差し込んで立ち上げると、インストーラーが起動します。
そんなに難しい作業ではないので、詳細は省略しますね。
標準装備のHDDに、

  • 1024MBを/
  • 3072MBをswap
  • 2048MBを/var
  • 2048MBを/tmp
  • 残りを/usr

という感じで作成しました。

追加したHDDは、

  • 全体を/data

という感じで作成しました。

ports collectionは、どうせ後でいれるので、ここではパスしました。

3.ネットワークを認識させる

HP ML110 G5サーバのオンボードNICは、そのままでは認識しないので、以下の手順でカーネルを作り直します。

  • /usr/src/sys/dev/bge/ifbgereg.hの「#define BCOMDEVICEIDBCM5721 0x1659」という行の次に、「#define BCOMDEVICEID_BCM5722 0x165A」を追加
  • /usr/src/sys/dev/bge/ifbge.cの「{ BCOMVENDORID, BCOMDEVICEIDBCM5721 },」という行の次に、「{ BCOMVENDORID, BCOMDEVICEID_BCM5722 },」を追加
  • cd /usr/srcしてmake buildkernelしてmake installkernelしてreboot

なんだけど、実は再起動しようとするとハングアップする。
このハングアップの問題は、現時点で解決できていない。

4:.cshrcの編集

これは、現行サーバと操作感が変わるとやりにくいから。
個人的な好みなので、「なんで?」というツッコミは無しの方向で。

  • setenv EDITOR vi を setenv EDITOR ee に
  • # An interactive shell -- set some stuff up の次に set prompt = '[%n@%m]%B%~%b%# ' を追加

修正が終わったら、source .cshrc します。

5:portsを持ってくる

最終的にはcvsupで定期的に更新するつもりだけど、まずはインストール時点の最新をtarボールで持ってきて展開。

6:必要なソフトをportsからインストール

まずは、ports-mgmt/portupgrade。
これを入れたら、/usr/local/etc/pkgtools.conf を修正して、ログの取得などを設定しておく。

PORTUPGRADE_ARGS = ENV['PORTUPGRADE'] || \ '-v -L /var/log/ports/%s.%s.log'

もちろん、こう書いたら、mkdir /var/log/ports しておく必要あり。
次に、portinstall shells/fd (笑)
あとは、大物なので、別ページにて。

今日はお休みだったので、色々と作業をしたんですが、だんだんわけがわからなくなってきて、ご破算しちゃいました。
過去の構築日誌は、以下のとおり。

  1. サーバ構築日誌(2008-06-14)
  2. サーバ構築日誌(2008-06-15)
  3. サーバ構築日誌(2008-06-16)
  4. サーバ構築日誌(2008-06-18)

これについては、忘れてください(笑)

ご破算した理由は、

  • そもそも現行のサーバのHDDが160GBなのに、新サーバが80GBっていうのはどうよ?
  • 長年かけて構築してきたいろいろなサービスについて、もう一度整理しないといけないね
  • 記録がずさんになってきて、構築日誌がいい加減になってきているかな?

という感じかな(笑)

なので、HDDを増設して、CD-ROMでFreeBSD 7.0-RELEASEを入れるところからやり直しています。

昨日はちゃんと仕事をしていたので、サーバ構築はお休みしました(笑)

今日は、朝からおきだして、「そうだ、sambaを入れよう」と思い立ったけど、graphics/jpegのインストールでこけてしまう。
どうもjpegexiforient.cがもって来れないらしい・・・
とりあえずsambaは後回し。

と思ったら、他のportsもインストールできない・・・
色々調べてみると、DNSで名前が引けていないことが判明。
よく考えたら、tinydnsとdnscacheを同じマシンで起動しているのだから、/etc/resolv.confにnameserver 127.0.0.1なんて書いちゃ駄目だ(笑)
nameserver 192.168.1.1に直して、無事動くようになりました。
なので、気を取り直してnet/samba3をインストール。
さすがにPentium3(1GHz)のjiroからすれば格段に早いわ。
とはいえしばらくかかるので、部屋の掃除して歯医者にGO。

(続き)
歯医者終わって、散髪して、帰ってきました。
まずは、jiroにあるwww.yamanakake.comのコンテンツを丸々taroにコピーして、動作確認。
そのためにphp5、mod_fastcgiをインストール。
jiroの/data/Web/com/www以下をtarボールにして、taroの/data/Web/com/wwwに展開。

昨日は、再起動時に問題があるものの、とりあえず動き出したサーバにApacheを入れたところで時間切れになった。
サーバ構築日誌(2008-06-15)

今日は仕事が修学旅行だったので、朝早くに出勤して、夕方早くに帰ってきた。
引き続き、必要なサービス関連のインストールやセットアップを行う。

まずは、DNSまわり。
daemontoolsのインストールはportsからインストールなので、特に問題なし。
rc.conf に svscan_enable="YES" を追記して、サービス用のディレクトリを作成し、svscanを起動。
djbdnsのインストールもportsからインストールなので、特に問題なし。
依存関係でsysutils/ucspi-tcpもインストールされた。
必要なユーザーを作成

  • dnscache
  • dnslog
  • tinydns

必要なグループを作成
  • dns

DNSは内側向けと外側向けの2つ起動する予定。なので、
  • tinydns-conf tinydns dnslog /usr/local/etc/tinydns-i 127.0.0.1
  • tinydns-conf tinydns dnslog /usr/local/etc/tinydns-o 192.168.1.201

してから、
  • /var/service/tinydns-i -> /usr/local/etc/tinydns-i/
  • /var/service/tinydns-o -> /usr/local/etc/tinydns-o/

というリンクを作成。
dnscacheも設定。
  • dnscache-conf dnscache dnslog /usr/local/etc/dnscache 192.168.1.1

してから、
  • /var/service/dnscache -> /usr/local/etc/dnscache/

というリンクを作成。

勤務カレンダ

月別 アーカイブ

Powered by Movable Type 4.21-en

広告

シマンテックストア
東急ハンズのネット通販「ハンズネット」
WOWOW
ムトウ
セシール
アフィリエイト リンクシェア ブログ 携帯対応 成果報酬 広告 テンプレート ブログパーツ
オンライン書店 boople.com(ブープル)
イトーヨーカドーネット通販
セブン-イレブンネット
セブンアンドワイ

このアーカイブについて

このページには、過去に書かれたブログ記事のうち電算室カテゴリに属しているものが含まれています。

前のカテゴリは車庫です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

なかのひと

FoxMeter