bird仕事始め, subversion, doppel, MYCOM PC WEB, Williams 新車

仕事始め

今日は仕事始め。今年は大変な年になりそうですが、体調に気をつけてがんばるぞ。

subversion

昨年末から subversion を少し使ってみています。cvs の後継として開発されただけあって cvs と使い方も似ているし、cvs での不満点 (ファイルの移動をうまく扱えない、ディレクトリはバージョン管理外、などなど) が解消されてて面白いです。SSH ではなく apache (WebDAV) 経由でネットワーク越しにサービス出来るところもイイ。cvs では難しかった細かなアクセス制御がやりやすいように思います。log やファイル名の国際化も最初から考慮されているし (Windows 環境でも LANG 環境変数をセットする必要があるところなどはちょっとアレですけど)、まだα版とはいえ機能的にも安定度も十分なように感じます。
ただ apache 経由で利用しているとちょっと遅いかも (専用サーバだともう少し性能が良いらしい)。

doppel

Norton Ghost というツールがあります。
いわゆる汎用のリカバリディスク作成ツールとしてはデファクトスタンダード的な存在で Linux にも対応していたりするわけですけれども、

  • DOS ベースの独自システムでドライブされるため対象システムで認識されている全てのデバイスが見えるわけではない。
  • grub がダメだったりリカバリ出来てもブート出来なかったりと Linux システムのリカバリディスク作成ツールとしては微妙に使いにくい。

というような不満点がありました。対象を Linux システムに絞ってよいのであれば Mondo Rescue という代替案もあるわけですが、Mondo は「動作しているシステム上でバックアップを取る」というコンセプトなため、対象システムにバックアップ用各種ツールをインストールしたくないような場合 (対象システムを出来る限りクリーンに保ちたい場合)、イマイチだなぁと感じることがありました1

そこで、Ghost のように「対象システムの外から」バックアップを取ることが可能で、Mondo のように「対象システムで認識されているデバイスならば全て利用可能」という特徴を備えた Linux システム (というか RedHat) 専用のバックアップツールを去年自作しました。それが「doppel」です。

残念ながら業務中に作成したものなためソースコードを公開することは出来ないんですけれども、それはだいたい次のようなモノです。

  • RedHat 専用 (7.3、9、FC1、RHEL2.1、RHEL3 でテスト)、grub 専用です。
  • 実体は1つのシェル・スクリプトです2
  • 対象システムと同じ OS、ハードウェア構成のマシン上で上記シェルスクリプトを実行すると、バックアップのために必要なカーネル、各種バイナリ、設定ファイル、シェルスクリプト等を含んだブート可能な CD-ROM イメージ (iso イメージ) を生成します。
  • 上記 iso イメージを適当な CD-R に焼き付けその CD でブートすると、dialog プログラムを利用したバックアップメニューが表示されます (この時必要なスクリプト等も全て最初に実行したシェルスクリプト内であらかじめ生成されているわけです)。
  • 対象システムの root パーティションを教えてあげると、自動的に残りの全てのパーティションをマウントし、パーティション構成、ファイルシステム構成、ディスク上の全データをローカル HDD 上、NFS 領域上、または SMB 領域上に CD-ROM イメージ (iso ファイル) 群3としてバックアップします4
  • 作成された iso イメージを CD に焼いてそれでブートすることで、システムを完全にリカバリ出来ます。
  • おまけとしてバックアップ CD、リカバリ CD には HDD 完全消去機能 (shred 利用) があります。またリカバリ CD はそのままバックアップ CD としても利用出来ます。

たぶん少し詳しい人ならばすぐに同じようなものが作れてしまうのではないかなぁ。Linux はシンプルでいいですね…。

MYCOM PC WEB

年始企画がいい感じ。東大桜井教授の話は特に面白かった。Intel の 90nm 世代のチップでは 60% がリーク電流だ、とかびっくりですよ。それで 100W も電気食うなんて絶対納得できん。ガンバレ transmeta〜。

Williams 新車

FW26 が発表になりました。変なノーズ〜。でも面白い。あとマクラーレンもそうですが、うねうねウィングは今後のトレンドになるんでしょうか?


  1. 主要なロジックが C でかかれているためカスタマイズがめんどくさいのも難点でした。 ↩︎

  2. 最終的にはバックアップに必要なバイナリ等の依存性を解決するために RPM 化しました。シェルスクリプト一つしか含まない rpm (笑。 ↩︎

  3. 1枚の CD-ROM に収まらない場合は自動的に multi-volume 化されます。 ↩︎

  4. ソフトウェア RAID にも対応しましたが (リカバリ時に自動的に RAID 領域の作成、セットアップを行います)、LVM にはまだ未対応です。 ↩︎