「ドライブの安全な取り外し」に相当するコマンドラインとは何ですか?


回答:


39

udisksコマンドは、最も可能性の高いあなたが探しているものです。

一方でsudo unmount /dev/sdXY動作しますが、udisksはルートレベル(須藤)の許可なしにこれを行うことができます。

/dev/sdXYXがusbディスクを表す文字、Yがパーティション番号(通常は1)であるドライブがマウントされている場合、次のコマンドを使用してドライブを安全に削除できます。

udisks --unmount /dev/sdXY
udisks --detach /dev/sdX

実際の例として、パーティションを/dev/sdb1マウントしている場合、これを実行してマウントを解除し、切り離します。

udisks --unmount /dev/sdb1
udisks --detach /dev/sdb

:私はもともとこの質問を介してこれを見つけhttps://superuser.com/a/430470/176493

udisks2の使用:

新しいubuntuディストリビューション(切り替えがいつ発生したかはわかりません)では、udisksの代わりにudisks2がインストールされます。

上記のコマンドをミラーリングして、udisks2でディスクをアンマウントおよびデタッチします。

udisksctl unmount -b /dev/sdXY
udisksctl power-off -b /dev/sdX

私のドライブが/dev/sdb1次の場合の例:

udisksctl unmount -b /dev/sdb1
udisksctl power-off -b /dev/sdb

Detach failed: Not Authorizedルート権限なしで実行しようとすると取得します。(深刻な問題ではなく、小さな修正。)
ジョナサンY.

どのバージョンのUbuntuを実行していますか?また、ドライブをどのようにマウントしましたか?ルート権限を使用してマウントした場合、または(現在のユーザーのNautilusまたはudisksとは対照的に)別のユーザーとしてログインした場合、ユーザーはを使用してマウント解除する権限を持ちませんudisks
ダボロス

2
はい、私はして搭載しsudo、私もumountしようとする前に編--detach。これは、ubuntuサーバーの信頼できるリリースです。
ジョナサンY.

ああ、Ubuntuサーバーとの違いかもしれません。デタッチは、私のデスクトップでroot権限がなくても機能します。
ダボロス

2
@morhookはudisks2をサポートした最新の回答をご覧ください!
ダボロス

21

Nautilusのマウント/アンマウント操作に実際に相当するのはgvfs-mount -m -d /dev/ice /some/directorygvfs-mount -u /some/directoryです。これは、Nautilusが使用するのと同じAPIであるGIO仮想ファイルシステム(gvfs)を使用します。これは、smb、NFS、FTP、ブロックデバイスなどのいくつかのサービスをマウントポイントとして使用するさまざまなツールを提供します。

マウント解除する必要があるデバイスを識別するには、どちらを使用gvfs-mount -lすれば十分かを確認します。

このソリューションには、すべてがumount / gvfsd / polkitサービスによって管理されるため、昇格されたアクセス許可を必要としないという特徴があります。これは、Nautilusの動作との類似性にさらに類似しています。


2
これが最も正しい答えのようです。私たちの多くはudisks(他の回答で提案されている)「ルート」非ルートユーザーがデスクトップにリムーバブルディスクをマウントおよびアンマウントする方法として考えることに慣れていますが、ここで説明gvfs-mountするように他のメカニズムを使用する場合があります。(私のUbuntu MATE Utopicシステムでは、udisksパッケージはインストールされていません。)
エリアウ・カガン14年

1
Ubuntu 18.40 gioには、gvfs-mountに代わるものがあります。
studog

13

@rcpao answerのdfような情報を使用してデバイスを知ったら、ディスクを「イジェクト」する最良の方法は、グラフィカルインターフェイスが使用しているのと同じコマンドを使用することです。

udisksctl unmount --block-device /dev/sdc1

私は、下/media/romano/movlinにマウントすることがわかっているディスクにバックアップを行うスクリプトを持っています。

sync
udisksctl unmount -b $(mount | grep movlin   | cut -d" "  -f1)

ここでmount | grep movlin | cut -d" " -f1は、ラベル「movlin」の下にマウントされているデバイスを抽出し(/dev/sdc1その場合)、それをアンマウントします。


sync前に手動で実行することは本当に必要udisksctl unmountですか?
エリアケイガン14年

おそらくない。しかし、一般的なキャッシュの正しい動作についてはよくわかりません。マウント解除後もUSBドライブがまだ数秒間点滅しているように感じます。それは昔の名残だとしましょうsync; sync; sync && poweroff...
Rmano

@Rmanoマウント解除されたと思われるフラッシュドライブ(通常はKDEのGUIを使用して行われます)でフラッシュが何度も表示されます。私はそれを抜く前にそれを待ってみます。これは(私の訓練されていない目では)何かが正しくないように見えます。アクティビティインジケータライトのないフラッシュドライブではさらに悪化します。
ジョー14年

1
Rmanoは、udisksUbuntuにデフォルトで存在しudisksctlないため、推奨されるソリューションです。udisksctl power-off --block-device /dev/sdc外付けUSBフラッシュドライブのライトをオフにして、次のコマンドとして使用するのに適している場合があります。
H2ONaCl

8
  1. dfを使用して、フラッシュドライブのマウントポイントを見つけます。

    rcpao@bun:~$ df
    Filesystem                   1K-blocks       Used  Available Use% Mounted on
    /dev/mapper/ubuntu--vg-root 1916153032  658404668 1160390336  37% /
    none                                 4          0          4   0% /sys/fs/cgroup
    udev                          16438692          4   16438688   1% /dev
    tmpfs                          3289976       2156    3287820   1% /run
    none                              5120          0       5120   0% /run/lock
    none                          16449860      18768   16431092   1% /run/shm
    none                            102400         48     102352   1% /run/user
    /dev/sda1                       240972      98990     129541  44% /boot
    /dev/sdc1                     60915712      20992   60894720   1% /media/rcpao/SD024-64GB
    
  2. / dev / sdc1または/ media / rcpao / SD024-64GBを使用してアンマウントします。

    rcpao@bun:~$ sudo umount /dev/sdc1
    [sudo] password for rcpao: 
    rcpao@bun:~$
    

    または

    rcpao@bun:~$ sudo umount /media/rcpao/SD024-64GB
    [sudo] password for rcpao: 
    rcpao@bun:~$
    
  3. umountが完了するとすぐに、フラッシュドライブの取り出しアイコンがnautilusで消えることを確認できるはずです。


2
dfデバイスの場所を特定するのに非常に便利です。
H2ONaCl 14年

2
フラッシュドライブの場合、これは合理的です。ディスクドライブの場合、「安全な取り外し」もスピンダウンしますが、このソリューションはそれを行いません(そのためのDaboRossによる回答を参照してください)。
ネイト・エルドレッジ14年

3
はい、udisks --detachマウント解除後にドライブを完全に切り離すのに役立ちます。
ダボロス14年

1
dfおよびumountは、標準のUNIXユーティリティです。これらは常に機能しますが、dbusと実行中のudisksdにudisks依存するため、それらを知ることは常に良いことです。
サイモンリヒター14年

1
@NateEldredge:「フラッシュドライブの場合、これは合理的です...」 –実際にはそうではなく、この理由で私は投票しません。のcp /path/to /drive && umount drive。これにより、2つのフラッシュドライブが(一時的に)書き込み不可になり、それが原因のコマンドであることがわかりました。Windowsマシンで「スキャンと修復」を実行すると、ドライブが修正されました。以下のDaboRossの回答は、はるかに安全です。
アンディE 14年

2

eject取り出しパッケージから:

sudo eject /dev/sdX

umountすべてのパーティションに表示され、デバイスを削除して再接続して再マウントする必要がある状態にします。


いくつかのアプリケーションでは、このイジェクトコマンドが最適な方法です。他の答えのほとんどは「十分」ですが、技術的には、Nautalisのイジェクトアイコンはデバイスの電源を切るようなことはしません。私の経験では、イジェクトはUSBのイジェクトボタン自体の機能により近くなっています。sudoを避けたい場合は、自分をディスクグループに追加できます(ログアウトとログインが必要です)。このコマンドは「sudo adduser user disk」です
-SpiRail
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.