MacCentre
Форум: Mac и Mac OS X
Тема: Не удаляются каталоги (папки) после использования afp/netatalk клиента

[Ответить]
EsTaF [06.06.2016 08:53] Не удаляются каталоги (папки) после использования afp/netatalk клиента:
Очень сумбурно пишу. Если раскладывать все, то получится много текста. А кто в теме, того не нужно вводить в курс дела, ибо тема не для ознакомления, а для поиска решения, если есть разбирающиеся люди.
Речь о сетевых каталогах, которые создаются при закачке торрентов, когда качается не один файл, а каталог с файлами.
Закачка происходит под Gentoo Linux. torrent клиент - rtorrent. Эта же ОС служит и файлопомойкой, куда смотрит OS X через afp протокол.
Нюанс: Если на файлохранилище смотреть не по afp, а самба клиентом, то проблем нет - все каталоги исправно удаляются. Правда, на стороне самба сервера есть опции:
..
veto files = /._*/.DS_Store/.TemporaryItems/.apdisk/Thumbs.db/desktop.ini/
..

У netatalk сервиса таких опций не предусмотрено.
Полагаю, что при закачке каталога торрент клиентом, если в такой каталог заходить через afp, OS X начинает создавать всякие .DS_Store, .AppleDouble объекты - при удалении торрент клиентом каталога, он удаляет только файлы, так как отвечает лишь за скаченные объекты, а не за созданные уже потом файлы операционной системой от Apple, и таким образом каталог не удаляется и остается пустым - потом все это свинство нужно вычислять и удалять руками.
Проблема в том, что я могу забыть удалить некоторые каталоги, а это хаос и бардак, а я не люблю бардак и мусор.

Можно вернуться к самба протоколу, но у apple клиента все угрюмо с этим протоколом - на стороне сервера удаляешь каталог, или файл - apple операционка не всегда синхронизирует сие действо и начинает тупить (с версии 10.7.x), показывая объекты, которые уже удалены. Либо, наоборот - не отображает некоторые из них, пока не отмонтируешь smb шару и снова не подмонтируешь. А ведь иногда открыты разные документы в OS X, находящиеся на сервере, либо нужные окна с файлами, находящимися на сетевой шаре - их не хочется закрывать только лишь из-за того, что бы делать перемонтирование всей шары.

Два вопроса - понимаю, что все эти .DS_Store, .AppleDouble нужны бла бла бла, если работаем по afp, но так ли сильно они прям нужны, что бы был такой хаос - возможно ли отключить этот идиотизм создания таких объектов.
Сразу оговорюсь - метод "defaults write com.apple.desktopservices DSDontWriteNetworkStores true && shutdown -r now" не катит никак. Не помогает. И все GUI производные этого подхода, то же.

Второй вопрос по самба клиенту - тут наверное вряд ли что-то можно накостылить, как в случае с afp - с постоянным удалением .DS_Store, .AppleDouble объектов. Но все же - может существует какая-то альтернатива дефолтному smb клиенту под OS X и она работает более грамотно?
~RA~ [06.06.2016 09:51] :
И при чём тут afp?
EsTaF [06.06.2016 09:55] :
При том, что если ходить на шару по afp, идет нормальная синхронизация, а не как в случае с самбой, когда на стороне сервера если что добавишь/удалишь, самба клиент от apple начинает тупить:

Zlyden [06.06.2016 10:04] :
ОФФ: Всегда удивляло то, что у какого-нибудь древного Жо4 с Мак ОС Х 10.4.11 -- все более менее нормально как с самбой, так и с афп без всяких бубунов и плясок (по крайней мере до Вин 7 и ОС Х 10.9 включительно -- дальше не знаю), а криворукие линуксо-писатели до сих пор (уже лет 20?) не могут свои поделки доковырять до рабочего состояния... :)
EsTaF [06.06.2016 10:41] :
Zlyden
Соглашусь. Но не так прямо все это актуально, что бы покупать apple server, или ставить тайм капсулу.
Zlyden [06.06.2016 10:43] :
EsTaF

Может как-то можно "допилить" линуксовый торрент, чтобы он мочил всю папку целиком? (Наверняка же у него есть исходники...)
EsTaF [06.06.2016 11:14] :
Да. Хорошая мысль.
не думал, что найду решение. Даже не стал искать в свое время. А оно есть.
echo "method.set_key = event.download.erased,delete_erased,"execute=rm,-rf,--,$d.base_path="" >> .rtorrent.rc
https://github.com/rakshasa/rtorrent/issues/201

С виду, заработало. Осталось проверить временем.
Даже нарочно каталог создал в одной из директорий закачек. Удаляет, что бы внутри лишнее не находилось.
[Ответить]