名前

eject - リムーバルメディアをイジェクトする

eject [options] device|mountpoint

説明

eject は、 ソフトウェア制御によって、 リムーバルメディア (普通は CD-ROM、フロッピーディスク、テープ、JAZ、ZIP、USB ディスク) のイジェクトを行う。 複数ディスクを扱う CD-ROM チェンジャーの中には、 このコマンドから制御できるものがあり、 デバイスが提供する自動イジェクト機能や、 CD-ROM ドライブのディスクトレイを閉じる機能を取り扱える場合がある。

イジェクトされるデバイスは、 device または mountpoint に対応するものである。 この名前が指定されなかった場合、 デフォルト名 /dev/cdrom が用いられる。 デバイスは、 デバイス名 (たとえば 'sda')、 デバイスパス (たとえば '/dev/sda')、 UUID=uuid、 LABEL=label タグを用いて指定することができる。

デバイスのイジェクトは、 そのデバイスが CD-ROM、 SCSI デバイス、 リムーバルフロッピー、 テープの別により、 それぞれ異なる方法を用いて行う。 デフォルトで eject は、 イジェクトが成功するまで、 この 4 つの方法を順に試す。

デバイスパーティションが指定された場合は、 ディスクデバイス全体が用いられる。

そのデバイスあるいはデバイスパーティションが、 その時点でマウントされている場合は、 イジェクトの前にアンマウントを行う。 if --no-unmount または --force が指定されていない場合、 排他的なオープンブロックデバイスのファイルディスクリプターを使って、 イジェクトが処理される。

オプション

-a, --auto on|off

このオプションは、 自動イジェクトモードを制御する。 これは一部のデバイスにおいてサポートされている。 これが有効化されていると、 デバイスがクローズされた際に、 ドライブは自動的にイジェクトされる。

-c, --changerslot slot

このオプションを指定すると、 ATAPI/IDE CD-ROM チェンジャーの CD スロットを選択することができる。 チェンジャーを動作させるためには、 CD-ROM は動作中 (データ CD マウント中や、 音楽 CD のプレイ中) でないことが必要である なお、 チェンジャーの第 1 スロットは、 1 としてではなく、 0 として参照される点に注意すること。

-d, --default

デフォルトのデバイス名を一覧表示する。

-F, --force

強制的にイジェクトを行う。 デバイスタイプのチェックは行わず、 デバイスのオープンに際して、 排他ロックを行わない。 ホットプラグではないデバイスに対しては、 結果が成功していても、 誤った結果を返す場合がある。

-f, --floppy

本オプションは、 リムーバルフロッピーディスクに対するイジェクトコマンドを使って、 イジェクトするべきドライブであることを指定する。

-i, --manualeject on|off

このオプションは、 ハードウェアイジェクトボタンのロックを制御する。 これを有効にすると、 ボタンを押下しても、 ドライブはイジェクトされない。 たとえば、ノート PC をバッグやケースに入れていて、 思わぬところでボタンが押されて、 イジェクトが起きて欲しくないような場合に、 この機能を利用することができる。

-M, --no-partitions-unmount

このオプションは eject に対して、 デバイスがパーティションに分かれている場合は、 別パーティションをアンマウントしないようにする。 別パーティションがまだマウントされている場合、 このプログラムは、 メディアのイジェクトを行わない。 アンマウントを行うのは、 コマンドライン上から指定されたデバイス、 またはマウントポイントのみである。

-m, --no-unmount

このオプションは eject に対して、 アンマウントを一切行わないようにする。 このオプションが指定されていない場合、 ejectO_EXCL フラグを使ってデバイスをオープンして、 このデバイスが使用されていないことを確認する (v2.35 以降)。

-n, --noop

このオプションを指定すると、 選択されたデバイスが表示されるが、 何の操作も行わない。

-p, --proc

このオプションを指定すると、 /etc/mtab ではなく /proc/mounts を利用する。 さらに、 umount(8) に対しては、 -n オプションを受け渡すようになる。

-q, --tape

このオプションは、 テープドライブのオフラインコマンドを使って、 イジェクトを行うドライブであることを指定する。

-r, --cdrom

このオプションは、 CDROM イジェクトコマンドを使って、 イジェクトを行うドライブであることを指定する。

-s, --scsi

このオプションは、 SCSI コマンドを使って、 イジェクトを行うドライブであることを指定する。

-T, --traytoggle

このオプションを使うことで、 CD-ROM のトレイが開いている場合は、 CD-ROM トレイのクローズコマンドが実行される。 また、 トレイがクローズしていた場合は、 CD-ROM トレイのイジェクトコマンドが実行される。 あらゆるデバイスが、 このコマンドをサポートするわけではない。 なぜならこのオプションは、 CD-ROM トレイのクローズコマンド以上のことを利用しているからである。

-t, --trayclose

このオプションを使うことで、 CD-ROM トレイのクローズコマンドが実行される。 あらゆるデバイスが、 このコマンドをサポートするわけではない。

-h, --help

ヘルプを表示して終了する。

-V, --version

バージョンを表示して終了する。

-v, --verbose

詳細モードにより実行する。 これにより、 このコマンドが行っている詳しい情報が表示される。

-X, --listspeed

このオプションを使うと、 CD-ROM ドライブの利用可能な速度が調べられる。 その出力は、 利用可能な速度の一覧であり、 これは -x オプションの引数として利用できる。 これは Linux 2.6.13 以降においてのみ動作するものであり、 それ以前のバージョンでは、 最大速度のみが取得されるのみである。 なお、 ドライブの中には、 適正な速度が取得できないものがある。 この場合、 本オプションは適切に動作しない。

-x, --cdspeed speed

このオプションを使うと、 ドライブに対して、 CD-ROM の速度選択コマンドが実行される。 引数 speed は、 目的とする速度を示す数値を指定する (たとえば 8 倍速に対しては 8)。 また 0 を指定すれば、 最大速度となる。 デバイスのすべてが、 このコマンドをサポートするわけではないため、 その機能を有しているドライブに対してのみ、 速度指定が可能である。 メディアが交換されたら、 そのたびに本オプションはクリアされる。 本オプションは、単独で利用するか、 あるいは -t オプションや -c オプションとともに用いる。

終了ステータス

操作に成功すれば 0 を返し、 操作に失敗したり、 コマンドの書式が無効なときは、1 を返す。

注意

eject が動作するのは、 4 つのイジェクト方法のうちのいずれかをサポートしているデバイスのみである。 これに該当するのは、 たいていの CD-ROM ドライブ (IDE、 SCSI、 独自仕様)、 SCSI テープドライブの一部、 JAZ ドライブ、 ZIP ドライブ (パラレルポート、 SCSI、 IDE バージョン)、 LS120 リムーバルフロッピーである。 また、 Sun SPARC や Apple Macintosh システム上のフロッピードライブでも、 正常処理されるとのユーザー報告がある。 eject が動作しない場合、 たいていは、 そのデバイスに対するカーネルドライバーの制限によるものであって、 eject プログラム自体の問題ではない。

-r-s-f-q の各オプションは、 イジェクト方法を制御する。これは複数の方法が指定可能である。 どのオプションも指定されなかった場合、 4 つの方法がすべて試される (たいていはこれによって正常動作する)。

eject は、 デバイスがマウントされている (つまり複数の名前を持っている) と、 それをうまく決定できない場合がある。 デバイス名がシンボリックリンクである場合、 eject はリンクをたどって、 そのリンク先をデバイスとして利用する。

eject は、 デバイスに複数のパーティションがあることを識別すると、 イジェクトする前に、 デバイスの全パーティションをアンマウントすることを試みる (--no-partitions-unmount も参照のこと)。 アンマウントに失敗した場合、 プログラムは、メディアのイジェクトを行わない。

音楽 CD もイジェクトすることができる。 CD-ROM ドライブの中には、 ドライブが空の場合に、 トレイのオープンを拒否するものがある。 デバイスによっては、 トレイのクローズコマンドをサポートしないものがある。

自動イジェクト機能が有効である場合、 このコマンドを実行すれば、 必ずドライブはイジェクトされる。 Linux カーネルの CD-ROM ドライバーが、すべて自動イジェクト機能をサポートしているわけではない。 自動イジェクトモードの状態を確認する方法はない。

デバイスファイルにアクセスするためには、 適切な権限が必要である。 イジェクトの際に、 root 権限が必要となるデバイスもある (たとえば SCSI デバイス)。

作者

- オリジナルの作者、

,

- util-linux バージョン

関連項目

findmnt(8), lsblk(8), mount(8), umount(8)

バグ報告

バグ報告は、 以下にある issue トラッカーを利用すること。 <https://github.com/util-linux/util-linux/issues>.

入手方法

eject コマンドは util-linux パッケージの一部であり、 以下からダウンロードできる。 Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.