Как остановить OS X от записи файлов Spotlight и Trash на карты памяти и USB-накопители?

При подключении USB-накопителя к Mac OS X создает на палочке несколько скрытых файлов, включая индекс Spotlight и папку Trash.

Пример с терминала для USB-накопителя «Без названия»:

$ ls -a /Volumes/Untitled
.Spotlight-V100
.Trashes
._.Trashes
.disk
.fseventsd

Это даже делает это на карте памяти xD для моей камеры, поэтому, скопировав мои снимки и удалив их с карты, карта все еще заполнена.

Можно ли отключить это для USB и карт памяти, поэтому OS X либо записывает эти файлы на основной диск, либо вообще не записывает их?

110 голосов | спросил j-g-faustus 20 Jpm1000000pmThu, 20 Jan 2011 20:15:08 +030011 2011, 20:15:08

20 ответов


19

ОБНОВЛЕНО Март 2018 года Похоже, что мое решение уже недействительно, решение, которое работает прямо сейчас, предлагается @ElmerCat в одном из ответов ниже.

Он предлагает использовать CleanMyDrive 2

Устаревшее решение

Как я знаю, у вас есть 2 варианта:

  1. TinkerTool (бесплатно)

alt text

  1. BlueHarvest (коммерческий)

alt text

ответил Am1rr3zA 20 Jpm1000000pmThu, 20 Jan 2011 20:49:43 +030011 2011, 20:49:43
95

Для данного конкретного тома, такого как флеш-накопитель, называемый yourUSBstick в этом примере - эти команды удаляют существующий крутизну, останавливают индексацию Spotlight сейчас и в будущем, останавливают ведение журнала связанных fsevents и отключите функцию «Корзина».

mdutil -i off /Volumes/yourUSBstick
cd /Volumes/yourUSBstick
rm -rf .{,_.}{fseventsd,Spotlight-V*,Trashes}
mkdir .fseventsd
touch .fseventsd/no_log .metadata_never_index .Trashes
cd -

Другие незнакомые вещи, которые вы все еще можете видеть, вероятно, захотите сохранить, например, Apple, двойные файлы «._ *» и другие искажения Apple DS, касающиеся значков и размещения окон.

ответил Metaxis 29 Jam1000000amSat, 29 Jan 2011 01:06:29 +030011 2011, 01:06:29
28

Чтобы сохранить Spotlight от индексирования не системных томов, добавьте /Объемы в Список конфиденциальности в Системных настройках> В центре внимания.

/Тома - это точка в файловой системе, где по умолчанию установлены все несистемные диски.

введите описание изображения здесь>> </p></body></html>

ответил Miles Leacy 20 Jpm1000000pmFri, 20 Jan 2012 17:48:21 +040012 2012, 17:48:21
16
  1. Вставьте USB-накопитель.
  2. Перейдите к Macintosh HD > Applications > Utilities и откройте терминал.
  3. В командной строке терминала введите следующую команду, заменив path_to_volume на реальный путь:

    sudo mdutil -i off /path_to_volume

  4. Нажмите return.

  5. Если вам будет предложено ввести пароль, введите пароль администратора и нажмите клавишу возврата. Вы получите ответ:

    /path_to_volume/: Indexing disabled for volume. в Mac OS X 10.4 или

    /path_to_volume: Indexing disabled. в Mac OS X 10.5 или новее.

    Spotlight немедленно перестанет индексировать указанный том.

  6. Если вы используете Mac OS X 10.5 или новее, перейдите к шагу 9.

  7. В командной строке терминала введите следующую команду, снова подставив правильный путь:

    sudo mdutil -E /path_to_volume и нажмите return

  8. Если вам будет предложено ввести пароль, введите пароль администратора и нажмите клавишу возврата. Вы получите ответ:

    /path_to_volume/: Volume index removed.

  9. В командной строке терминала введите exit, затем нажмите return.
  10. Выход из терминала.

Благодаря thexlab.com их устранение электронных книг Mac OS X и их веб-сайт для подробного объяснения того, почему другие методы сортируются работы.

ответил Chainsaw 9 FebruaryEurope/MoscowbThu, 09 Feb 2012 00:05:31 +0400000000amThu, 09 Feb 2012 00:05:31 +040012 2012, 00:05:31
14

Еще один способ справиться с (только) файлами spotlight - добавить этот том в список исключений Spotlight. Подключите устройство и перейдите к предустановке Spotlight в системных настройках. Перейдите на вкладку Конфиденциальность. Теперь перетащите этот том со своего рабочего стола в список конфиденциальности .. или используйте кнопку + внизу, чтобы добавить его. На этом томе не будет больше индексирования индекса.

ответил Harv 20 Jpm1000000pmThu, 20 Jan 2011 23:49:06 +030011 2011, 23:49:06
8

2017 Декабрь

Вы бы подумали, что после всех этих лет Apple будет строить что-то в Finder, чтобы справиться с этим. Это все еще очень распространенная проблема для людей, использующих USB-диски или SD-карты для воспроизведения мультимедиа в своих автомобилях или других устройствах.

Тем не менее, разработчики заполнили пустоту многочисленными приложениями, одобренными Apple. Приложения, перечисленные в предыдущих ответах, могли быть хорошими в то время, но они не поддерживались для работы с современными версиями macOS.

Я также опасаюсь установить что-то, что будет полностью контролировать файловую систему, написанную неопознанными разработчиками. Нежелание иметь дело с App Store - это одно, но не желать регистрироваться у Apple в качестве разработчика - это другое. Кроме того, что-то из AppStore претерпело как минимум минимальный аудит Apple и может быть удален с вашего компьютера так же легко, как он установлен.

Итак, всякий раз, когда вы читаете этот «ответ», его совет для вас - искать в App Store что-то обновленное, хорошо просматриваемое и бесплатное.

TL; DR:

Мой выбор на 20 декабря 2017 года - это «CleanMyDrive 2» из App Store. Решает проблему, прекрасный интерфейс, совершенно бесплатно. (Предложения в приложениях для заказных значков, в противном случае все работает бесплатно.)

Завтра может появиться что-то лучшее, но суть в следующем: у App Store есть бесплатные, простые решения для оригинального, но долговременного вопроса jg-faustus, созданного здесь столько лет назад - вопрос, который у меня был сегодня .

Итак, я приношу свои извинения, если это больше похоже на напыщенность, чем на ответ, но на самом деле все предыдущие ответы были устаревшими и не привели к полезному решению. Не говоря, что-то привело бы больше людей к тому, чтобы тратить время на вождение Терминалом или установку сомнительных приложений. Просто зайдите в App Store - вам не придется платить.

ответил ElmerCat 16 J000000Sunday17 2017, 21:47:39
5

Я использую командную строку терминала MacOS, чтобы отображать и удалять все эти файлы и папки перед выталкиванием устройства с рабочего стола. Для некоторых файлов вам может потребоваться выполнить команду /bin /rm.

ответил hotpaw2 20 Jpm1000000pmThu, 20 Jan 2011 23:20:48 +030011 2011, 23:20:48
4

Я использую Clean Eject (бесплатно) и пользовательскую службу Automator (все еще закрытую), поэтому я может назначить горячую клавишу для очистки & Извлеките том с помощью приложения.

ответил Matt Sephton 9 Jpm1000000pmThu, 09 Jan 2014 14:20:28 +040014 2014, 14:20:28
4

@ Сообщение Майлза Лейси

и комментарий @ qarma:

Нет, это возможно еще даже в OSX 10.9, но теперь вам нужно сделать несколько дополнительных шагов:

1) В Finder нажмите Перейти , затем нажмите Перейти к папке ...

2) Введите /Объемы и нажмите «Перейти».

3) Откроется окно Finder, и оно должно быть Тома вверху.

Это самый важный шаг:

4) Рядом с тем, где он говорит Объемы в верхней части окна Finder, есть значок маленькой голубой папки. Нажмите и перетащите этот значок в панель Избранное .

5) Теперь у вас будет доступ к папке Volumes в любом месте, в том числе в настройках Spotlight, например, предложенной Майлсом Лейси. (Если вам это нужно, просто нажмите ссылку Избранное , чтобы выбрать его.)

Надеюсь, что это поможет,

Бест,

Влад:)

~ ~ ~

Как добавить папку Томов в Избранное, чтобы вы могли получить доступ к ней в настройках Spotlight

~ ~ ~

Как это выглядит после добавления папки «Томасы» в список исключений Spotlight:

Обратите внимание, что в фоновом режиме вы можете видеть мой пост в Safari. ;)

Как это выглядит после добавления папки Volumes в список исключений Spotlight

ответил Vladimir 9 AMpWed, 09 Apr 2014 03:43:57 +040043Wednesday 2014, 03:43:57
3

Фактически касание файла .Trashes будет лучшим способом решить вашу главную проблему, так как .Trashes теперь является файлом вместо папки. Это означает, что Apple не может перемещать файлы в папку .Trashes, когда вы их удаляете, и ваш диск больше не заполнен.

Другой вариант - нажать Cmd-Opt-Shift-Backspace, чтобы заставить Finder опорожнить содержимое .Trashes на карте, прежде чем вы его выгрузите.

Первый метод действительно лучший, поскольку второй влияет на все содержимое корзины на всех дисках.

Однако из вашего сообщения, похоже, вас больше беспокоит загрязнение диска различными файлами точек. Если вы выполните описанные выше шаги, вы сохраните дисковое пространство, но будет создано не менее файлов точек.

ответил Timpraetor 15 PM00000080000000131 2013, 20:27:01
2

Легкий способ остановить мой автомобильный звук, пытаясь читать скрытые файлы Mac OS, - это удалить их в ОС Windows. Просто скопируйте MP3-музыку на USB-накопитель из iTunes. Переведите палку в ОС Windows и выберите просмотр скрытых файлов из опций папки. Это позволит вам удалить каждый скрытый файл, который ваш надежный Mac разместил на вашем USB-накопителе, включая эти досадные файлы .trashes. Наконец, использование для ОС Windows!

ответил MacMad 21 AMpSun, 21 Apr 2013 03:19:31 +040019Sunday 2013, 03:19:31
2

В итоге я использовал бесплатное приложение Hidden Cleaner ". MP3-плеер моего автомобиля пытался читать. (MP3filename) .mp3 (пустые, пустые mp3-файлы). Перейдите в раздел Macintosh HD в разделе «Устройства» в меню левой руки Finder и перетащите USB-накопитель и перейдите в приложение «Hidden Cleaner». Он очистит полые файлы и оставит настоящие MP3-файлы и выведет ваш USB-накопитель.

Примечание. Это не постоянное решение. Вы должны делать это выше, каждый раз, когда вы копируете файлы. Я не возражаю, хотя.

ответил Uygar Y 28 FebruaryEurope/MoscowbFri, 28 Feb 2014 17:57:59 +0400000000pmFri, 28 Feb 2014 17:57:59 +040014 2014, 17:57:59
2

Старый вопрос, но я, наконец, обнаружил Asepsis . Это утилита с открытым исходным кодом , которая разрешает эту вековую проблему, ограничивая все .DS_STORE в одном месте, по умолчанию /usr/local/.dscage
После установки и перезагрузки не больше .DS_STORE на USB-накопителях, с тем преимуществом (для некоторых из нас), что вам не нужно отключать индексирование на внешних дисках. Начиная с версии 1.4, он также поддерживает OS X Mavericks.

Обновление с веб-сайта Aepsis: "Предупреждение: Asepsis больше не находится в активной разработке и поддерживается под OS X 10.11 (El Capitan) и позже.

ответил Carlo 10 Maypm14 2014, 12:31:44
2

Большинство решений здесь - «очистка дофайлов до извлечения», а не «предотвращение создания точного файла».

В моем поиске бесплатного решения для первого я пробовал несколько вариантов и остановился на applescript здесь: SuperUser : У кого-нибудь есть сценарий Mac Terminal для удаления скрытых файлов? , потому что он позволяет мне точно видеть, что происходит на этом пути.

Обратите внимание на мой комментарий к этому ответу, что я сделал небольшое редактирование, чтобы заставить его работать с OSX 10.12.1. (Я не переставляю источник в этом случае, так как это кажется довольно «дружеским» вопросом).

ответил ptim 10 SatEurope/Moscow2016-12-10T09:24:24+03:00Europe/Moscow12bEurope/MoscowSat, 10 Dec 2016 09:24:24 +0300 2016, 09:24:24
2

Теперь MacOS предоставляет этот прямой флаг, который вы можете переключить с терминала:

defaults write com.apple.desktopservices DSDontWriteUSBStores -bool true
ответил tj0719 4 PMpWed, 04 Apr 2018 18:26:28 +030026Wednesday 2018, 18:26:28
1

Самое тупое, что я не могу просто внести в это Ответ Метаксиса. Но легко создать сценарий bash, который автоматически обрабатывает это для всех папок в /Объемы (или конкретные, если вы укажете). Должен иметь возможность ссылаться на Automator или Applescript, когда папка отображается под /Тома, тогда у вас есть автоматическое отключение индексации.

#!/bin/bash

if [ -n "$1" ]; then
    if [ ! -e "${1}/.metadata_never_index" ]; then
        echo "mdutil -i off $1"
        mdutil -i off "$1"
        cd "$1"
        rm -rf .{,_.}{fseventsd,Spotlight-V*,Trashes}
        mkdir .fseventsd
        touch .fseventsd/no_log .metadata_never_index .Trashes
    fi
else
#    echo "finding Volumes"
    find /Volumes -type d -maxdepth 1 -mindepth 1 -print0 | xargs -0 -n 1 "$0"
fi
ответил freefly42 15 Jpm1000000pmSun, 15 Jan 2017 19:14:40 +030017 2017, 19:14:40
0

Я нашел это приложение в Apple App Store бесплатно и использовал его, и он отлично поработал для меня. Вы должны искать «cleanusbdrive» все одно слово без кавычек в App Store.

Это Жозе А. Джимес Кампос.

ответил specialpromise 26 Jam1000000amThu, 26 Jan 2017 03:36:53 +030017 2017, 03:36:53
0

Еще одна утилита OSX для удаления этих дополнительных файлов - DOTCLEANER, который можно найти в магазине приложений OSX.

https://itunes.apple .com /нас /приложение /dotcleaner-DS-магазин-съемник /id1113480556? т = 12

ответил RickHap 27 Jam1000000amSat, 27 Jan 2018 02:26:16 +030018 2018, 02:26:16
0

В настоящее время Cleanmydrive2 доступен на App Store бесплатно и справляется с этой проблемой для пользователя до высокой sierra.

ответил Blurber 10 J0000006Europe/Moscow 2018, 10:20:17
-1

Я получил это для работы в Sierra 10.12.3 в Automator.

Сначала я сделал эту версию скрипта: Он работает так же, как и freefly42, а другой способ писать одно и то же.

Чтобы перевести для не-родных динамиков bash, что он делает:

Если запустить с аргументом командной строки, он пытается увидеть, является ли аргумент каталогом, и если этот каталог содержит файл с именем «.disable_osx_metadata».

Если специального файла нет, ничего не происходит. Этот диск игнорируется.

Если имеется специальный файл, скрипт удаляет все метаданные osx и создает несколько небольших новых элементов, которые предотвращают что-либо еще. Например, создание файла с именем .Trashes запрещает ОС создавать каталог с именем .Trashes и затем записывать туда файлы.

Если запустить без аргументов, он запускается один раз для каждого каталога в /Объемы.

Итак, если вы запустите его вручную или щелкните по нему, он проверяет все подключенные диски. Если вы создаете рабочий процесс в Automator, тогда Automator запускает его всякий раз, когда привод подключается именно к этому диску.

#!/bin/bash
x=.disable_osx_metadata
[[ "$1" ]] || exec find /Volumes -type d -maxdepth 1 -mindepth 1 -exec $0 {} \;
[[ -e "$1/$x" ]] || exit 0
mdutil -i off "$1"
rm -rf "$1"/.{,_.}{fseventsd,Spotlight-V*,Trashes}
mkdir "$1/.fseventsd"
touch "$1/.fseventsd/no_log" "$1/.Trashes" "$1/$x"

Сохранить как «disable_osx_metadata», chmod 755, скопировать в /usr /local /bin.

$ cd Documents/disable_osx_metadata/
$ chmod 755 disable_osx_metadata
$ sudo cp disable_osx_metadata /usr/local/bin

Затем откройте Automator, New, Folder Action

Затем я обнаружил, что даже в Sierra 10.12.3 вы еще можете добавить каталог /Volumes в Automator неочевидным способом.

Перейдите в Finder, File, «Go To Folder ...», вручную напишите в «/Volumes» и нажмите Enter.

Теперь это показывает вам окно с вашими HD и USB-накопителями, но нет очевидной папки «/Volumes», на которую нужно щелкнуть. Но в заголовке указано «/Volumes», и оно также отображается внизу.

Вы можете перетащить значок папки рядом с «/Объемы», либо из строки заголовка, либо снизу, до «Автомата» и отбросить его «Действие папки получает файлы и папки, добавленные в: [______]»

 Перетаскивание /Тома из строки заголовка Finder

Закрыть Finder.

Назад в Automator: слева, прокрутите вниз и перетащите «Получить содержимое папки» вправо и отпустите его.

Затем влево снова прокрутите вниз и перетащите «Запустить сценарий оболочки» вправо и опустите его ниже «Получить содержимое папки».

Измените «Pass input:» на «as arguments». Shell: [/bin /bash] Вход для передачи: [в качестве аргументов]

Затем перетащите скрипт из /usr /local /bin в поле «Запустить сценарий оболочки», чтобы он сказал "/USR /местные /бен /disable_osx_metadata"

Файл, save, disable_osx_metadata.workflow

 Рабочий процесс действий с файлом автозапуска

Для справки это сохраняется в: /Пользователи /YOUR_NAME /Библиотека /Рабочие процессы /Приложения /Действия с папками Если вы что-то не так решили, я думаю, вам нужно вручную найти там Finder, чтобы удалить его.

Наконец, для каждого нового USB-накопителя, который вы хотите защитить, вы должны создать файл с именем «.disable_osx_metadata» в корневой папке.

Вы можете сделать это в терминале:     $ touch /Тома /NO \ NAME /.disable_osx_metadata ​​p>

Или просто сохраните небольшой текстовый файл с видимым именем (без ведущей точки) и скопируйте его в корень любого нового USB-накопителя и переименуйте его .disable_osx_metadata после копирования.

Теперь этот диск очищается каждый раз, когда вы прикрепляете его с этого момента.

Не так чисто, как хотелось бы. Вы должны немного загрязнить диск, чтобы сообщить ОС, чтобы он больше не загрязнял его. Кажется, что нет способа заставить ОС просто оставить ее в покое и не добавлять файлы, которые вы не запрашивали.

TODO: добавьте функции включения /выключения для создания /удаления точечного файла.

TODO: Это не предотвращает файлы .DS_Store в каждом каталоге.

TODO: Можно ли упаковать скрипт и файл foo.workflow, чтобы пользователь мог пропустить большинство этих инструкций вручную? Я вижу, что в Automator есть опция «export», которая создает какой-то файл пакета.

TODO: Возможно, устаревший весь этот пост. Этот рабочий процесс applescript + automator может быть лучше: https: //суперпользователь. ком /вопросы /319553 /ли-кто-есть-а-макинтош-терминал-скрипт удаляемых-скрытые файлы /814104 # 814104

ответил Brian White 14 FebruaryEurope/MoscowbTue, 14 Feb 2017 05:05:12 +0300000000amTue, 14 Feb 2017 05:05:12 +030017 2017, 05:05:12

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132