1.増設したUSB外付けHDD(I-O Data HDC-U250)をCent OS4.3に認識させる。

USBのハードディスクを接続するには(@IT)を参考に。

USBのハードディスクを接続すると、LinuxではSCSI機器として認識される。
なので/proc/scsi/scsiを表示することでも確認できる。

# cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: I-O DATA Model: HDC-U Rev: 1.09
Type: Direct-Access ANSI SCSI revision: 02

ドライブの認識が確認できたら、マウントしてみる。
HDC-U250はFAT32でフォーマットされているのでLinux上ではvfat形式でマウントする。

# mkdir /mnt/usb
# mount -t vfat /dev/sda1 /mnt/usb

ディスクの状態は、dfコマンドで確認できる。

# df -k
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
5966888 181380 5482404 4% /
/dev/hda1 101086 12297 83570 13% /boot
none 257540 0 257540 0% /dev/shm
/dev/hdb1 15116836 78216 14270716 1% /home
/dev/hdb3 9574584 54200 9034020 1% /tmp
/dev/hda2 14105060 1827800 11560764 14% /usr
/dev/hdb2 12088724 219520 11255120 2% /var
/dev/sda1 244136352 32 244136320 1% /mnt/usb

/mnt/usbにきちんとマウントされている。
250GBのはずだが認識されている数値が微妙に違うのは
ディスクの認識方法の違いのためらしい。

2.ext3形式に変換

FAT32の状態でも使えるのだが、パーミッションの設定など
Linuxでの本格的な使用にはext3形式の方が好都合なので。

FAT32 → ext3 に変換。

このやり方でつまった。

mkfsでフォーマットするのだと思っただけど、やってみたら下記のようなエラーが。

# mkfs.ext3 /dev/sda1
bash: mkfs.ext3: command not found

オプションの指定が誤っているのかとやりなおしてみたが、やはり失敗

# mkfs -t ext3 /dev/sda1
bash: mkfs: command not found

下記のようなエラーも出たので
mkfsが存在しないということなのかなと解釈(のちに間違いとわかる)

# which mkfs
/usr/bin/which: no mkfs in (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/*****/bin)

さらにyumでmkfsをインストールしてみようとすると下記のようなエラーが。

# yum install mkfs
Failed to set locale, defaulting to C
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
No Match for argument: mkfs
Nothing to do

いろいろWebで探しているうちにここ
ext3をフォーマットするのに
mke2fsという別のコマンドを使ったという事例が(ただしこれはVine Linux2.6の事例)。

ということでやってみたがやはり下記のようなエラー。mkfsのときと変わらない。

# mke2fs -j /dev/sda1
bash: mke2fs: command not found

またいろいろ調べて
こちらを参考に。

当初のエラーメッセージをもう1度見てみる。

# mkfs.ext3 /dev/sda1
bash: mkfs.ext3: command not found

mkfs.ext3というコマンドでおこられている。
そこでmkfs.ext3がきちんと存在するか調べてみる。

# ls /sbin/mkfs.ext*
/sbin/mkfs.ext2 /sbin/mkfs.ext3

しっかりあった。

どうやらsbinにしっかりパスが通っていなかったというだけのことらしい。

umountしてませんねとまたおこられて(苦笑)

# /sbin/mkfs.ext3 /dev/sda1
mke2fs 1.35 (28-Feb-2004)
/dev/sda1 is mounted; will not make a filesystem here!

再チャレンジ。

# /sbin/mkfs.ext3 /dev/sda1
mke2fs 1.35 (28-Feb-2004)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
30539776 inodes, 61049000 blocks
3052450 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=62914560
1864 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872

(以下略)

mkfsには約1時間かかった。

プロンプトを見てみるとわかるのだが
mkfs.ext3を実行するとスクリプト内で
mke2fs(versionは1.35)が動作していることがわかる。

やっていることは通常のフォーマットでこれで
ext3形式でファイルの読み書きができるようになった。

マウントしてみる。

# mount -t ext3 /dev/sda1 /mnt/usb
# df -k
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
5966888 181392 5482392 4% /
/dev/hda1 101086 12297 83570 13% /boot
none 257540 0 257540 0% /dev/shm
/dev/hdb1 15116836 78216 14270716 1% /home
/dev/hdb3 9574584 54196 9034024 1% /tmp
/dev/hda2 14105060 1827964 11560600 14% /usr
/dev/hdb2 12088724 217788 11256852 2% /var
/dev/sda1 240362656 94272 228058584 1% /mnt/usb

きちんと認識されている。

3.オートマウントの設定

起動時に自動的に増設したHDDがマウントされるように
/etc/fstabに下記を記載。

/dev/sdb1     /mnt/usb     ext3  defaults  1 2

これでもいいのだが。

必要な時だけ接続するなら,手動でマウントするか,あるいは autofs を使うほうが便利。
特定のディレクトリにアクセスしたときに自動的にマウントされる。
autofs についてはここの「autofs による自動マウント」などを参考にした。
/etc/auto.masterに次の1行を追加。

/misc /etc/auto.misc

続いて/etc/auto.miscに次の1行を追加。

removable -fstype=ext3 :/dev/sda1

これで/misc/removableにアクセスすると外付けHDDをオートマウントできるようになった。

オートマウント・デーモンを再起動してから試してみる(次回OS再起動時は /etc/auto.masterが起動時に読み込まれるためデーモンの再起動は不要)。

/etc/init.d/autofs restart

# df -k
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
5966888 181392 5482392 4% /
/dev/hda1 101086 12297 83570 13% /boot
none 257540 0 257540 0% /dev/shm
/dev/hdb1 15116836 78216 14270716 1% /home
/dev/hdb3 9574584 54196 9034024 1% /tmp
/dev/hda2 14105060 1827964 11560600 14% /usr
/dev/hdb2 12088724 217788 11256852 2% /var

# cd /misc/removable

# ls -l
total 16
drwx—— 2 root root 16384 Jul 31 23:54 lost+found

# df -k
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
5966888 181392 5482392 4% /
/dev/hda1 101086 12297 83570 13% /boot
none 257540 0 257540 0% /dev/shm
/dev/hdb1 15116836 78216 14270716 1% /home
/dev/hdb3 9574584 54196 9034024 1% /tmp
/dev/hda2 14105060 1827964 11560600 14% /usr
/dev/hdb2 12088724 217788 11256852 2% /var
/dev/sda1 240362656 94272 228058584 1% /misc/removable

しっかり認識されている。
これでOK。

アンマウントは別ディレクトリに移動してから下記でOK。

# umount /dev/sda1

USB機器は電源OFF、着脱の際にデータ保護のため必ずアンマウントするようにしよう。







関連記事(試験運用中)

  • No related posts




  • コメント/トラックバック:0 個 »

    トラックバックURL: http://blackpepper.oops.jp/wp/archives/1752/trackback

    この記事にはまだコメントがついていません。

    コメントをどうぞ

    コメント、トラックバックは確認後に表示されます。しばらくお待ちくださいね。

    段落や改行は自動挿入です。メールアドレスはサイト上では非表示です。
    使用できる HTML タグ: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>