ちと、物理サーバとして稼働している開発用 Linuxサーバ(普段は使ってない)がじゃまなので、VMware上に移動させたくなって、その方法を調べてみた。
どうも Windows には 公式に P2V なるツールがあって、簡単に移行できるらしいけど、Linux にはない見たい。でも、きっとユーザが作ってるよね? と思って調べると
Linux P2V
http://mark.foster.cc/wiki/index.php/Linux_P2V
という文章を発見。めんどくさそう……んーどうしたものかと思ったんだけど、よく考えたら、Mondorescue でフルバックアップをとって、それでリストアすればいいんじゃない? と思って実行。
1. 物理サーバ上に Mondorescue をインストール
mondorescue は http://www.mondorescue.org に各ディストリビューション用のパッケージが用意されてるので、これは簡単。
2. mondorescue でフルバックアップ & 起動用CDのISOを作成
実行例
# mondoarchive -O -i -L -d /backup -E "/backup" -l GRUB -f /dev/sda -s 700m -F
3. お茶する(2〜3時間ぐらいでバックアップは終了)
4. ISO を VMwareが稼働しているマシンに移動
5. VMwareサーバ上に仮想サーバを作成
リストア時に、なぜかディスクが認識しない場合は SCSI じゃなくて、IDE にするといいみたい。
6. ISOイメージを起動ディスクとして、仮想サーバの電源をON
7. リストアは、auto モードで放置
8. NIC のドライバとかは、pcnet32 を組み込むようにする。
9. reboot して、元の環境が復元できているのを確認して終了 :-)
同僚に聞かれたけど、日記に書いてなかったみたいで、即答できず。ということで、メモメモ。
# gpg --keyserver hkp://wwwkeys.eu.pgp.net --recv-keys A70DAF536070D3A1
# gpg --armor --export A70DAF536070D3A1|apt-key add -
via http://on-o.com/page/diary/20061121.html#p01
削除したファイルを lsof で復元する
http://opentechpress.jp/developer/article.pl?sid=06/11/23/0451251&from=rss
あーなるほど (^_^;
kernel モジュールとして組み込んで、CPUのプロファイルを行なうツール。
System-wide Linux Profiler
http://www.daimi.au.dk/~sandmann/sysprof/
via http://freshmeat.net/
EUC-JPをベースに生活してるんですが、他人から送られて来る日本語ファイル名が付けられた添付ファイルを保存すると、文字化けしてしまいます。convmv で直せるので、まぁいいかと放置してたんですが、いい加減、めんどくさくなってきました。回避方法があったはずなんだけど、なんだっけ? と思って検索したら、ありました。
~/.gnomerc に
export G_FILENAME_ENCODING=@locale
を書いておくとよいらしい。実際、これで文字化けが解消された :-)
参考:
http://lists.debian.or.jp/debian-users/200501/msg00215.html
Intel のマザーボードの DG965RYに CentOS4.3(4.4じゃないのは、新しいインストールディスクが手元になかったから)をいれようとしたら、そもそもインストーラーが起動しない。どうも PCI の認識で止まってしまっているようなので、
boot: linux pci=nommconf
としたら起動するものの、ハードディスクが認識しない。
どっかで聞いた話しだなぁと思ってググってみたら
intel DG965RYにCentOS4.4を入れる方法
http://d.hatena.ne.jp/dradradraqqq/20060920
に解法がずばり(^^;
途中の部分は省略して、とりあえず解決法だけ。
1)BIOSでSATAのモードをAHCIに変更する。
2)boot optionの所で、 "linux pci=nommconf all-generic-ide" で起動する。
all-generic-ide ? そんなオプション知らなかったよ (^^;
ともあれ、 手元のマシンでも、まさにこの方法で起動できました。オンボードの Ethernet は
Intel(R) PRO/10/100/1000/10GbE Drivers
http://sourceforge.net/projects/e1000
から、e1000 の 7.2.9 をダウンロード。USBメモリ経由で CentOS をインストールしたサーバ上にソースコードを移し
$ tar zxvf e1000-7.2.9.tar.gz
$ cd e1000-7.2.9/src
$ make
$ su
# make install
したあとに
# modprobe e1000
で、無事に NIC も認識した :-)
http://madwifi.org/wiki/UserDocs/Distro/Debian/MadWifi
via http://d.hatena.ne.jp/kinneko/20060921/p1
お? いつのまにやら sid には madwifi のパッケージがあるね! :-)
/home を ReiserFS にしているわけですが、ファイルシステムが壊れた ;-(
少々壊れたところで
# reiserfsck --check --log reiserfs-check.log /dev/mapper/cryptvol1
でチェックして
# reiserfsck --fix-fixable --log fixable.log /dev/mapper/cryptvol1
で直るといいんだけど、"--rebuild-tree" じゃないと直らないよと、エラーを吐かれ、"--fix-fixable" でなんか余計にファイルシステムがおかしくなり、
# debugreiserfs -p /dev/mapper/cryptvol1 | gzip -c > /root/vol1-meta.gz
で念のためメタデータをバックアップして
# reiserfsck --rebuild-tree /dev/mapper/cryptvol1
したら……ありえないぐらいにファイルシステムが壊れた (--;
なんたって
/home/kunitake/Mail
にあったディレクトリが
/home/proc/Mail
に移動したり、いままでなかったようなディレクトリまで生成されたりとメチャクチャ。
メタデータからやり直してもよかったんだけど、この状態で使い続けるのは危険だな、ということでフォーマットして、バックアップデータをコピーしました。
実は、ある別のサーバでも最近 ReiserFS で障害が多発してるし、知合いからも痛い目になんどもあってると聞いてるし、当分 ReiserFS は、いいや……
#といいつつ、/home の再構築の時に、また ReiserFS にしちゃった ;-)
http://itpro.nikkeibp.co.jp/article/NEWS/20060911/247717/
現在3万2000までになっているサブディレクトリ数の上限撤廃
ありゃ? そんな制限あるんだ(^_^;
どんどん ISOイメージを mount していったら、8つ以上できないんだけど……と相談されて調べてみる。
どうやら、default では 8つしか扱えないらしい(/dev/loop0 〜 /dev/loop7)
ということで、増やす方法を調べてみると、ずばり書いてあるサイトが
Linux.com - Adding Support for More Loop Devices
http://www.linux.com/howtos/CDServer-HOWTO/addloops.shtml
loop デバイスが module として組み込まれている場合は /etc/modules.conf とかに
options loop max_loop=64
とかして上限値を動的に変えられるみたい。module じゃなくてカーネルに組み込まれている場合は boot オプションに
boot: linux max_loop=64
とかするといいらしい。もちろん、実際の利用にあたっては、デバイスファイルも作って置く必要がある。
# mknod -m660 /dev/loop8 b 7 8
# mknod -m660 /dev/loop9 b 7 9
# mknod -m660 /dev/loop10 b 7 10
# mknod -m660 /dev/loop11 b 7 11
こんな感じ。多くのディストリビューションでは、
# chmod root.disk /dev/loop8
# chmod root.disk /dev/loop9
みたいに、所有者とグループも変更する必要がある。これはすでにあるデバイスファイルを参考にするといいみたい。
ひさびさに感動したツール。簡単にシステムのフルバックアップができます。
mondo rescue
http://www.mondorescue.org/
CD-R にシステムのフルバックアップが焼けて、しかもそのCDを使えば、ほぼ半自動でリストア可能。
どうやらリストア前にパーティションを切り直すとかもできるらしい。
ググるとけっこう引っかかるので、結構有名なツールだった? あとで使い方とかまとめて社内に広めよう。
cacti といえば、RRDTool のフロントエンドとして有名ですが、閾値を設定してある値を越えたら警告メールが投げられない、という話も聞かれますが、Plugin の Thold(Thresholds) を使えば、この機能は実現できるようです。
http://cactiusers.org/
休日を潰しながら書いた原稿が載ったらしい。
「Linuxで実現するバイオメトリック認証」
における
「pam_usb + 指紋認証デバイスをLinuxで活用する」
のパートを書きました。興味のある方は読んで見て下さい。ThinkPad に付いてる指紋リーダを Linux から使う方法とかも書いてます。
いまさらですが、日記に書いて無かったので。
USAGI Project が表彰されました。
総務省の報道資料:
http://www.soumu.go.jp/s-news/2006/060601_3.html
WIDEのプレスリリース:
http://www.wide.ad.jp/news/press/20060601-usagi-j.html
このプロジェクトを通じて、日本人のLinux のカーネルメンテナ、Netfilter のコアメンバも生まれましたし、コードも本家へ還元していますから、その点を評価して頂けたのでしょう。ありがたいことです :-)
#と、一ヵ月遅れで書いてみたり ;-)
http://on-o.com/page/diary/20060418.html
を参考に、VMware に patch 当ててどうにか動くようになった :-)
Ext3 ファイルシステムで削除したファイルを復元について
http://blog.miraclelinux.com/mita/2006/06/ext3__e742.html
http://blog.miraclelinux.com/mita/2006/06/ext3_2_e822.html
grep & dd で頑張れば救える「ことも」あるらしい。
インターネットサーバ設定(3) Linuxサーバ管理 (2時間 : 初心者向けです)
http://www.interop.jp/conference/
間にデモを挟みすぎたかもしれない。時間が足りず後半はかなり駆け足に……早口になった時はかなり聞き取り辛い喋りらしいので、会場のみなさまには申し訳ない結果になったかも(--;
#根本的に、滑舌がよくないんだな。