J'essaie de copier tous les fichiers d'un NTFS vers un lecteur externe et je souhaite conserver toutes les autorisations et tous les attributs. Le lecteur externe a déjà un NTFS et contient d'autres fichiers.
J'ai envisagé d'utiliser les outils suivants:
ntfsclone
ne fonctionne pas car il opère au niveau du secteur et clonerait l'ensemble du FS, détruisant ainsi les anciennes données. Si utilisé pour créer un fichier image, je ne peux pas accéder au contenu à partir d'une machine Windows.rsync
ne conserve pas toutes les métadonnées.
Une alternative serait d'utiliser à l' robocopy
intérieur d'un Windows en cours d'exécution, mais je préférerais copier les fichiers sans. (La partition source est utilisée comme système C:\
.)
Comment puis-je copier les fichiers?
-AXogt
par exemple, devrait conserver les métadonnées FS pour la plupart. Veuillez expliquer ce que vous avez essayé qui ne fonctionne pas et quelles «métadonnées» que vous voyez qui ne sont pas conservées entre les partitions NTFS.Réponses:
Il n'y a aucun moyen de copier exactement les fichiers NTFS en passant par Linux. Même Wine , la couche de compatibilité Windows sous Linux, fonctionne en convertissant les autorisations dans les deux sens entre Linux et Windows, et se limite donc à leur (plutôt petit) dénominateur le moins commun.
La seule solution que je peux voir est d'exécuter Windows sur Linux dans une machine virtuelle (ou physique).
Je pense que vous avez mentionné cette possibilité dans votre message et que vous préféreriez l’éviter, mais je ne vois aucune autre possibilité. Seul Windows peut copier exactement les fichiers NTFS; Linux est uniquement capable de copier des partitions NTFS.
Cet article peut vous aider: Comment installer et exécuter Microsoft Windows gratuitement sur Linux , à l'aide de machines virtuelles gratuites mises à disposition au téléchargement par Microsoft .
la source
streams_interface=xattr
est définie par défaut. Si je comprends bien, cela signifie que les attributs de fichier NTFS (y compris les autorisations Windows) sont mappés sur desxattr
attributs sous Linux. Depuiscp -a
etrsync -X
copie ces attributs, ne devrait-il pas s'agir d'une copie exacte?system.ntfs_acl
. La même chose semble être vraie pour d'autres matadonnées dans NTFS. Étant donné que les attributs xattr sont copiés lors de l'utilisation dersync -X
oucp -a
, il peut également copier les métadonnées. Cela dépend des limites concrètesxattr
et de la mise en œuvre dentfs-3g
, mais cela me semble possible.La première chose est que vous devez vous décider si vous souhaitez copier des fichiers, ...
ou vous voulez faire une copie complète, secteur par secteur, de votre partition NTFS, y compris les "anciennes données", les "autres fichiers", ainsi que "toutes les métadonnées" que vous avez mentionnées ci-dessus très largement.
Pour ce dernier, utilisez dd:
S'amuser.
la source
dd
serait un mauvais choix car elle ne prend pas en compte les informations FS. Si vous avez un NTFS, vous devez toujours l'utiliserntfsclone
pour la création d'images.robocopy
dans ma question. J'apprécie donc vos moyens, mais ce n'est pas vraiment une réponse à ma question.Linux peut très bien copier le contenu des fichiers NTFS , mais pas toutes les dates et les attributs modifiés / créés / accessibles (je suppose que c'est ce que vous voulez conserver).
Alors, pourquoi ne prenez-vous pas simplement note des dates et des attributs actuels (vous
dir
devriez pouvoir les afficher), puis copiez les fichiers sous linux, et une fois que vous exécutez Windows, changez à nouveau les dates et les attributs sur les originaux.Utilisez un outil sous Windows qui peut modifier les fichiers, comme l'un de ceux-ci :
Apparemment , l'explorateur de fichiers de Windows ne conserve même pas toutes les dates de fichiers correctement . Mais les commandes tar de zip et cygwin devraient enregistrer les dates des fichiers, donc utiliser l'une de celles de Windows pour créer une archive en premier devrait également fonctionner, puis copiez simplement l'archive à l'ancienne.
Si les attributs sont super importants et difficiles à copier même sous Windows, ils devraient probablement être sauvegardés dans un fichier texte ou une base de données, ou intégrés au nom de fichier ...
la source