Question

J'ai la question Comment suivez-vous les fichiers dans SMB avec une application? ouverte et je woundering si peut-être il y a des ID uniques pour les fichiers afin que je puisse suivre lorsqu'un fichier / dossier est déplacé. Y at-il quelque chose comme ça? Il peut être très spécifique debian

Était-ce utile?

La solution

La réponse est comme toujours « ça dépend ». Que voulez-vous dire par « identifiant unique »? Est-ce que ce changement d'identité si le contenu du fichier est modifié, ou jugeriez-vous que le même fichier? Dans Unix, le inode avec le dispositif définit le « identifiant unique », mais cela est conservée même si le contenu change.

Si vous voulez maintenant ce qui touche un fichier, vous pouvez utiliser inotify sur la même machine pour savoir ce qui se passe aux fichiers (ou son précurseur: dnotify).

Si vous avez besoin d'avoir des machines Pose, je suppose que la samba utiliseraient inotify pour être averti et le convertir à des événements SMB / CIFS, mais je ne suis pas au courant.

Si vous voulez un identifiant basé sur le contenu et donc utiliser hash, vous devez aller dans l'espace utilisateur. Par exemple, cela est exactement ce que Git (le système de contrôle de version) fait: il suit les hash du contenu d'avoir un « identifiant unique »

.

Autres conseils

Si les fichiers ne vont pas être déplacé, vous pouvez utiliser un hachage.

Si vous pouvez avoir un démon en cours d'exécution en arrière-plan, vous écrivez un programme en utilisant inotify à moniter événements de déplacement.

Si vous ne pouvez pas faire cela, vous pouvez utiliser le numéro d'inode (mais peut changement sur un mouvement de fichier).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top