Linux のコマンドラインを使用して外付けハードドライブ、フラッシュドライブなどの電源を切る

Linux のコマンドラインを使用して外付けハードドライブ、フラッシュドライブなどの電源を切る

マウントされたデバイスを安全に取り外すには、 コマンドを使用するのが適切だと私は常に思っていましたがumount、最近 Ubuntu 12.04 LTS に切り替えたときに、デバイスを安全に取り外す機能があることに気づき、興味をそそられました。

いくつかの投稿を調べてみたところ、umountどうやらデバイスの電源が切れないので、デバイスを安全に取り外せるわけではないようです。 というオプションがあることは知っていますeject。これが、インターネットを徹底的に調べた結果の私の理解です。参考資料には以下が含まれます。

私はその後、記事udisksしかし、そのプロセスは複雑で、例えば次のコマンドを見つけたときにようやく大当たりしたと思います。udisks --unmount /dev/sdb1 && udisks --detach /dev/sdb

私が混乱しているのは(umount実際にデータ損失なしでデバイスを取り外すことが安全であることを意味するかどうか、またその前にコマンドを使用する必要があるかどうか、そして安全に取り外すことで達成されると思われるデバイスの電源がオフになっているかどうかは別として)、なぜではなく に続いて をsync使用する必要があるのか​​ということです。/dev/sdb--detach/dev/sdb1

答え1

/dev/sdbデバイス全体です。/dev/sdb1そのデバイス上の 1 つのパーティションです。

パーティションを分割せずにディスクを使用することもできますが、これはかなり珍しいことです (RAID セットアップ以外では、物理デバイス ノードではなく RAID デバイス ノードにファイル システムを作成します)。単一
のパーティションをデタッチ (物理的に削除) しようとするのは、実際には意味がありません。デバイスの 1 つのパーティションだけではなく、デバイス全体 (複数のパーティションを含む場合があります) を削除する必要があります。

パーティションをアンマウントするとファイルシステムが同期されるため、syncbeforeを呼び出すunmount必要はありません。デバイスを
呼び出すudisks --detachと、そのデバイスにファイルシステムがマウントされていないことがチェックされ (呼び出しが実際に成功したことを確認する必要があります)、「正常なシャットダウン」が実行されます。これは、その特定のデバイスが特別なことを行うかどうかに関係なく、「プラグを抜く」アプローチよりも常に望ましい方法です。

関連情報