Question

Je suis en train de sauvegarder un système de fichiers et je dois vous assurer que les métadonnées sont conservées (le propriétaire du fichier et le temps de création).

Le module tarfile en Python est vraiment utile, et je l'utilise largement dans ma solution. Cependant, je ne peux pas créer le fichier tar avec les fichiers conservant leurs métadonnées (probablement parce que copy et copy2 ne peuvent pas le faire).

Comment aborderez-vous ce problème au sein de Python?

EDIT:

Juste pour faire comprendre à la communauté: le module tarfile en Python fait fournir des moyens pour stocker les métadonnées via l'objet Tarinfo. Essentiellement, un objet Tarinfo est le membre d'un objet Tar, et il a toutes les informations dont vous pourriez avoir besoin. S'il vous plaît se référer au poste accepté.

Merci!

Était-ce utile?

La solution

"On peut supposer que"? Vous voulez dire que vous ne connaissez pas? Avez-vous essayé ? Cela dit, pour autant que je sache, tarfiles ne conserve pas ctime, et il y aurait peu de point, comme ctime doit être remis à zéro lorsque vous déballez. mtime est conservée, bien que, et les poignées de module tarfile mtime.

Le module tarfile python utilise des objets TarInfo lorsque vous ajoutez des fichiers. Comme ceci:

TarFile.addfile(tarinfo, fileobj=None)

L'objet TarInfo contient les informations du fichier:

TarInfo.mtime
Time of last modification.

TarInfo.uid
User ID of the user who originally stored this member.

TarInfo.gid
Group ID of the user who originally stored this member.

et les charges d'autres métadonnées. Voir http://docs.python.org/library/tarfile.html

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