33

На работе мы позволяем одному из наших очень технически подкованных клиентов немного помочь с несколькими специфическими для него проектами развития. Тем не менее, он использует свой собственный Macbook, и когда он редактирует файлы в наших сетях (Windows), его Macbook всегда создает кучу ненужных метафайлов, которые мы в конечном итоге удаляем позже.

Например, он создает файл с именем.DS_Store в любом каталоге, который он открывает, а также файлы "подчеркивания точек" для каждого редактируемого файла. Так, например, если он редактирует файл с именем «Main.php», его Macbook создаст еще один файл с именем «._Main.php».

Я знаю, что есть способы предотвратить создание.Файлы DS_Store, но не о том, как предотвратить создание этих скрытых файлов с префиксом точка-подчеркивание.

Есть ли способ отключить это на Mac? Есть ли способ предотвратить создание этих файлов?

9 ответов9

18

Попросите пользователя Mac установить BlueHarvest.

Blue Harvest

9

На файловых серверах Linux или устройствах NAS вы можете использовать следующее:

Вариант A. Модификация конфигурации Samba, предотвращающая использование как общих ресурсов, так и.DS_Store файлы:

файлы вето = /._ * /.DS_Store /

удалить файлы вето = да

(Файл конфигурации находится по адресу /etc/samba/smb.conf или /etc/smb.conf в зависимости от вашего дистрибутива). Недостатки: не все общие ресурсы предоставляются системами NAS под управлением Linux или в большинстве случаев у вас нет доступа к оболочке.

Вариант Б. Создайте простой сценарий оболочки и запустите его на одном из подключенных компьютеров, используя cron.

find /YourNetworkShareLocation -name '._ *' -exec rm {} \;

Замените /YourNetworkShareLocation на место, где смонтирован сетевой ресурс, например /Volumes /ShareName или /media /ShareName и т.д.

Недостатки: это грубый путь - ненужная нагрузка как на хранилище, так и на сеть. Тем не менее, то же самое можно легко сделать в Windows, используя немного волшебства PowerShell.

Отказ от ответственности: это не то, что я называю "решением", это взломать. Но это может помочь кому-то снизить уровень раздражения, создаваемый файлами ветвления ресурса.

4

Пусть он заглянет в бесплатное и удачно названное приложение Cleanup SMB Mess . Разработчик говорит:

Эта капля яблочного скрипта очистит общие папки Windows, смонтированные через клиент samba для Mac OS X, удалив все файлы "._ *",.DS_Store файлы и.Папки на всех томах и папки, перетаскиваемые на него. "

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

3

Используйте программу, отличную от Finder например MuCommander для просмотра ваших файлов. (работает на локальных дисках тоже).

В OS X lion этот метод должен разрешать доступ по умолчанию к ~/Library без изменения настроек или нажатия ALT.

Я использую MuCommander на Snow Leopard и Lion и заметил, что ни тома HFS+ ни ExtFat кончаются файлами с этими файлами.

Люди: есть еще одна проблема, Размер файла ... многие из вилок ресурсов имеют размер не менее 4096 байт, даже если исходный файл имеет размер менее 4096 байт, поэтому устранение этой проблемы помогает при раздутии файловой системы.

(Например: загрузите текстовый файл: http://www.gamers.org/pub/games/idgames/levels/heretic/gi/horror.txt на Mac и убедитесь сами)

2

Вы также можете использовать приложение Mac в магазине приложений под названием « Annoying File Be-Gone », которое работает на панели инструментов и хорошо работает.

0

На моем QNAP NAS конфиг samba в /etc/smb.conf уже содержал это:

veto files = /.AppleDB/.AppleDouble/.AppleDesktop/:2eDS_Store/Network Trash Folder/Temporary Items/TheVolumeSettingsFolder/.@__thumb/.@__desc/:2e*/.@__qini/.Qsync/.@upload_cache/.qsync/.qsync_sn/.@qsys/.digest/
    delete veto files = yes

поэтому я отредактировал строку вето файлов:

veto files = /._*/.AppleDB/.AppleDouble/.AppleDesktop/:2eDS_Store/Network Trash Folder/Temporary Items/TheVolumeSettingsFolder/.@__thumb/.@__desc/:2e*/.@__qini/.Qsync/.@upload_cache/.qsync/.qsync_sn/.@qsys/.digest/

и затем перезапустил samba (это примитивная система Linux, поэтому я сделал это через init.d):

/etc/init.d/smb.sh restart
-1

есть утилита под названием "асептика"

это также имеет функцию для очистки вашего Mac от.Файлы DS_Store и прочее читайте в FAQ

http://asepsis.binaryage.com/

-1

http://support.apple.com/kb/ht1629

Вы также можете попробовать использовать TinkerTool (http://www.bresink.com/osx/TinkerTool.html) - он использовался для выставления этого параметра.

-3

Это действительно легко и вам не нужно ничего устанавливать.

  1. Открытый прожектор (cmd+ пробел)
  2. Введите «Терминал».Приложение'
  3. И нажмите Enter (это должно открыть приложение терминала)
  4. Скопируйте это в свой clipbpoard (cmd+ c):

    по умолчанию напишите com.apple.desktopservices DSDontWriteNetworkStores true

  5. и вставьте его в терминал (cmd+ p)

  6. нажмите Ввод
  7. закрыть терминал (cmd+ Q)
  8. В следующий раз, когда вы перезапустите Finder, ваш Mac перестанет записывать файлы DS в сетевое хранилище.

Ссылка: http://support.apple.com/kb/HT1629

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .