не може вимкнути індексацію прожектора на зовнішньому диску


5

Я знаю, що це питання було задано і раніше, але запропоновані рішення для мене не працюють.

Щойно я закінчив приєднувати абсолютно новий зовнішній жорсткий диск і чекав 14 годин, щоб Time Machine завершив його резервне копіювання. Тепер я не можу вийняти накопичувач. Я отримую цю помилку:

введіть тут опис зображення

Я не хочу "Форсировать вилучення ...", тому що востаннє, коли я це робив, це зруйнувало файлову систему таким чином, що її неможливо було відновити. Таким чином необхідність нового зовнішнього жорсткого диска.

Схоже, винуватцем тут є індексація прожектора:

$sudo lsof | grep /Volumes/Backup/
mds          64           root   21r      DIR                1,7       2108  3347098 /Volumes/Backup/.Spotlight-V100/Store-V2/26061632-2165-4372-BACA-B77080B37A25
mds          64           root   24u      REG                1,7          0  3347143 /Volumes/Backup/.Spotlight-V100/Store-V2/26061632-2165-4372-BACA-B77080B37A25/journalExclusion
mds_store   310           root  txt       REG                1,7          8  3347107 

Я спробував додати моє резервне копіювання до списку конфіденційності Spotlight. Це, мабуть, має набути чинності негайно. Але це не так.

введіть тут опис зображення

Коли я намагаюся зупинити це за допомогою командного рядка, ось що відбувається:

mdutil -v -a -s
/:
    Indexing disabled.
/.MobileBackups:
2015-12-06 14:53:51.707 mdutil[11654:1215293] Metadata.framework [Error]: mdsCopyStoreAttributes failed: (8) (os/kern) no access
    No index.
/Volumes/Backup:
    Indexing and searching disabled.
/Volumes/Backup/Backups.backupdb:
    Indexing enabled. 
    Scan base time: 1970-01-01 00:00:01 +0000 (1449442430 seconds ago), reasoning: '(null)'

також спробував це ...

$sudo mdutil -i off -d -E /Volumes/Backup/Backups.backupdb/
Password:
/Volumes/Backup/Backups.backupdb:
2015-12-06 16:42:53.210 mdutil[11822:1237806] mdutil disabling Spotlight: /Volumes/Backup/Backups.backupdb -> kMDConfigSearchLevelOff
    Indexing enabled. 

$sudo lsof | grep /Volumes/Backup/
mds          64            root   14r      DIR                1,7       1972  3359270 /Volumes/Backup/.Spotlight-V100/Store-V2/26061632-2165-4372-BACA-B77080B37A25
mds          64            root   22u      REG                1,7          0  3359315 /Volumes/Backup/.Spotlight-V100/Store-V2/26061632-2165-4372-BACA-B77080B37A25/journalExclusion
mds_store   310            root  txt       REG                1,7          8  3359279 /Volumes/Backup/.Spotlight-V100/Store-V2/26061632-2165-4372-BACA-B77080B37A25/0.indexIds

також намагався вбити процеси прожектора ...

$ps -ax | awk '/[m]ds/{print $1}'
64
310
$sudo kill 64
$sudo kill 310
$sudo lsof | grep /Volumes/Backup/
backupd   11828            root    4w      REG                1,7       1453  3359329 /Volumes/Backup/Backups.backupdb/Alex’s MacBook Pro/2015-12-06-164406.inProgress/.Backup.471141846.204163.log
backupd   11828            root    6w      REG                1,7 1780482048  3366847 /Volumes/Backup/Backups.backupdb/Alex’s MacBook Pro/2015-12-06-164406.inProgress/88F84A3D-497C-4059-99AE-BF8C3C91534C/Macintosh HD/Users/alexryan/VirtualBox VMs/boot2docker-vm/boot2docker-vm.vmdk
mds       11849            root   12r      DIR                1,7       2108  3359270 /Volumes/Backup/.Spotlight-V100/Store-V2/26061632-2165-4372-BACA-B77080B37A25
mds       11849            root   17u      REG                1,7          0  3359315 /Volumes/Backup/.Spotlight-V100/Store-V2/26061632-2165-4372-BACA-B77080B37A25/journalExclusion
...

Чи є спосіб, що я можу безпечно вийняти зовнішній жорсткий диск, не руйнуючи файлову систему знову?

Я запускаю OS X 10.11.1 на Macbook Pro (середина 2010 року).
Зовнішній накопичувач:
Seagate Backup Plus Slim 2TB Портативний зовнішній жорсткий диск з мобільним пристроєм резервного копіювання USB 3.0

Рішення:
Я трохи нервував процес вбивства прожектора, тому що я не був впевнений, чи не закриє він файли, які він відкрив, перш ніж вимкнутись. Я не хотів знову пошкодити свою файлову систему.

Безпосередньо вбити процеси не вийшло. Вони просто знову повернулися до життя з новими ідентифікаторами процесів.

Однак, за допомогою startctl все-таки спрацювало. Мені вдалося вийняти накопичувач. І схоже, моя файлова система не пошкодилася.

$sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist
$ps -ax | awk '/[m]ds/{print $1}'
$sudo lsof | grep /Volumes/Backup/

До речі, ви можете робити знімки екрана окремих вікон, натискаючи Command-Shift-4, натискаючи пробіл та клацнувши на вікні, для якого потрібно зробити знімок екрана. Це швидше і виглядає набагато чистіше, ніж інший спосіб.
RedEagle2000

Відповіді:


4

Ви намагалися вимкнути прожектор на пристрої за командою терміналу?

Щось на кшталт sudo mdutil -i off -d -E <mountpoint>відключення індексації, пошуку та стирання кеш-прожекторів на диску.

Відповідно до вашого виводу /Volumes/Backup, він відключений, але /Volumes/Backup/Backups.backupdbні, це може змінити запуск команди з цією точкою кріплення.


Ще одне запропоноване тут рішення - повністю припинити процес прожектора. Ви можете зробити це за допомогою kill <procid>або startctl . Ви можете його перезапустити після виймання накопичувача.

(Команда proid для kill є тією, що знаходиться у другому стовпці ваших результатів lsof, або ви можете альтернативно скористатися використанням ps -ax | awk '/[m]ds/{print $1}'для отримання пропозицій для mds та mds_store.)


спробував обидві ці пропозиції. додав результати вище.
Алекс Раян

1
Це спрацювало: sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist
Alex Ryan

Чудово чути @AlexRyan!
Яблучне
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.