Home Update クッキー及びWeb ビーコンについて



bashの基礎

マウントの概要

 ここでは、CD-ROMやフロッピーディスク、USBメモリのマウント/アンマウントの仕方について解説していきます。Windows を使ってきた方にとっては、マウントって何?普通にCD-ROMにアクセスできないの?と思われるかもしれませんが、Linux の場合は、CD-ROMやフロッピーディスクなどのデバイスは全てファイルシステムとして扱われ、それらをマウントポイントという仮想のディレクトリにマウントすることによって初めてそのデバイスの中身を閲覧したり、書き込み処理を行ったりすることができます。また、それらのマウントポイントを/etc/fstab に予め記述しておくことで、コマンド入力の手間を省いたり、システム起動時に自動でファイルシステムをマウントさせたりすることができます。但し、/etc/fstab は一歩間違えるとシステムが起動しなくなる恐れもありますので、編集の際は慎重に行ってください。




■CD-ROMのマウント

 CD-ROMをマウントするには、mount コマンドを使用します。以下コマンドを入力するとCD-ROMが回り始めるはずです。マウントとは、わかりやすく言えば、デバイス上のファイルシステムをディレクトリのひとつとして使用することです。

$ mount /dev/cdrom

 もし、CD-ROM内のRPMパッケージの位置までカレントディレクトリを移動する場合は以下のように入力します。

$ cd /mnt/cdrom/RedHat/RPMS/

◎mountの主なオプション
 -a /etc/fstab に記述されている全てのファイルシステムをマウントする
 -n mount 時に/etc/mtab に書き込まない
 -r 読み取り専用でマウントする
 -w 読み取り/書き込みが可能な状態でマウントする
 -v 詳細表示する
 -t type ファイルシステムのタイプを指定する



■フロッピーディスクのマウント

$ mount /dev/fd0
$ cd /mnt/floppy



■CD-ROMのアンマウント

 CD-ROMをアンマウントするには、umount コマンドを使用します。

$ umount /dev/cdrom

◎umountの主なオプション
 -a /etc/fstab に記述されている全てのファイルシステムをアンマウントする
 -n umount 時に/etc/mtab に書き込まない
 -r アンマウント失敗時に、読み取り専用で再マウントする
 -v 詳細表示する
 -t type ファイルシステムのタイプを指定する

■フロッピーディスクのアンマウント

$ umount /mnt/floppy

■USBメモリのマウント

 USBメモリをマウントするには、上記ふたつのように簡単にはいきません。USBメモリは、SCSIデバイスとして認識するため、/dev/sda のように指定します。また、ファイルシステムタイプは、vfat (Windows 95やNTなどが採用しているファイルシステム)にします。なお、-r オプションを使用すると、読み込みオンリーでマウントされます。

# mkdir /mnt/usb
# mount -rt vfat /dev/sda /mnt/usb

 ただし、この状態でディレクトリ内を閲覧しても、日本語のファイル名は、「???.txt」のように表示されてしまいます。これではちょっと不便なので、オプションとして iocharset=euc-jp codepage=932 を追記してマウントを実行するときちんと日本語ファイル名が表示されるようになります。これは、Windows のDoSファイルシステムをマウントする時も同様です。

# cd /mnt/usb
# ls

12345.txt ?????? SCSI?????.txt

# cd ; umount /mnt/usb
# mount -t vfat /dev/sda /mnt/usb -o iocharset=euc-jp codepage=932
# cd /mnt/usb ; ls

12345.txt identity SCSIの作成ログ.txt

 なお、USBメモリをマウントするのにいちいちこれらのオプションを指定していたのでは面倒くさいので、後述する/etc/fstabを使用して、簡単にマウントできるようにしておきます。/etc/fstab の最後の行に以下のような行を追記してください。

# vi /etc/fstab
/dev/sda /mnt/usb vfat defaults,codepage=932,iocharset=euc-jp 0 0

 これで、mount /mnt/usb と指定するだけで、ファイル名が日本語で表示されるようになります。

# mount /mnt/usb



■umount のトラブルシューティング

 umount コマンド実行時に、「umount: /mnt/cdrom: デバイスを使用中です」と言われることがあります。ここは、よくありがちなパターンで、初心者にとってははまりやすいかもしれません。一番よくある原因として、カレントディレクトリがCD-ROM内である場合には、アンマウントできません。一旦、cd コマンドで、ホームディレクトリなどに移動してから、umount を実行してください。

$ cd
$ umount /dev/cdrom

 また、他のユーザーによってCD-ROMがマウントされていたり、複数のターミナルを起動してマウントしている場合なども同様にアンマウントできません。その場合は、fuser コマンドを使用して、CD-ROM が使用するプロセスを確認した上で、kill します。但し、ユーザーのプロセスを終了させるときには、必ず事前に警告するようにしてください。

# fuser -mv /mnt/cdrom

USER PID ACCESS COMMAND
/mnt/cdrom/ kororo 10245 ..c.. bash

# kill -9 10245 もしくは、fuser -k /mnt/cdrom
# umount /mnt/cdrom



■/etc/fstab の編集

 ファイルシステムをマウントする場合、mount コマンドにて、その都度、マウントオプションを指定しますが、これが面倒くさい場合、/etc/fstab ファイルにマウントするファイルシステムを記述しておく事で、マウントオプションを省略する事ができます。書式は以下のようになります。一番左の /dev/cdrom はマウントするデバイスファイル名、/mnt/cdrom はマウントポイント、iso9660がはマウントするデバイスのファイルシステムタイプ、noauto,owner,kudzu,ro がマウントオプションで複数ある場合は、カンマ「,」で区切って記述します。右から2番目の0 は、dump コマンドによるバックアップをするかしないかの指定で、1を指定するとバックアップを行い、0が指定されているとバックアップは行いません。一番右の0 は、fsck コマンドの実行順序を指定しています。0が指定されている場合は、fsck コマンドによる検査は行いません。

# vi /etc/fstab
/dev/cdrom    /mnt/cdrom    iso9660    noauto,owner,kudzu,ro 0 0

 なお、マウント時に参照される/etc/mtab ファイルは、mount -a やumount -a コマンドによって自動的に書き換え処理が行われ、通常、手動でこのファイルを編集する事はほとんどありません。

◎ファイルシステムタイプ
 ext2 Linux で標準的に使用されるファイルシステム
 ext3 ext2にジャーナリング機能を追加したファイルシステム。ジャーナリングファイルシステムとは、ファイル更新履歴のパックアップを記録しておく機能をもったファイルシステムの事です。
 iso9660 CD-ROMで標準的に使用されるファイルシステム
 msdos MS-DOSのファイルシステム
 vfat Windowsファイルシステム
 nfs NFS(ネットワークファイルシステム)

◎マウントオプション
 async ファイルシステムの入出力を非同期で実行する
 auto mount -a コマンド実行時にマウントする
 exec バイナリの実行を許可する
 noexec バイナリの実行を許可しない
 ro 読み取り専用でマウントする
 rw 読み書き可能でマウントする
 suid SUID と SGID を有効にする
 user 一般ユーザーにマウントを許可する
 users 一般ユーザーにマウントを許可し、マウントを実行していないユーザーにもアウンマウントを許可する
 nouser 一般ユーザーのマウントを禁止する
 defaults async、auto、dev、exec、nouser、rw、suid の各オプションを適用してマウントする







TOPに戻る

Sponcerd Link


Search
 
Web サイト内
Rental Server

【レンタルサーバのXbit】 低価格・高品質のビジネスクオリティー。300メガ1,050円〜30分で サービススタート可能!


容量300MB、月額125円、高性能なサーバが日本最大級のバックボーンに直結。
さくらのレンタルサーバ



当サイトはLinux自宅サーバーの構築を目的としたサイトです。
当サイトに関するご意見、ご要望等は、こちらのメールアドレスよりお願いします。
Beginning | Introduction | Installation | Server |
Security | Tips | Guest Book | Related-Sites
Copyright©2003-2006 KORO All Rights Reserved.
総計:
今日:
昨日: