Réponses:
Oui, vous pouvez utiliser le shake . Vous devez d'abord ajouter un référentiel personnalisé à votre système:
sudo add-apt-repository ppa:un-brice/ppa
sudo apt-get update
sudo apt-get install shake-fs
Ensuite, vous pouvez faire
sudo shake /some/dir
Il n'y a pas un tel outil autour, pour ce que je sais.
Certains sites signalent la commande suivante
# WARNING - does not work
fsck -t ntfs --kerneldefrag /dev/hdX
mais cela ne fonctionne pas, et on ne sait pas où ils l'obtiennent.
Mise à jour: UltraDefrag pour Linux:
UltraDefrag est un puissant outil de défragmentation Open Source pour la plate-forme Windows. Il peut défragmenter tous les fichiers système, y compris les ruches de registre et les fichiers d'échange. L'un des principaux objectifs d'UltraDefrag est également de faire le travail le plus rapidement et le plus fiable possible. Il est porté sur Linux et NTFS-3G pour défragmenter les partitions NTFS. Actuellement, seule une version de test en mode console est disponible. Veuillez lire le fichier inclus README.linux pour la compilation et les tests
http://jp-andre.pagesperso-orange.fr/advanced-ntfs-3g.html
[Je ne l'ai pas encore utilisé moi-même. Trouvé via un fil sur un forum Arch . Continuer à suivre le fil jusqu'à la page suivante mène à plus sur le sujet. Essayez à vos risques et périls. — kevjonesin—]
Ceci est un GRAND avertissement pour tous ceux d'entre vous qui pensent que NFTS peut être défragmenté sur Linux simplement en copiant des fichiers (clonage uniquement des fichiers), etc.:
d'après ce que je sais, à chaque fois que Linux (cp, fsarchiver, etc.) écrit un fichier / dossier sur un NTFS, il l'écrit toujours sans compression NTFS, peu importe si le fichier / dossier a une compression activée ou désactivée.
Vous pouvez donc arriver à une situation (je la rencontre à la dure), où la restauration avec fsarchive (ou cp, etc.) ferait que la partition soit pleine et ne suffise pas.
Certains types de données peuvent atteindre un taux de compression NTFS supérieur à 3, vous pouvez donc avoir une partition X GiB avec beaucoup de fichiers et la somme des fichiers doit être proche de 3 * X.
Je donne cet avertissement car il n'est pas bien connu et crée parfois de très gros maux de tête. comme lors de la restauration d'un clone, il faut plus d'espace que la partition entière qui a été clonée, car la compression NTFS s'est perdue sous Linux.
De plus, avec des données très très spéciales (rapport NTFS supérieur à 5) j'atteins cette situation:
Oh oui, le clone a été compressé et il a fallu doubler la taille de la partition.
Cela est dû au fait que l'outil de clonage lit les fichiers en clair (en clair, non compressés) puis compresse les données (avec un rapport vraiment pire que NTFS).
Bien sûr, la restauration de ces données ne tiendra pas sur cette partition, car les données restaurées seront placées sans compression NTFS.
J'espère qu'il est clair qu'une autre raison pourquoi ne pas utiliser la compression NFTS? Eh bien, pas du tout, j'utilise beaucoup la compression NTFS (dans le passé). Les fichiers VDI (Virtual Box) ont un très bon rapport.
Maintenant, j'avais découvert Pismo File Mount (et cela fonctionne également sous Linux). il peut créer un fichier qui agit comme un conteneur (comme un dossier) et peut être compressé (également avec un meilleur rapport que NFTS) et en même temps crypté.
Pourquoi je le mentionne. car tout outil de clonage verra ce conteneur comme un fichier (lorsqu'il n'est pas monté en tant que dossier) et lira / videra / sauvegardera le flux de données compressé, pas les données non compressées simples (comme avec la compression NTFS). la restauration est donc comme avec tout autre fichier.
Au lieu de compresser un dossier NTFS avec l'attribut de compression NTFS, j'ai mis un dossier virtuel de montage de fichiers Pismo. obtenir une meilleure compression, etc.
Je dois également vous avertir tous intéressés par un tel outil gratuit. il n'a pas de rétrécissement (au moins encore), donc si le contenu du dossier change beaucoup, ce n'est pas une si bonne idée.
Mais pour les disques virtuels immuables, les ISO et les choses qui ne changeront pas, le rapport qu'il obtient est très proche de ceux de LZMA2 (7-Zip) et il peut être lu / écrit à la volée.
Et c'est multiplateforme.
Notez le méchant de la compression NTFS qui parle de fragmentation. lorsque vous écrivez un fichier sur un NTFS avec la compression NTFS, il le fait de cette façon (oui horriblement conçu, je pense que c'est fait comme ça pour assurer une plus grande fragmentation de manière intentionnelle, le pire ne peut pas être fait):
Cela crée donc beaucoup, beaucoup de GAP au milieu du fichier, et ce n'est qu'après une défragmentation de fichier que les GAP disparaissent, mais cette défragmentation ne se produit pas tant que l'utilisateur ne l'a pas commandé (contig.exe, defrag.exe, etc.).
Oui, il écrit le bloc N'th 64K sur un multiple de position de 64K, peu importe si les données précédentes pouvaient ou non être compressées, il laisse un espace entre chaque bloc 64K (si tout pouvait être compressé).
La compression du dossier virtuel de Pismo File Mount agit comme toute compression normale est censée être effectuée, en mode piped, donc pas de lacunes. au moins jusqu'à ce que vous supprimiez quelque chose.
Encore un autre avertissement, ne mettez pas de fichiers VHD / VHDX dedans, Windows ne pourra pas les attacher! Windows utilise une astuce du noyau pour monter de telles choses, il n'utilise pas le niveau du système de fichiers, fonctionne à bas niveau.
J'aimerais également mettre la main sur un défragmenteur Linux NTFS, ce serait certainement plus rapide que tout ce qui fonctionne sous Windows. c'est une folie totale de défragmenter l'espace libre. ou mieux parler. créer un tout assez grand pour un nouveau gros fichier.
De plus, ce serait bien que ma mémoire fonctionne mieux. dans le passé, j'utilisais un outil (ligne de commande, désolé) sous Windows qui pouvait copier / déplacer un fichier de manière non fragmentée. déplacer les fichiers nécessaires tout en obtenant ce dont vous avez besoin et ne pas les fragmenter. il ne donne un message que s'il ne trouve pas un moyen de mettre le fichier (impossible d'obtenir un trou) ou un avertissement différent s'il a besoin de fragmenter un autre fichier (en demandant s'il est autorisé par l'utilisateur), etc. était vraiment génial. Je ne me souvenais pas du nom (et peut-être que cela ne fonctionne pas avec les fenêtres modernes, c'était pour Win2000).
Ce sont des systèmes de fichiers Windows, vous devrez donc utiliser Windows pour les défragmenter.
Il existe une astuce très connue pour archiver une défragmentation NTFS (y compris l'espace libre) ... cela peut être fait avec un Live Linux comme SystemRescueCD ...
Mais, vous devez avoir un deuxième disque dur ou au moins un espace libre de 51% (que si vous n'utilisez pas la compression).
L'astuce (très délicate) consiste à utiliser des outils pour "cloner" la partition, mais pas ceux typiques ... il existe un outil qui peut "cloner" une partition NTFS mais ne pas faire un "clone" exact ... laissez-moi vous expliquer ...
L'outil est fsarchive (si je ne me souviens pas mal).
Il fait un très gros fichier (comme le font les outils de clonage), avec tous les fichiers (méfiez-vous des métadonnées spéciales de fichiers NTFS, les flux je pense qu'ils sont appelés), tout comme un outil "clone" le fait ...
Mais la partie délicate vient lors de la restauration ... il ne place pas les fichiers là où ils le font, il place les fichiers sans aucune fragmentation du tout.
Je l'avais utilisé pour la partition système Windows ainsi que pour les partitions de données NTFS ... avec succès ... pas très facile à utiliser / comprendre (lire attentivement les documents) ... mais peut faire l'affaire.
Rappelez-vous ... un tel gros fichier qu'il crée peut être compressé, donc pas vraiment besoin d'avoir un 51% gratuit.
Mais de toute façon, vous devez d'abord réduire la partition NTFS ... utiliser GParted (si je ne me souviens pas mal).
Alors étapes:
Voilà, les gens ... comme je l'ai dit très délicat et risqué, bien sûr.
Méfiez-vous des points clés:
Les étapes sont les suivantes: Utilisez un linux LiveCD / LiveUSB pour défragmenter une partition NTFS qui utilise 100% du disque, sans aucun autre disque dur connecté à un tel PC [doit avoir suffisamment d'espace libre].
IMPORTANT:
Tant que je sais que GParted / fsarchiver est la solution la plus proche (pour utiliser uniquement un LiveCD / LiveUSB avec Linux), pas rapide, en quelque sorte risqué, mais satisfaisant les conditions imposées par la personne qui pose la question.
ATTENTION: C'est très, très risqué ... comme avec n'importe quel outil "clone" ... et pour l'instant je ne connais pas d'autre meilleur moyen ... et il perdra les flux NTFS (si je ne me souviens pas mal)
S'IL VOUS PLAÎT: Lisez attentivement les documents fsarchiver, avant de l'utiliser.
J'ai toute responsabilité (je l'avais utilisé sur mes propres données, mais j'ai toujours un BackUP externe - de bons partices).
En pratique ... toutes les informations dont je dispose, je les mets sur au moins trois supports différents (disque dur, DVD, mémoires flash), avec au moins trois copies sur chaque support, donc j'en ai 9 copies ... si je perds 8 de eux il reste encore un pour récupérer des données ... je suis un peu paranoïaque, je connais.