Il existe un répertoire A
dont le contenu est fréquemment modifié par d'autres personnes.
J'ai créé un répertoire personnel B
où je conserve tous les fichiers qui se sont déjà trouvés A
.
À l' heure actuelle, je viens de temps en temps courir rsync
pour obtenir les fichiers à sauvegarder à partir A
de B
. Cependant, je crains la possibilité que certains fichiers soient ajoutés A
, puis supprimés A
avant d'avoir la possibilité de les copier B
.
Quelle est la meilleure façon d'empêcher que cela se produise? Idéalement, j'aimerais que mon script de sauvegarde actuel soit exécuté à chaque fois que le contenu de A
est modifié.
la source
incrond
peut également présenter un intérêt./etc/profile
pour l'ensemble du système ou.bash_profile
uniquement pour votre utilisateur. Pour l'exécuter après le démarrage, cela dépend de votre version d'Unix / Linux;/etc/rc.local
,/etc/rc.d/
ou/etc/init.d/
--monitor
commutateur (et de diriger la sortie vers votre boucle à la place), sinon il y a beaucoup de surcharge quand ilinotifywait
est redémarré maintes et maintes foisÀ strictement parler, si quelqu'un dépose un fichier et le supprime très rapidement, vous risquez de le manquer. L'utilisation d' inotify (sous Linux, ou une fonctionnalité similaire sous d'autres unités) réduit la fenêtre de risque.
Si vous pouvez monter le système de fichiers de votre choix sur ce répertoire (je réalise que ce n'est peut-être pas une option), vous pouvez en mettre un qui enregistre toutes les versions de fichiers, par exemple copyfs .
la source
Essayez l'
entr
outil de ligne de commande qui peut exécuter des commandes arbitraires lorsque les fichiers changent. Depuis la version 2.9, une option de surveillance de répertoire (-d
) a été ajoutée pour réagir aux événements lorsqu'un nouveau fichier est ajouté à un répertoire.Exemple pour exécuter l'utilitaire si un nouveau fichier est ajouté au projet:
La seule implication de ceci est que si un nouveau fichier apparaît, il doit quitter pour permettre à une boucle de shell externe de réanalyser le système de fichiers.
Voici la version sans option de surveillance de répertoire:
Voici un exemple plus simple selon vos besoins:
Consultez le site Web entrproject.org pour plus de détails.
la source
Le programme que vous recherchez est
inotify
.la source