TOPページ
 
what's new Linuxサーバ構築記 自己紹介 リンク集
 
Linuxトップへ戻る
ノートPCにPlamoLinuxをインストール
  (1)はじめに
  (2)インストール
  (3)各種設定ファイルの変更
  (4)各種アプリケーションのインストール
  (5)HDDを追加
 
 
 
 
 
 
 
 
 
 
 
 
 
 

■ノートPC ARMADAにPlamoLinuxをインストール

(5)HDDを追加

今までLinuxサーバとして使用していたarmadaですが、色々なソフトをインストールしているうちに、だんだん容量が不安になってきました。特に各プロバイダからメールを一括して取り込み、IMAPで宅内メールサーバとして運用していると、たまってくるメールの量もどんどん増えてくるので、現状のHDD容量の1Gでは今後を考えるととても不安になってきました。

そこでHDDを増設することにしました。

とはいえ、ノートPCなので内臓ドライブは追加できないので、外付けSCSIのHDDを追加します。SCSIカード(PCMCIA)はオークションで購入したAdaptec APA-1460を使います。

HDDは近所のHARD OFFで4000円で売っていた、I/Oデータ HDVS-UM4.3Gを使います。
このドライブ、SCSI接続なのですが中身はIDEのドライブが入っているのです。
(SCSI→IDEの変換基盤が中に入っています)

なので、どうせ増設すならサイズが大きいほうが良いので、家にあったSEAGATEの8.4Gに換装しました。

 
       
  分解状態 換装後  
  分解したところ こちらは換装終了後  
 

 

 

  換装後PCMCIA SCSIカードにて接続し、Linuxを起動します。
APA-1460はLinuxでは実績のあるカードなので、問題なく認識し、HDDも8.4Gとして認識していました。


  ◆いきなり問題発生!

SCSIカードおよびHDD自体は正常に認識しのですが、/var/log/messages に下記のようなメッセージが表示されるようになってしまいました。
 
     
  Jan 25 16:06:52 armada kernel: eth0: interrupt(s) dropped!  
     
  さらに、このノートPCに対してのpingが妙に遅くなってしまいます。
 
     
  Reply from 192.168.1.***: bytes=32 time=431ms TTL=255
Reply from 192.168.1.***: bytes=32 time=3ms TTL=255
Reply from 192.168.1.***: bytes=32 time=8ms TTL=255
Reply from 192.168.1.***: bytes=32 time=3ms TTL=255
Ping statistics for 192.168.1.***:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 3ms, Maximum = 431ms, Average = 111ms
 
     
  ちなみにこちらが同一LAN内の他のPCのpingデータ。
 
     
  Pinging 192.168.1.*** with 32 bytes of data:
Reply from 192.168.1.***: bytes=32 time=5ms TTL=128
Reply from 192.168.1.***: bytes=32 time<10ms TTL=128
Reply from 192.168.1.***: bytes=32 time<10ms TTL=128
Reply from 192.168.1.***: bytes=32 time<10ms TTL=128
Ping statistics for 192.168.1.***:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 5ms, Average = 1ms
 
     
  太字の部分を比べてみると明らかに、時間がかかりすぎています。

そこで、/var/log/messages に書き込まれているeth0の起動時のメッセージを見ると、IRQの割り当てがSCSIカードを挿す前と変わっていたのです。

 
     
  Jan 25 16:06:44 armada kernel: eth0: NE2000 Compatible: io 0x300, irq 5, hw_addr 00:00:E8:19:BD:8F

ちなみに下が追加前。前はirq3に割り当てられていました。

Dec 24 00:23:40 armada kernel: eth0: NE2000 Compatible: io 0x300, irq 3, hw_addr 00:00:E8:19:BD:8F

 
     
  どうやら、SCSIカードを挿したことで、LANカードが自動的にIRQ5に割り当てを変更したため、
割り込みがぶつかるようになってしまったらしいのです。


そこで、/etc/pcmcia/config.opts に対して、
 
     
  # KKK
exclude irq 5
 
     
  として、ethカードに対してirq5を割り振らないように設定しました。

リブートして /var/log/messages を確認すると、
 
     
  Jan 25 17:04:07 armada kernel: eth0: NE2000 Compatible: io 0x300, irq 9, hw_addr 00:00:E8:19:BD:8F  
     
  と、IRQ9に割り当てが変わり、エラーメッセージも止まり、pingも正常値に戻りました。

 
領域確保・フォーマット・マウント


続いて、HDDに領域を確保してフォーマットします。

まずは、fdiskコマンドを使って領域確保を行います。今回はSCSIディスクの追加なので、デバイス名は/dev/sd* になります。
 
     
  #fdisk /dev/sda
 
     
  として、fdsikメニューに入り領域を確保します。今回はHDDすべてを1パーティションで /home として使用する予定のため、全体をLinuxに割り当てます。
fdisk が終了したら再起動し、続いてmke2fsコマンドを使用して、HDDをフォーマットします。


フォーマット時に不良ブロック検査も同時に行うので、-c オプションをつけます。
また、このパーティションはメールなどの小さなファイルを多数格納する予定なので、ブロックサイズをやや小さく設定します。
 
     
  #mke2fs -c -b 1024 /dev/sda
 
     
  大体2時間半くらいで終了しました。
終了したら、今までの/home の下のデータをバックアップするために/homeをリネームします。
 
     
  # mv /home /home-org
 
     
  次に、再度/homeディレクトリを作って、新しいHDDをマウントします。
 
     
  # mkdir home
# mount /dev/sda /home
 
     
  新しくマウントした/home に対して、もともとの/home(/home-org) をコピーします。
このとき、ディレクトリの所有者やパーミッションを正しく保持するために、cpコマンドに-aオプションをつけて実行します。
 
     
  # cp -a /home-org/. /home
 
     
 

確認のため、一度マウントしたSCSI HDDをアンマウント・マウントします。

 
     
  # umount /dev/sda
再度、/home にマウントしなおします。
# mount /dev/sda /home
 
     
  これで問題なければ、起動後SCSIカードが認識されたときに、自動でマウントされるように、/etc/pcmcia/scsi.opts に下記のスクリプトの太字の部分を追加します。
 
     
  # SCSI adapter configuration
#
# The address format is "scheme,type,socket,channel,id,lun[,part]".
#
# For multi-partition devices, first return list of partitions in
# $PARTS. Then, we'll get called for each partition.
#
# This example will mount any CD-ROM on /cdrom, if possible.
#
case "$ADDRESS" in
*,sr,*,*,*,*)
INFO="Default CD-ROM setup"
LINK="/dev/cdrom"
PARTS=""
DO_FSTAB="y" ; DO_FSCK="n" ; DO_MOUNT="n"
FSTYPE="iso9660"
OPTS="ro,noauto"
MOUNTPT="/mnt/cdrom"
# Card eject policy options
NO_CHECK=n
NO_FUSER=n
;;
# ↓追加分
*,sd,*,0,1,0)
# for I-O Data HDVS-UM4.3G SCSI HDD
#
INFO="HDVS-UM4.3G setup"
PARTS=""
DO_FSTAB="n" ; DO_FSCK="y" ; DO_MOUNT="y"
FSTYPE="ext2"
MOUNTPT="/home"
;;

#ここまで
esac
 
     
  以上で終了です。

  ◆さらに問題が!

このHDD追加を行い/homeを移したところ、今までブート時に自動起動の設定をしておいた、
fetchmailが動かなくなってしまいました。

理由は、pcmcia-csがPCカードを認識しHDDをマウントしている間に、/etc/rc.dの下のfetchmail起動スクリプトが動き出してしまいます。そのため、起動スクリプトが各個人のホームディレクトリ中の.fetchmailrcを見に行くときには、まだHDDが/homeにマウントされていないので、.fetchmailrcがないと思って動作してしまうためです。

これは、結局PCMCIAを使ってHDDを使っている以上、起動する順番的にしょうがないことなので(と思います)、再起動した際にtelnetなどで自分のアカウントでログオンし、fetchmailを起動することで暫定的に対応します。 今後、fetchmailの起動スクリプト(/etc/rc.d/rc.fetchmail)を改造して、.fetchmailrcを各個人のホームディレクトリ以外から読み込む形に修正したいと思います。
   

戻る

 

 Last Update 2002/1/31

推奨ブラウザは Internet Explorer 4.5 以上および Netscape Navigator 4.5以上です。
スタイルシートとJavaScriptを有効にして、800×600以上の解像度でご覧ください。
webmaster@kwr.no-ip.com