Mematikan hard drive eksternal, flash drive, dll menggunakan baris perintah di Linux

8

Saya selalu berpikir bahwa untuk menghapus perangkat yang telah dipasang dengan aman adalah menggunakan umountperintah dan sampai saat ini ketika saya beralih ke Ubuntu 12,04 LTS, saya perhatikan bahwa ada kemampuan untuk menghapus perangkat dengan aman yang membuat saya penasaran.

Saya menggali sejumlah posting dan menemukan bahwa umountternyata tidak berarti saya dapat menghapus perangkat dengan aman karena tidak mematikan perangkat. Saya tahu ada opsi untuk eject. Sekarang ini pemahaman saya setelah menjelajahi Internet. Referensi meliputi:

Saya kemudian menemukan sebuah artikel tetapi menemukan proses yang berbelit-belit dan saya pikir saya akhirnya memukul membayar ketika saya menemukan perintah udisksmisalnyaudisks --unmount /dev/sdb1 && udisks --detach /dev/sdb

Apa yang membingungkan saya adalah (selain dari apakah umountsebenarnya berarti aman untuk menghapus perangkat tanpa kehilangan data dan apakah saya perlu menggunakan perintah syncsebelum itu serta bahwa perangkat telah dimatikan yang dihapus dengan aman tampaknya tercapai) adalah mengapa Saya harus menggunakan /dev/sdbdiikuti --detachsebagai lawan/dev/sdb1

Kacang Kacang Tanah
sumber

Jawaban:

6

/dev/sdbadalah seluruh perangkat. /dev/sdb1adalah satu partisi pada perangkat itu.

Walaupun Anda bisa menggunakan disk tanpa mempartisi, itu agak tidak biasa (di luar pengaturan RAID, tapi kemudian Anda membuat sistem file pada node perangkat raid, bukan node perangkat fisik).
Tidak masuk akal untuk mencoba melepaskan (secara fisik menghapus) satu partisi - Anda ingin menghapus seluruh perangkat (yang dapat berisi banyak partisi), bukan hanya satu partisi dari perangkat itu.

Melepas partisi akan menyinkronkan sistem file, sehingga panggilan syncsebelumnya unmounttidak diperlukan.
Memanggil udisks --detachperangkat memeriksa apakah Anda tidak memiliki sistem file yang terpasang pada perangkat itu (Anda harus memastikan bahwa panggilan itu memang berhasil), dan akan melakukan "shutdown tertib", yang selalu lebih disukai daripada pendekatan "tarik steker", terlepas dari apakah perangkat tertentu itu melakukan sesuatu yang istimewa.

Tikar
sumber
Saya tidak tahu bahwa / dev / sdb mewakili seluruh perangkat yang saya anggap mewakili semua partisi. Apakah itu benar? Jadi saya bisa menjalankan perintah seolah- udisks --unmount /dev/sdb && udisks --detach /dev/sdbolah saya ingin meng-unmount semua partisi? Masuk akal untuk hanya melepas satu partisi jika ada beberapa partisi.
PeanutsMonkey
Bagaimana Anda juga memastikan bahwa panggilan udisks --detachitu berhasil?
PeanutsMonkey
Tidak, unmount /dev/sdbtidak akan berfungsi. Anda perlu meng-unmount setiap partisi yang dipasang, dan melihat / parsing output dari perintah.
Mat
Maaf, jangan cukup ikuti apa yang Anda maksud dengan melihat atau mengurai output perintah? Tidakkah saya harus meng-unmount setiap partisi dan kemudian menjalankan perintah udisks --detach /dev/sdb?
PeanutsMonkey