http://evcom.sblo.jp/article/4411674.html にて、
kernel 2.6.20 だと、amandaが他のlinuxマシンと通信できないと記述しましたが、これ、一応解決しました。
あの記事からすでに、いろいろと環境が変わってしまいましたので、整理しますと、
Fedora Core 6
kernel 2.6.22.14-72
amanda 2.5.2p1 (tarボールからインストール)
という組み合わせです。このままだとバックアップの際にデータが流れてこないのです。そこで、kernelを2.6.18-1.2798 にすると、データが流れてきます。
ですから、このカーネルで運用していました。
このほど、原因がわかりました。mtu です。ジャンボフレーム対応のNICで、mtuを7200 に設定していたのです。
思い当たることあって、mtu を標準の1500に戻してみました。
すると、新しいkernelでもちゃんとamandaは動作します。
ジャンボフレームなんて設定しても、体感ではあまり変わらないし、そのためにネットワークに支障をきたすのでは、元も子もないので、ジャンボフレームを使わないことにしようと思います。
2008年04月06日
2008年04月05日
linux : 起動時に外付けHDDを認識させる
Fedora Core 6 のマシンを起動するときに、USBの外付けHDDをマウントする必要性が出てきた。
ディスクを起動時にマウントするには、/etc/fstab に
/dev/sda1 /mnt/usb ext3 defaults 0 0
と書けばいいのだが、これだけではだめ。
起動直後は、usb-storage というモジュールが読み込まれていないのである。だからシステムは /dev/sda1 を認識していない。
これを読み込むには、/etc/rc.d/rc.localなどに、
modprobe usb-storage
なんて書いておいてもいい。
だが、それだともう一度 mount -a などとしなければならない。
そこで、initrd ファイルを書き換えた。
まず、/boot/initrd ディレクトリ以下にinitrdイメージを展開。
# cd /boot
# mkdir initrd
# cd initrd
# zcat ../initrd-2.6.18-1.2798.fc6.img | cpio -i -c
展開されたファイルの中に init というファイルがある。
この中では必要なモジュールを次々と読み込んでいる箇所がある。
その最後に、
echo "Loading usb-storage.ko module"
insmod /lib/usb-storage.ko
と挿入。
もちろん ./lib ディレクトリには、usb-storage.koをコピーしておく。これは /lib/modules 以下から探してきた。
これをまた、initrdのイメージファイルにする。
# cd /boot/initrd
# find . | cpio --quiet -c -o | gzip -c > ../initrd-2.6.18.org.img
最後に、/boot/grub/grub.conf の、initrd コマンドに、ここで作成したファイル名を指定して再起動。
ディスクを起動時にマウントするには、/etc/fstab に
/dev/sda1 /mnt/usb ext3 defaults 0 0
と書けばいいのだが、これだけではだめ。
起動直後は、usb-storage というモジュールが読み込まれていないのである。だからシステムは /dev/sda1 を認識していない。
これを読み込むには、/etc/rc.d/rc.localなどに、
modprobe usb-storage
なんて書いておいてもいい。
だが、それだともう一度 mount -a などとしなければならない。
そこで、initrd ファイルを書き換えた。
まず、/boot/initrd ディレクトリ以下にinitrdイメージを展開。
# cd /boot
# mkdir initrd
# cd initrd
# zcat ../initrd-2.6.18-1.2798.fc6.img | cpio -i -c
展開されたファイルの中に init というファイルがある。
この中では必要なモジュールを次々と読み込んでいる箇所がある。
その最後に、
echo "Loading usb-storage.ko module"
insmod /lib/usb-storage.ko
と挿入。
もちろん ./lib ディレクトリには、usb-storage.koをコピーしておく。これは /lib/modules 以下から探してきた。
これをまた、initrdのイメージファイルにする。
# cd /boot/initrd
# find . | cpio --quiet -c -o | gzip -c > ../initrd-2.6.18.org.img
最後に、/boot/grub/grub.conf の、initrd コマンドに、ここで作成したファイル名を指定して再起動。