eject - コマンド (プログラム) の説明 - Linux コマンド集 一覧表
名前
eject - リムーバブルメディアをイジェクトする
書式
eject -h
eject [-vnrsfqp] [<name>]
eject [-vn] -d
eject [-vn] -a on|off|1|0 [<name>]
eject [-vn] -c slot [<name>]
eject [-vn] -t [<name>]
eject [-vn] -x <speed> [<name>]
eject -V
説明
eject
を用いると、リムーバブルメディア (CD-ROM、フロッピーディスク、テープ、
JAZ/ZIP ディスクなど) をソフトウェア制御によってイジェクトできる。
また eject は、連装 CD-ROM チェンジャを制御したり、デバイスの自動イ
ジェクト機能を制御したり、CD-ROM ドライブのディスクトレイを閉じるこ
ともできる (製品によってはできないこともある)。
引き数 <name> に対応するデバイスがイジェクトされる。
name はデバイスファイルまたはマウントポイントであり、フルパスでも先頭の
"/dev" や "/mnt" を省略した形でもどちらでもよい。
name が指定されない場合、デフォルトでは "cdrom" が対象となる。
対象デバイスが CD-ROM であるか、SCSI デバイスであるか、リムーバブル
フロッピーであるか、あるいはテープであるかによって、4 つの異なる
イジェクト方法がある。デフォルトでは、eject は 4 つの方法全てを成功
するまで順に試行する。
対象デバイスがマウントされている場合、イジェクト前にアンマウントされる。
コマンド行オプション
- -h
-
このオプションは、
eject
にコマンドオプションの簡単な説明を表示させる。
- -v
-
eject
を詳細表示モードで実行する; eject が実行していることについて、
より多くの情報が表示される。
- -d
-
このオプションとともに実行すると、
eject
はデフォルトのデバイス名を表示する。
- -a on|1|off|0
-
このオプションは、いくつかのデバイスでサポートされている自動イジェクト
モードを制御する。自動イジェクトモードを有効にすると、対象デバイスがク
ローズされたときにそのドライブは自動的にイジェクトする。
- -c <slot>
-
このオプションにより、ATAPI/IDE CD-ROM チェンジャの CD スロットを選択でき
る。この機能を利用するには、Linux 2.0 以上が必要である。スロット切替要求
が機能するためには、CD-ROM ドライブが動作中 (データ CD をマウントしていた
り、音楽 CD を演奏していたり) であってはならない。チェンジャの最初のスロッ
トが、1 ではなく 0 で参照される点についても注意してほしい。
- -t
-
このオプションは、ドライブに CD-ROM トレイのクローズコマンドを与える。
全てのデバイスがこのコマンドをサポートするわけではない。
- -x <speed>
-
このオプションはドライブに CD-ROM スピード選択コマンドを与える。
speed 引き数は希望するスピード (たとえば 8 倍速の場合は 8) を表す数字である。
最大データレートにする場合は 0 にする。
全てのデバイスがこのコマンドをサポートしているわけではないので、
これをサポートしているデバイスにのみ指定できる。
メディアを交換するたびに、このオプションはクリアされる。
このオプションは単独で使用するか、-t と -c オプションとともに使用する。
- -n
-
このオプションは選択されたデバイスを表示するが、何の操作も行わない。
- -r
- このオプションは、CDROM イジェクトコマンドを用いて対象ドライブを イジェクトするよう指定する。
-
-
-s
このオプションは、SCSI コマンドを用いて対象ドライブをイジェクト
するよう指定する。
- -f
-
このオプションは、リムーバブルフロッピーディスクイジェクトコマンド
を用いて対象ドライブをイジェクトするよう指定する。
- -q
-
このオプションは、テープドライブオフラインコマンドを用いて対象
ドライブをイジェクトするよう指定する。
- -p
-
このオプションを指定すると、
/etc/mtab ではなく /proc/mounts を使うことができる。
このオプションは umount(1) に -n オプションを渡す。
- -V
-
このオプションを使うと、
eject
はプログラムのバージョンを表示して終了する。
長いオプション
以下に示すように、全てのオプションには対応する長い名前がある。
これらは、一意に識別できる長さまで省略することができる。
-h --help
-v --verbose
-d --default
-a --auto
-c --changerslot
-t --trayclose
-x --cdspeed
-n --noop
-r --cdrom
-s --scsi
-f --floppy
-q --tape
-V --version
-p --proc
例
デフォルトのデバイスをイジェクトする:
eject
cdrom という名前のデバイスまたはマウントポイントをイジェクトする:
eject cdrom
デバイス名でイジェクトする:
eject /dev/cdrom
マウントポイントでイジェクトする:
eject /mnt/cdrom/
4 番目の IDE デバイスをイジェクトする:
eject hdd
1 番目の SCSI デバイスをイジェクトする:
eject sda
SCSI パーティション名 (例えば、ZIP ドライブ) でイジェクトする:
eject sda4
連装チェンジャの 5 番目のディスクを選択する:
eject -v -c5 /dev/cdrom
SoundBlaster CD-ROM ドライブの自動イジェクトを有効にする:
eject -a on /dev/sbpcd
返り値
操作が成功すると 0 を返す。
操作が失敗、またはコマンドの構文が間違っていると 1 を返す。
注意
eject
は、4 つのイジェクト方法のうち 1 つ以上をサポートするデバイスに対して
のみ有効である。
これには、ほとんどの CD-ROM ドライブ (IDE、SCSI、独自規格)、
何種類かの SCSI テープドライブ、JAZ ドライブ、
ZIP ドライブ (パラレルポート版、SCSI 版、IDE 版)、
LS120 リムーバブルフロッピーが含まれる。
Sun SPARC と Apple Macintosh のフロッピードライブについても、
ユーザーからの成功報告がある。
eject
が動作しないのは、ほとんどの場合、
そのデバイスのカーネルドライバの制限によるものであり、
eject
プログラム自体の制限ではない。
-r, -s, -f, -q オプションで、どのイジェクト方法を用いるかを制御できる。
複数のイジェクト方法を指定することができる。
これらのオプションが全く指定されないと、eject は 4 つの方法全てを試行する
(これはほとんどの場合に上手く動作する)。
eject
は、対象デバイスがマウントされているかどうかを常に判断できるわけではない
(例えば、そのデバイスに複数の名前がある場合)。
デバイス名がシンボリックリンクである場合、
eject
はリンクを辿り、リンク先のデバイスを使用する。
対象デバイスが複数のパーティションを持ち得ると判断した場合、
eject
は、そのデバイスのマウントされたパーティションを
イジェクト前に全てアンマウントしようとする。
アンマウントに失敗すると、eject はメディアのイジェクトを中止する。
音楽 CD をイジェクトすることができる。 CD-ROM ドライブによっては、
ドライブが空である場合にトレイを開くことを拒否するものもある。
トレイクローズコマンドをサポートしないデバイスもある。
自動イジェクト機能が有効になると、
そのドライブは eject を実行すると常にイジェクトされるようになる。
全ての Linux カーネル CD-ROM ドライバが、
自動イジェクトモードをサポートするわけではない。
自動イジェクトモードの状態を確認する方法は無い。
デバイスファイルへのアクセスには適切な権限が必要である。デバイスによっては
(例えば SCSI デバイス)、 eject を root で実行しなければならなかったり、
または eject を root に setuid しておくことが必要だったりする。
名前からデバイスを発見するために用いる探索法は、以下の通りである。
名前の末尾がスラッシュで終わる場合、それを取り除く
(シェルのファイル名補完機能を使って生成された名前をサポートするため)。
名前が '.' または '/' で始まる場合は、名前をデバイスファイルまたは
マウントポイントとみなしてオープンを試みる。
オープンに失敗すると、オープン可能なデバイスファイルまたは
マウントポイントが見つかるまで、
eject は名前の先頭に '/dev/', '/mnt/', '/dev/cdroms',
'/dev/rdsk/', '/dev/dsk/', './' を挿入して試す。
eject は、マウントされたデバイスを /etc/mtab でチェックする。
これに失敗すると、eject は現在マウントされていないデバイスの
マウントポイントを確認するために /etc/fstab もチェックする。
/dev/cdrom や /dev/zip のようなシンボリックリンクを作っておくことを勧める。
こうすれば
eject
は適切なデバイスを覚えやすい名前を用いて特定できるようになるからである。
キー入力数を節約するため、あなたの環境固有の設定に合わせた eject オプション
へのシェルエイリアスを作るのもよいだろう。
著者
eject
は Jeff Tranter (tranter@pobox.com) によって開発され、
GNU 一般公有使用許諾書の条件下でリリースされる。
詳細については、COPYING ファイルと、ソースコードの注記を参照のこと。
-x オプションは Nobuyuki Tsuchimura (tutimura@nn.iij4u.or.jp) によって
追加された。
Roland Krivanek (krivanek@fmph.uniba.sk) の cdrom_speed コマンドに感謝する。
関連項目
mount(2), umount(2), mount(8), umount(8)
/usr/src/linux/Documentation/cdrom/