Вопрос: Исключить папки с помощью регулярных выражений (?) Из резервной копии машины времени


Я использую сервер Time Machine для своих резервных копий. Тем временем я разрабатываю множество веб-приложений, в которых проект обычно состоит из папки с файлами приложений, которые я хочу создать, и node_modules папка (внешние библиотеки) Я не хочу делать резервную копию. Другими словами, структура папок, например. является:

projects
-- app1
---- src
---- node_modules -- I want to ignore only this folder
---- package.json
-- app2
---- whatever-else
---- node_modules -- I want to ignore only this folder
---- package.json
---- elephant.jpg

и т.п.

Количество приложений велико и растет (в настоящее время более 20), размер node_modules папка обычно в тысячи раз больше, чем остальная часть проекта: размер огромен и количество файлов тоже.

Как исключить все node_modules папки в пределах всей системы (например, .gitignore но для машины времени)? Есть ли способ сделать это маской? Я просто не хочу постоянно добавлять папку в исключенные папки вручную.

Я также отлично справляюсь с cron-скриптом, который ищет новые папки каждые N минут и заставляет их игнорировать.

Есть ли решения для этого?


4
2017-12-28 13:39


Источник


Если мой ответ решит вашу проблему, нажмите на галочку под моим ответом, чтобы пометить свой вопрос как решенный. - Hydraxan14


Ответы:


Вы можете найти и исключить все node_modules папок с текущего пути, например. в вашем домашнем каталоге (~), как это:

$ find `pwd` -maxdepth 3 -type d -name 'node_modules' | xargs -n 1 tmutil addexclusion

Престижность @peterdemartini: https://gist.github.com/peterdemartini/4c918635208943e7a042ff5ffa789fc1

Обратите внимание, что исключенные папки не будут отображаться в настройках системы Machine Machine или при выполнении этой команды:

$ defaults read /Library/Preferences/com.apple.TimeMachine.plist SkipPaths

Когда вы используете эту команду (tmutil addexclusion), элемент, который вы исключаете, остается в списке исключений Time Machine, даже если вы его перемещаете, что не так, когда вы исключаете элементы из панели предпочтений Time Machine. Если вы используете указанную выше команду с флагом -p, то она не будет липкой и будет такой же, как исключение, которое вы добавляете из панели предпочтений Time Machine.

https://www.macworld.com/article/2033804/control-time-machine-from-the-command-line.html


6
2017-11-13 09:12



круто, я попробую. Благодаря! - smnbbrv


Reddit сообщение

Я нашел Reddit сообщение, Это то, что вы ищете?

В нормальных условиях Time Machine запускается при резервном копировании   диск подключен или через час после последней резервной копии,   в зависимости от того, что наступит последним. Вы можете добиться того же самого с запуском   собственный демон. Вы должны создать файл на    /Library/LaunchDaemons/local.tmupdate.plist и установите его содержимое для   что-то вроде этого.

Затем вы создали скрипт /usr/local/bin/tmupdate.sh очистить   список старых исключений, воссоздайте его с новыми, затем инициируйте   сама резервная копия:

#!/bin/sh
defaults delete /Library/Preferences/com.apple.TimeMachine.plist SkipPaths
mdfind 'kMDItemUserTags == "No Backup"' -0 | xargs -0 tmutil addexclusion
tmutil startbackup --auto

4
2017-12-28 23:24



для этого требуется вручную пометить файлы или папку с помощью тега с именем No Backup, Я думаю, что это очень ручной - Gianfranco P.


Возрождение старого поста, но, ища то же самое, я в конечном итоге пытался это инструмент Азимов, и это отлично поработало для меня.

Азимов сканирует каталоги, которые ищут node_modules (nodeJs) или vendor (php composer) и автоматически исключить из следующей резервной копии TimeCapsule. Он также добавит задание cron для обновления этих исключений.

Надеюсь, это поможет кому-то.


1
2018-03-06 10:46



Добро пожаловать в Суперпользователя! Можете ли вы расширить свой ответ? Просто указание на продукт на самом деле не объясняет, как выполнить решение. Лучше включить некоторые инструкции о том, как использовать продукт для решения проблемы, или, по крайней мере, описать, что делает продукт хорошим решением, предоставляя ценность за пределами случайного попадания Google. Хорошее руководство по рекомендации программного обеспечения здесь: meta.superuser.com/questions/5329/..., Благодарю. - fixer1234