[gull] [resolu] exfat - inconsistence du catalogue sous Linux et macOS - utf8 nfc nfd
Samuel Chenal
samuel.chenal at ll-dd.ch
Tue Apr 23 17:16:23 CEST 2024
Hello,
Pour répondre à Félix, dans le cas de mon client (723Go de données de
bureautique) :
45475 Dossiers
377666 Fichiers
423141 Entrées total
Merci bien pour la commande ! ;-)
Personnellement, je trouve que le convmv fait assez rapidement le travail.
a+
Samuel
Le 22.04.24 à 08:59, felix via gull a écrit :
> Salut Samuel,
>
> Le Sun, Apr 21, 2024 at 11:18:55PM +0200, Samuel Chenal via gull a écrit :
>> Là, mon cron passe convmv tous les soirs sur les partages samba (il
>> s'exécute assez rapidement) et il "corrige" les noms de fichiers. Depuis, je
>> n'ai plus de soucis avec Nextcloud. Ex. de la sortie envoyée par courriel :
>>
>> Ready! I converted 13 files in 69 seconds.
>>
>> Sur ~720Go de données.
> Ok 720G, mais s'agit-il de 1000 fichier de 720Mo ou de 720 millions de
> fichiers d'un kilo?
>
> Petit recensement (~4186.27Gb):
> $ find . -type d -printf 'Dossiers\nEntrées total\n' -o \
> -type f -printf 'Fichiers\nEntrées total\n' | sort | uniq -c | sort -n
> 370188 Dossiers
> 5755773 Fichiers
> 6125961 Entrées total
>
>
> Si tu cherches à réduire le gap:
> .1 attendre que cron lance le job
> .2 attendre potentiellement plus d'une minute que convmv trouve le fichier
> à renommer...
>
> 2 pistes:
>
> - inotifywait est clairement la première idée mais sur un gros répertoire,
> cela risque d'être lourd!
> - Suivre les logs de samba et réagir à la modification d'un nom (Je traque
> le mot "rename_internals_fsp" )
>
> - Soit en tâche de fond, basé sur `tail -f |` or `journalctl -axfu smbd |`
> - Soit dans un cron (En fait, j'utilise ça pour répercuter des ``mv'' dans
> les backups AVANT de lancer rsync toute les 60'. La variable $since
> correspond à la dernière execution du script. sed repère les nom modifiés
> et les présente séparés par un octet '0x01' afin de les passer a mon
> script bash avec while IFS=$'\1' read -r oldname newname; do ),
>
> journalctl -S "$since" -axu smbd |
> sed -ne '/\/\._.* -> .*\._/d;
> /: \(.*\)\/Nouveau dossier -> \1/d;
> /\(\.tmp\|\.TMP\|\.swap|\.bak\)\( ->.*\|\)$/d;
> s/^.*rename_internals_fsp: succe.*rename on \(.*\) -> \(.*\)$/\1\o1\2/p'
>
> Si vous êtes intéressé, je peux poster ici, les quelque lignes de bash qui
> me servent à créer un script à envoyer se faire executer sur les backups.
>
--
_______________________________
Samuel Chenal
samuel.chenal at ll-dd.ch
https://www.ll-dd.ch
_______________________________
Empreinte GPG :
BD25 7B5F 442B DF2D 4E28
8203 B2A2 7269 4E00 5136
Merci d'utiliser des formats de
fichiers ouverts (comme ODF) !
More information about the gull
mailing list