Aller au contenu


Fragmentation sous Linux

fragmentation défragmentation defragfs e4defrag shake Linux

  • Vous ne pouvez pas répondre à ce sujet
14 replies to this topic

#1 Txon

Txon

    AïoligaToR

  • Administrateur
  • PipPipPipPipPipPipPipPipPip
  • 10 854 Messages :
  • Gender:Male

Posté 18 juin 2015 - 11:42

Salut !

 

Défragmenter son disque sous Linux n'est pas une opération courante. Rares sont ceux qui l'ont fait et leur disque ne s'en porte pas plus mal, tout au moins en apparence. Ceci se doit à la technique d'écriture/ré-écriture des fichiers qui, sous Linux diffère sensiblement de la technique utilisée par Windows.

 

Certains insistent même sur le fait qu'il n'y a pas de fragmentation sous Linux. Cette affirmation n'est-elle pas un peu hâtive ?

 

Selon Bill Toulas (HowToForge)

« Les systèmes de fichiers Linux tentent de réécrire complètement chaque fichier sur un autre secteur qui a suffisamment d'espace pour le stocker dans son ensemble. De cette façon, tout est propre, bien rangé et en un seul morceau. Cependant, à cause du confinement de l'espace, cette manœuvre devient plus difficile avec le temps. ».

Ainsi, petit à petit, en cas de réduction de l'espace disponible, une fragmentation peut se produire.

 

Cette remarque est complétée par DaaX (MageiaLinux-Online) qui ne semble pas tout à fait d'accord sur l'intérêt de la défragmentation.

En raison de la façon dont ces systèmes fonctionnent, il y aura fragmentation importante lorsque votre disque dur se remplit à une capacité de 95% (voire 80%). Cependant, le système de fichiers est conçu pour éviter la fragmentation en utilisation normale.

Et lorsque l'utilisation n'est pas ''normale'' ?
 

Erik Bärwaldt (Linux Magazine) rajoute plusieurs couches ..

« La fragmentation est quelque chose qui affecte principalement les fichiers les plus volumineux qui ne rentrent pas complètement dans l'espace libre d'un disque dur en raison d'un manque d'espace contiguë suffisamment grand. Ainsi, un fichier va se placer dans différents segments.. Quand un tel fichier est lu, les têtes de lecture se déplacent vers une nouvelle position à plusieurs reprises pour rassembler les morceaux. Ce mouvement prend du temps et ceci augmenter sur des disques fortement fragmentés. »

« Les données des utilisateurs ne sont pas les seuls contributeurs de la fragmentation; le système d'exploitation lui-même encourage les grandes fractures: les utilisateurs qui aiment expérimenter et essayer des logiciels contribuent également à la fragmentation en installant de nouveaux programmes puis en les supprimer souvent. »
« En raison du manque d'espace libre, la fragmentation des données sera plus forte dans les partitions où plus de la moitié de la capacité est utilisée et que le système a besoin de place pour diffuser des fichiers volumineux dans un nombre croissant de zones d'écriture. »
« En fin de compte, les outils généralement utiles comme BleachBit ou rpmorphan peuvent aggraver la situation dans certaines circonstances en supprimant les fichiers qui ne sont plus nécessaires: les suppressions entre les segments alloués génèrent des blocs libres non-contigus. »

 

…. …. …. ….

…. …. …. ….

 

En général, le taux de fragmentation n’excède pas 03 % et très rarement 10 % mais il vaut mieux le contrôler surtout quand le disque est très encombré.

Daax nous indique ..

« Vous pouvez vérifier la fragmentation de votre disque à l'aide de la commande fsck :

fsck -nvf /dev/sdx

où x = la partition de votre disque. »

 

De son côté, Erik Bärwaldt conseille l'utilisation du paquet ''e2fsprogs'' lorsque le système de fichiers est ext2, ext3 ou ext4.

« Soyez sûr que la partition est préalablement ''démontée''. Vous pouvez le faire en utilisant la commande.. »

umount <devicefile>

« Vous pouvez alors exécuter la commande suivante dans le Terminal avec des privilèges d'administrateur .. »

e2fsck -fn <devicefile>

Où <devicefile> est la partition à contrôler.

« Lorsque vous vérifiez la partition, vous verrez affiché le pourcentage de blocs non contigus dans la dernière ligne. Ne laissez pas effrayer par ce qui pourrait ressembler à une grande valeur. La défragmentation n'est pas utile sous Linux jusqu'à ce que les blocs non contigus dépassent 20 %. »

 

…. …. …. ….

…. …. …. ….

 

La solution la plus répandue pour réduire la fragmentation des fichiers est d'en faire une copie sur un autre support de taille suffisante, avant d'effacer les fichiers du disque fragmenté puis de recopier les fichiers sur le disque d'origine. Ceci peut prendre beaucoup de temps, surtout si les données sont volumineuses et encore plus si elles sont stockées dans des périphériques USB.

Il y a cependant d'autres solutions.

 

Erik Bärwaldt mentionne le paquet ''defragfs''.

« Malgré sa petite taille, le script Perl fournit une fonctionnalité étonnante. Il ne se contente pas défragmenter répertoires et partitions, il fournit également des informations détaillées sur le succès des actions. »

 

De leur côté, Bill Toulas et Denis Szalkowski utilisent ''e4defrag''.

« Avec ext4, le nouvel utilitaire e4defrag permet de défragmenter à chaud, excluant toutefois les fichiers en activité verrouillés par un processus. »

 

D'autres se servent de ''Shake'' etc.

 

/!\ N'effectuez pas de défragmentation sur un SSD /!\

 

…. …. …. ….

…. …. …. ….

 

Optimizing data organization on disk (Erik Bärwaldt .. Linux Magazine)

Comprendre pourquoi la défragmentation est inutile sous Linux (DaaX .. MageiaLinux-Online)

Online Defragmentation (Jarret W. Buse .. Linux.org .. 09 juillet 2013)

Utilities for Handling Disk Fragmentation in Linux (Mark Millette .. Wsol .. 11 février 2015)

e4defrag pour défragmenter à chaud les partitions ext4 (Denis Szalkowski .. dfsc .. 07 mai 2015)

How to defrag your Linux system. (Bill Toulas .. HowToForge .. 15 juin 2015)

 

@+


"They who can give up essential liberty to obtain a little temporary safety, deserve neither liberty nor safety."(Benjamin Franklin)


#2 Thelwin Argon

Thelwin Argon

    Thelwinneur

  • Administrateur
  • PipPipPipPipPipPipPipPipPip
  • 3 268 Messages :
  • Gender:Male
  • Location:Suisse

Posté 30 août 2015 - 23:04

Rares sont ceux qui l'ont fait et leur disque ne s'en porte pas plus mal, tout au moins en apparence.


Ou plutôt que leurs disques, en apparence, ne s'en portent pas mieux qu'avant, au vu de l'impact minime de la fragmentation sur les systèmes de fichiers ext2-3-4 ;)

Joli dossier ^^ On en parlait justement dans un autre topic, il tombe à pic :siffle:


Sauf pathologie mentale profonde, tout le monde est bon en maths. | Albert Jacquard
——————————————————
Deux excès : exclure la raison, n'admettre que la raison. | Blaise Pascal

#3 tukozaki

tukozaki

    Touriste Phobosien

  • Zimien
  • PipPipPipPip
  • 73 Messages :
  • Gender:Male
  • Location:Londres > . < Paris

Posté 31 août 2015 - 13:14

Salut grace aux articles abordables comme celui-ci c'est toujours un plaisir de passer sur infomars » GNU pour piger, réviser ses bases :)
 

En général, le taux de fragmentation n’excède pas 03 % et très rarement 10 % mais il vaut mieux le contrôler surtout quand le disque est très encombré.
La défragmentation n'est pas utile sous Linux jusqu'à ce que les blocs non contigus dépassent 20 %. »
 
Daax nous indique ..
« Vous pouvez vérifier la fragmentation de votre disque à l'aide de la commande fsck :

fsck -nvf /dev/sdx
où x = la partition de votre disque. »

 

…. …. …. ….

 
Optimizing data organization on disk (Erik Bärwaldt .. Linux Magazine)

 

 
Alors et c'est p-ê mes handicaps mentales ;) donc en fait :
fichiers et dossiers non contigüs = blocs non contigüs = fragmentation
 
Commande fsck -nvf </dev/partition> affiche la fragmentation des fichiers et répertoires sous l'appellation "non-contiguous ..." au milieu de la sortie. Et contrairement à e2fsck on peut la lancer sur une partoche montée :)
 
L'article d'Erik Bärwaldt concerne pas l'optimisation du layout ou du classement de ses données (comme j'ai cru arf dômâche) mais bien Defragmenting Linux : Optimizing...
 
 

 

Rares sont ceux qui l'ont fait et leur disque ne s'en porte pas plus mal, tout au moins en apparence.


Ou plutôt que leurs disques, en apparence, ne s'en portent pas mieux qu'avant, au vu de l'impact minime de la fragmentation sur les systèmes de fichiers ext2-3-4 ;)

 

 

En raison de la façon dont ces systèmes fonctionnent, il y aura fragmentation importante lorsque votre disque dur se remplit à une capacité de 95% (voire 80%).

 
Mouaih... comme Thelwin a voir dans le monde réel. D'ailleurs voici la fragmentation de :
1. La partition root sur
- mon netbook Arch Linux, toujours blindée à 90-100% depuis 2013 :euhD: 

$ df -m /
Sys. de fichiers blocs de 1M Utilisé Disponible Uti% Monté sur
/dev/sda5               6443    5666        428  93% /

# fsck -nvf /dev/sda5 | grep contiguous
e2fsck 1.42.12 (29-Aug-2014)
        1608 non-contiguous files (0.9%)
         100 non-contiguous directories (0.1%)

- ma station de travail (système et home sur SSD) dans le même état depuis 2013 :

$ df -m /
Sys. de fichiers             blocs de 1M Utilisé Disponible Uti% Monté sur
/dev/mapper/vg_ssd-lv_linux1        8944    7967        501  95% 

$ sudo fsck -nvf /dev/mapper/vg_ssd-lv_linux1 |grep conti
e2fsck 1.42.13 (17-May-2015)
        1973 fichiers non contigus (0.7%)
         312 répertoires non contigus (0.1%)

2. Partitions de données
- netbook :

$ df -m /data/
Sys. de fichiers blocs de 1M Utilisé Disponible Uti% Monté sur
/dev/sda8              81538   56091      25431  69% /data
┌─[gwenael]─[~]
└──╼ fsck -nvf /dev/sda9 | grep contiguous
e2fsck 1.42.12 (29-Aug-2014)
         532 non-contiguous files (0.2%)
          62 non-contiguous directories (0.0%)

 
- station : partition multimédia (photos, audio, vidéos, torrents, podcasts)

$ df -m /mnt/mm/
Sys. de fichiers          blocs de 1M Utilisé Disponible Uti% Monté sur
/dev/mapper/data_vg-lv_mm      235569  172135      63418  74% /mnt/mm
kozaki@llewellyn:~SSH$ sudo fsck -nvf /dev/mapper/data_vg-lv_mm |grep conti
e2fsck 1.42.13 (17-May-2015)
        1146 fichiers non contigus (16.5%)
          15 répertoires non contigus (0.2%)

Qu'est-ce-qui est plus modulaire, compatible et ouvert, moins calorifère et (beaucoup) moins cher ??

Du code efficace :)


#4 Thelwin Argon

Thelwin Argon

    Thelwinneur

  • Administrateur
  • PipPipPipPipPipPipPipPipPip
  • 3 268 Messages :
  • Gender:Male
  • Location:Suisse

Posté 31 août 2015 - 19:00

- station : partition multimédia (photos, audio, vidéos, torrents, podcasts)

$ df -m /mnt/mm/
Sys. de fichiers          blocs de 1M Utilisé Disponible Uti% Monté sur
/dev/mapper/data_vg-lv_mm      235569  172135      63418  74% /mnt/mm
kozaki@llewellyn:~SSH$ sudo fsck -nvf /dev/mapper/data_vg-lv_mm |grep conti
e2fsck 1.42.13 (17-May-2015)
        1146 fichiers non contigus (16.5%)
          15 répertoires non contigus (0.2%)

Oui, c'est normal que ce soit ce type de fichier qui subissent le plus de fragmentation : ce sont tous de "gros" fichiers, qui peuvent peser plusieurs Go parfois, et donc ils sont plus sujet à la framentation :D
C'est un parfait exemple pour illustrer ce sujet. Merci de ton apport.


Sauf pathologie mentale profonde, tout le monde est bon en maths. | Albert Jacquard
——————————————————
Deux excès : exclure la raison, n'admettre que la raison. | Blaise Pascal

#5 Txon

Txon

    AïoligaToR

  • Administrateur
  • PipPipPipPipPipPipPipPipPip
  • 10 854 Messages :
  • Gender:Male

Posté 08 mai 2017 - 11:25

..

  /!\   N'effectuez pas de défragmentation sur un SSD /!\

 

Selon Jesse Smith (Distrowatch .. mai 2017)

 

Most file systems that Linux will support, such as ext4, XFS and Btrfs, will generally avoid fragmenting your files automatically. A hard drive gets fragmented when the operating system writes part of a file in one location and another part of the same file in a different location. This breaks up files and causes pieces of large files to be scattered around the hard drive. On spinning drives this results in poorer performance as it takes longer to access all the various pieces of the file. Linux file systems generally attempt to write data to the hard drive in a way that keeps the parts of the file together.

Sometimes, usually when the hard drive is close to full (around 80% or 90% of its capacity) files may become fragmented as the system runs out of convenient places to write large files in continuous blocks. But when the disk is less than 80% full, a Linux file system will generally avoid fragmentation.

While most people do not need to worry about their Linux file system becoming fragmented, there are tools for dealing with fragmentation. As each file system works a little differently, there are different utilities for dealing with fragmentation on each file system.

The most commonly used file system on Linux is probably ext4. If you would like to check to see if your ext4 file system is fragmented you can run the following command as the root user or via sudo:

The above command runs the ext4 defrag command. The -c option tells the program to check for fragmentation. This will cause the e4defrag program to look for fragmentation, but not attempt to repair it if any is found. The last parameter, / in this example, is the location of the file system. In our example we are checking the root (/) file system, but we could also check our /home directory using

e4defrag -c /

The e4defrag command will produce a "fragmentation score". A score in the range of 0 to 30 indicates there is no problem. A file system with a score of 31 through 55 is slightly fragmented, but the fragmentation can probably be ignored. A score of 56 or higher suggests the drive should be defragged. We can defrag the drive by running the same e4defrag command again, this time without the -c option.

e4defrag -c /home

Different file systems use different commands, most of them feature more options than the e4defrag command and I recommend reading their respective manual pages. The command to defragment a Btrfs volume mounted at /home is as follows:

e4defrag /home

If you are running a system with XFS as one of the file systems, you can defragment all connected XFS partitions by running the command

btrfs filesystem defrag -r /home

These defrag commands may never need to be run as each file system generally keeps itself well organized. However, if you want to experiment to see if your file system can be better organized, these above commands will do the job.xfs_fsr

 

[Retour en haut du sujet]

 

@+


"They who can give up essential liberty to obtain a little temporary safety, deserve neither liberty nor safety."(Benjamin Franklin)


#6 Severian

Severian

    Plus riant que sévère

  • Eminence Verte
  • PipPipPipPipPipPipPip
  • 747 Messages :
  • Gender:Male

Posté 08 mai 2017 - 17:51

défragmenter un ssd n'a aucun interet et même sous windows

sur un hdd c'est pour éviter les aller retours de la tête de lecture, mais sur un ssd ce problème de ne se pose pas.

 

de plus un défragmenter un ssd c'est multiplier les écritures sur un ssd, ce qui n'est pas conseillé.


ob3-de10.pngbanner98x30.png


#7 vigen

vigen

    Hardcore Papa

  • Tonton Flingueur
  • PipPipPipPipPipPipPipPipPip
  • 6 545 Messages :
  • Gender:Male
  • Location:Normandie

Posté 08 mai 2017 - 20:15

Comme le dit mon éminent collègue la défragmentation sous SSD est inutile, et réduit fortement la durée de vie du ssd.. Il faut privilégier le Trim. Soit via systemd ou une tache cron. RedHat et consort déconseille l'utilisation de discard dans fstab, celui-ci "trim" en temps réel lors d'autres opérations d'écritures/lectures, pouvant s'avérer au final contre productif.



#8 Darksky

Darksky

    Martien

  • Eminence Verte
  • PipPipPipPipPipPipPipPip
  • 1 212 Messages :
  • Gender:Male
  • Location:Belgique

Posté 08 mai 2017 - 20:28

Notre ami Txon le signale d'ailleurs en tout début de post, concernant les SSD ;)

 

Sinon, pour le fun, j'ai exécuté la commande pour voir où en était la fragmentation sur mes partitions (je suis aussi sur un SSD, c'était juste par curiosité). Résultat: 0.

C'est quand même bien foutu comme système :)


"Ils ne savaient pas que c'était impossible, alors ils l'ont fait."

Mark Twain


#9 vigen

vigen

    Hardcore Papa

  • Tonton Flingueur
  • PipPipPipPipPipPipPipPipPip
  • 6 545 Messages :
  • Gender:Male
  • Location:Normandie

Posté 09 mai 2017 - 06:49

Hello !! :)

 

C'est normal que tu es en résultat 0, puisque le ssd ne se fragmente pas !! :D

 

Personnellement, la partition ou se trouve les .vdi de mes VM, se trouvent sur un disque rétro-magnétique classique, et là par contre, la defrag fut nécessaire, sinon pour le reste, ext4 fait son job !! ;)



#10 Darksky

Darksky

    Martien

  • Eminence Verte
  • PipPipPipPipPipPipPipPip
  • 1 212 Messages :
  • Gender:Male
  • Location:Belgique

Posté 09 mai 2017 - 07:19

Hello Vigen :)

 

C'était pour le fun j'ai dit :D

Et puis j'ai fais circuler la commande sur un autre forum où j’intéresse une ou 2 personnes avec Linux (ce qui est déjà pas mal...) et il me fallait bien l'essayer pour la présenter :D

 

Mais il est vrai que c'est assez surprenant de voir comment ext4 est efficace à ce niveau là (comparativement à NTFS qui, même si il n'est pas "mauvais", fragmente plus).


"Ils ne savaient pas que c'était impossible, alors ils l'ont fait."

Mark Twain


#11 vigen

vigen

    Hardcore Papa

  • Tonton Flingueur
  • PipPipPipPipPipPipPipPipPip
  • 6 545 Messages :
  • Gender:Male
  • Location:Normandie

Posté 09 mai 2017 - 07:35

NTFS est un système de fichier "plus vieux" qu'ext4 si je ne me trompe pas....

 

Si tu as besoin d'un "coup de main" pour l'autre forum n'hésite pas... ;)



#12 Darksky

Darksky

    Martien

  • Eminence Verte
  • PipPipPipPipPipPipPipPip
  • 1 212 Messages :
  • Gender:Male
  • Location:Belgique

Posté 09 mai 2017 - 07:45

Vous y êtes les bienvenus :)

Après, rien d'extraordinaire, j'ai juste essayé d'y montrer qu'une alternative existe, la plus simple possible :)

 

https://forumsospc.fr/

 

C'est par là :)


"Ils ne savaient pas que c'était impossible, alors ils l'ont fait."

Mark Twain


#13 vigen

vigen

    Hardcore Papa

  • Tonton Flingueur
  • PipPipPipPipPipPipPipPipPip
  • 6 545 Messages :
  • Gender:Male
  • Location:Normandie

Posté 09 mai 2017 - 13:20

Ne rabaisse pas ce que tu as fait !! :)

 

Quand la nouvelle vidéo? Le son a nouveau de ton timbre de voix? :D



#14 Darksky

Darksky

    Martien

  • Eminence Verte
  • PipPipPipPipPipPipPipPip
  • 1 212 Messages :
  • Gender:Male
  • Location:Belgique

Posté 13 mai 2017 - 11:08

Je ne rabaisse pas :) Mais ce que je présente reste simple, juste pour "donner goût" et montrer que d'autres choses existent.

 

Pour la vidéo, j'en ai fait une parce que j'avais un sujet qui s'y prêtait bien. Là, je n'en ai pas sous la main..

 

Quand la nouvelle vidéo? Le son a nouveau de ton timbre de voix? :D

 

Tu es sous le charme? :D L'exotisme de l'accent probablement :XZombi:


"Ils ne savaient pas que c'était impossible, alors ils l'ont fait."

Mark Twain


#15 vigen

vigen

    Hardcore Papa

  • Tonton Flingueur
  • PipPipPipPipPipPipPipPipPip
  • 6 545 Messages :
  • Gender:Male
  • Location:Normandie

Posté 13 mai 2017 - 15:28

To-ta-le-ment conquis !!! :D

 

Tiens, tu me fais penser d'ailleurs, que cela fait longtemps que je ne suis pas allez faire un petit bonjour à mes "voisins" Belges !! ;)





0 utilisateur(s) en train de lire ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)