Bagaimana cara mengeluarkan drive eksternal saya ketika Mac saya menolak karena Spotlight?

40

Saya telah menancapkan disk eksternal ke Mac saya. Sekarang, saya ingin mengeluarkannya. Tetapi Mac saya dengan keras kepala menolak dan mengatakan bahwa suatu aplikasi mungkin menggunakan disk tersebut.

Saya belum meluncurkan aplikasi apa pun dan tidak membuka file apa pun dari disk.

Saya telah mengunduh dan menginstal aplikasi  What's Keeping Me? Aplikasi ini cukup bagus. Dia memberi tahu saya bahwa prosesnya  mdsmenggunakan disk saya.

Saya telah membunuh proses  mdsdan beberapa proses  mdworker. Ini untuk Spotlight. Tetapi proses seperti itu bisa muncul lagi.

Bagaimana saya bisa mengeluarkan saya disk dari saya Mac?

Saya memiliki Mac OS X 10.6.8.

Nicolas Barbulesco
sumber
Apakah hanya menunggu proses untuk mengakhiri pekerjaan? Saya menemukan ini bekerja dalam praktek untuk saya.
Chogg

Jawaban:

27

Cukup matikan pengindeksan untuk drive dan hapus isi jurnal pada volume. Untuk melakukannya, buka Terminal dan masukkan perintah berikut:

sudo mdutil -Ei off "/Volumes/Name_of_Drive"

Anda harus menjalankan prosedur ini sebagai admin. Masukkan kata sandi Anda saat diminta. Reboot mungkin diperlukan.

Atau, seperti yang disarankan oleh Simon White, matikan mesin dan cabut drive. Peringatannya adalah bahwa drive akan mulai mengindeks ketika terhubung lagi, namun.

njboot
sumber
4
cukup menghentikan prosesnya sudah cukup. sudo mdutil -i off "/Volumes/Name_of_Drive"( -Emenghapus dan membangun kembali indeks). Seharusnya mulai memindai lagi saat berikutnya Anda memasang drive. untuk menonaktifkan pemindaian drive secara permanen, gunakan -d( sudo mdutil -d "/Volumes/Name_of_Drive"). Lihat semua argumen ini dan lainnya dengan mengetik mdutilke baris perintah Anda.
Dannid
2
Menyukai tip, tapi tolong jangan menyarankan keluar setelah perintah ... Saya tidak melihat dan kehilangan sejarah output yang saya miliki di sana.
ravemir
@njboot - Tidak. Perintah "history" hanya memberi saya histori dari perintah yang dimasukkan, itu tidak mengembalikan hasil mereka.
Nicolas Barbulesco
1
Setelah mengeluarkan perintah mdutil, saya masih tidak bisa mengeluarkan disk. Jadi saya juga mengeluarkan "sudo killall mds", dan itu membuatnya bekerja.
Thomas Tempelmann
21

Anda dapat mencoba melepasnya dari baris perintah:

diskutil unmount /Volumes/MountPoint

atau dengan paksa:

diskutil unmount force /Volumes/MountPoint

Jika masih gagal, periksa apa yang menggunakan disk Anda:

sudo fs_usage -w -f filesys | grep Volumes

Atau menggunakan lsof:

sudo lsof | grep Volumes

(Beberapa proses hanya muncul ketika lsof dijalankan sebagai administrator.)


Untuk menonaktifkan Spotlight sementara, jalankan:

sudo mdutil -a -i off

Kemudian sudo mdutil -a -i onuntuk mengaktifkan kembali.


Aplikasi lain yang dapat membantu: Whats Keeping Me .

kenorb
sumber
2
Saya baru tahu bahwa Spotlight (mds, mds_store, mdworker) tidak akan terdaftar ketika saya jalankan lsofsebagai pengguna. Namun, sudo lsof | grep Volumesberfungsi dengan baik. ("Whats Keeping Me", masing-masing memiliki kotak centang "Sebagai Administrator")
hans_meine
5

Seringkali saya mendapati bahwa mds-lah yang mencegah saya melepaskan volume.

sudo killall mds

Dan kemudian (dengan cepat) mencoba mengeluarkan volume lagi.

Dalam kasus saya, saya memasang volume utama Mac lain di Mac saya saat ini. Saya tidak ingin menonaktifkan Spotlight karena saya ingin pengindeksan dilanjutkan ketika volume eksternal dikembalikan ke Mac lain (sebagai volume boot-nya).

Colin
sumber
Menarik. Mungkin "cepat" adalah kuncinya!
Nicolas Barbulesco
Terima kasih! Ini adalah satu-satunya jawaban yang bekerja untuk saya selain memaksa keluar, yang tidak ingin saya lakukan.
addison
2

Untuk mencegah Spotlight mengindeks drive, buat file plaintext di TextEdit tanpa konten, cukup judul .metadata_never_index dan simpan ke eksternal. Hapus centang penggunaan ekstensi "txt" ... dan beri tahu TextEdit bahwa ya, Anda ingin menyimpannya dengan sebuah titik di depan (yang akan membuatnya tidak terlihat.)

Saya tidak yakin apakah itu akan menghentikannya sekarang, tetapi itu akan mencegahnya di masa depan.

Atau, buat Applescript ini menjadi aplikasi, untuk memaksa keluar [dengan peringatan yang biasa pada force-ejecting ...] ... kredit ke The MacTipper Blog

    property show_credits : true

set the_volumes to do shell script "ls /Volumes/"
tell application "Finder" to set the_HD to path to home folder as string

set ejectable_volumes to {}
repeat with i in (every paragraph of the_volumes)
    if the_HD does not start with i then
        set end of ejectable_volumes to (i as string)
    end if
end repeat
if (count of items of ejectable_volumes) is 0 then
    tell me to activate
    display dialog "Sorry, but there are no ejectable volumes."
else if (count of items of ejectable_volumes) is 1 then
    tell me to activate
    set the_result to item 1 of ejectable_volumes as string
    display dialog ("Eject \"" & the_result & "\"?") buttons {"No", "Yes"} default button 2 cancel button "No"
    set the_path to quoted form of ("/Volumes/" & the_result as string)
    do shell script "hdiutil eject -force " & the_path
else
    tell me to activate
    set the_result to choose from list ejectable_volumes with prompt "Please choose a volume to eject (You can select multiple items):" with multiple selections allowed
    if the_result is not false then
        repeat with j in the_result
            set the_path to quoted form of ("/Volumes/" & j as string)
            do shell script "hdiutil eject -force " & the_path
        end repeat
    end if
end if

if show_credits is true then
    tell me to activate
    set the_credits to button returned of (display dialog "This applescript brought to you by The MacTipper Blog.\n\nhttp://mactipper.com" buttons {"Don't Show Again", "Visit TMB", "OK"} default button 3) as string
    if the_credits is "Don't Show Again" then
        set show_credits to false
    else if the_credits is "Visit TMB" then
        open location "http://mactipper.com"
    end if
end if
Tetsujin
sumber
Terima kasih. Tapi ... "untuk memaksa mengeluarkan [dengan peringatan yang biasa pada paksa-mengeluarkan ...]" Ini mengkhawatirkan. Jika saya setuju untuk mengambil risiko merusak disk, saya hanya akan mencabutnya.
Nicolas Barbulesco
Lalu atur tanda no spotlight & tunggu sampai melihatnya & hentikan pengindeksan.
Tetsujin
Atau, Anda dapat lari sudo diskutil unmountDisk force /Volumes/Name_of_Volumedari Terminal untuk melakukannya secara paksa. Naskah itu tidak perlu.
njboot
@NicolasBarbulesco Ini tidak sama. Melepas paksa volume tidak sama dengan menarik steker. Dalam kasus terakhir, Anda secara fisik melepaskan daya dari perangkat secara tiba-tiba, yang, seperti yang dibayangkan, dapat menyebabkan kerusakan pada disk magnetik yang berputar pada beberapa K rpm. Di yang pertama, Anda cukup memaksa perangkat untuk melepas volume. Disk kemudian berputar dengan benar, dan Anda menarik steker seperti biasa. Jauh lebih aman.
njboot
@njboot - Saya tidak mencoba diskutilperintah Anda . Tapi saya sudah mencoba yang setara dengan Disk Utility - tidak berhasil.
Nicolas Barbulesco
2

Anda dapat mencoba untuk keluar dari Finder, ini bekerja untuk saya. Finder tergantung pada drive USB, sehingga berhenti secara paksa dan meluncurkan kembali melepaskan apa pun hang itu.

pengguna128242
sumber
bagaimana orang melakukan itu? paksa berhenti mencari?
Ruskes
Opsi + Perintah + ESC!
sdive
Tapi bisakah ini berfungsi dalam kasus Spotlight dari pertanyaan saya?
Nicolas Barbulesco
1

Jika Anda tidak dapat memutuskan koneksi drive dengan alasan apa pun, Anda cukup mematikan komputer. Saat komputer mati, Anda dapat melepaskan drive dengan aman. Kemudian nyalakan komputer. Ini tidak hanya akan memungkinkan Anda untuk mencabut drive dengan aman, tetapi juga akan memastikan bahwa proses mds restart jika itu benar-benar digantung.

Jika Anda telah memutuskan bahwa Anda tidak ingin menggunakan Spotlight dengan drive itu, yang harus Anda lakukan untuk menghentikannya agar tidak diindeks adalah menambahkan drive ke tab Privacy di panel Spotlight panel System Preferences. Spotlight akan mengabaikan drive.

Atau, jika Anda ingin menggunakan Spotlight pada drive itu, lalu membuat indeks saat pertama kali komputer melihat drive adalah kejahatan yang diperlukan. Setelah indeks dibangun, indeks diperbarui dengan setiap perubahan pada setiap file, sehingga tidak akan membuat Anda menunggu lagi. Tetapi jika Anda tidak melihat bilah kemajuan di menu Spotlight, maka kemungkinan mds digantung. Sekali lagi, cukup Matikan komputer dalam kasus itu, dan lepaskan drive Anda.

Simon White
sumber
1
Tentunya saya bisa mematikan Mac. Tapi ini bukan pilihan.
Nicolas Barbulesco
Saya suka gagasan memiliki Spotlight tahu disk saya. Tetapi saya mencoba membuat Spotlight mengabaikan disk saya untuk saat ini. Dengan menggunakan System Prefs → Spotlight. Ini tidak berhasil: "Tidak mungkin karena kesalahan yang tidak diketahui." Pesan kesalahan besar! Apple pasti telah menyewa seorang pembelot dari Micro $ oft! Saya juga mencoba membiarkan waktu bertindak. Saya pergi bekerja dan membiarkan Spotlight mengindeks disk sepanjang hari. Malamnya, saya kembali, dan masalahnya masih sama.
Nicolas Barbulesco
Saya benar-benar berpikir masalahnya adalah mdsapakah tidak memberitahu sistem bahwa ia selesai dengan drive atau tidak berhenti setelah selesai dan dengan demikian, memegang drive sampai prosesnya mati entah bagaimana (seperti shutdown). Jika saya melihat mdstidak menggunakan CPU saat mengklaim menggunakan drive, saya paksa mengeluarkan drive.
bauerMusic
@ BauerMusic - Bagaimana Anda "memaksa mengeluarkan drive"?
Nicolas Barbulesco
@NicolasBarbulesco 'Force eject drive' adalah opsi yang ditawarkan sistem setelah beberapa saat. Jika Anda mencoba untuk mengeluarkan, itu harus mengatakan 'Mencoba untuk mengeluarkan drive Anda' (atau serupa) dan setelah sekitar satu menit (tidak berhasil), tunjukkan sembulan lain yang memiliki pilihan untuk memaksa mengeluarkan.
bauerMusic
1

Pilihan sederhana lainnya adalah mengeluarkannya melalui Disk Utilities.

Tim Undheim
sumber
Apakah Anda membaca komentar dalam jawaban Tetsujin? Disk Utility tidak menawarkan opsi "force"
klanomath
Cobalah. Keluaran sederhana melalui Disk Utilities selalu berfungsi untuk saya ketika drive eksternal dalam bentuk apa pun tidak mau keluar karena "sedang digunakan."
Tim Undheim
Saya memang mencoba mengeluarkan drive dengan Disk Utility. Tetapi ini tidak berhasil.
Nicolas Barbulesco
1
Maaf mendengar tentang itu. Disk Utility mengeluarkan disk yang "tidak digunakan" yang sedang digunakan pada unit saya yang berjalan pada 10.7.5. Anda mungkin melihat DiskWarrior.
Tim Undheim
1
Untuk alasan apa pun, menggunakan perintah Disk Utility unmount bekerja untuk saya di disk masalah.
MiB
0

Anda dapat memberi tahu Spotlight bahwa itu seharusnya tidak pernah mengindeks drive itu dan kemudian Anda tidak perlu khawatir tentang hal itu.

Dalam System Preferences 10.11 ada entri untuk 'Spotlight', yang memiliki tab bernama 'Privasi'. Klik '+', pilih drive Anda, dan Anda selesai. Tutup saja Preferensi Sistem, tunggu beberapa detik agar sistem melihat pembaruan, dan Anda harus dapat mengeluarkan. Sekarang ia tidak akan mulai mengindeks disk saat berikutnya Anda terhubung, jadi Anda tidak akan memiliki masalah lagi di masa depan.

David K. Storrs
sumber
Saya mencobanya. Itu tidak berhasil. Lihat komentar saya di sini: apple.stackexchange.com/questions/142459/…
Nicolas Barbulesco