Desfragmentar discos de um computador é algo que o Windows popularizou, como evidenciamos neste artigo. Em Mac OS X, não existe a prática da desfragmentação. Em sistemas Linux, também existe a noção de não existirem problemas de fragmentação. E tal é essencialmente verdade quando os discos não estão muito cheios. Mas como não há milagres, quando os discos enchem, a fragmentação aparece. Tal pode ser visualizado para a totalidade do disco quando se executa o comando “fsck” (comando que só deve ser executado por quem sabe o que está a fazer…), mas pode ser visto ficheiro a ficheiro com o comando “filefrag”.
No primeiro caso, é necessário que o filesystem esteja desmontado. Ao invocar o comando no sistema onde preparo os artigos do Poupar Melhor, o resultado é o seguinte:
# fsck -f /dev/sda1
fsck from util-linux-ng 2.17.2
e2fsck 1.41.11 (14-Mar-2010)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/sda1: 108074/184368 files (0.8% non-contiguous), 586745/736512 blocks
|
Por aqui se percebe que uma pequena parte dos ficheiros está fragmentada. Para se ver o detalhe, pode-se invocar o comando filefrag. Ele pode ser invocado por qualquer utilizador, normalmente com a opção -v. Vejam o exemplo do ficheiro com maior fragmentação no meu desktop:
$ filefrag -v XXXXXX.pdf
Filesystem type is: ef53
File size of XXXXXX.pdf is 3574577 (873 blocks, blocksize 4096)
ext logical physical expected length flags
0 0 565377 12
1 12 566992 565388 6
2 18 567120 566997 6
3 24 571831 567125 6
4 30 557957 571836 5
5 35 560352 557961 5
6 40 569239 560356 4
7 44 571914 569242 4
8 48 558472 571917 3
9 51 558731 558474 3
10 54 559204 558733 3
11 57 564063 559206 3
12 60 570171 564065 3
13 63 557296 570173 2
14 65 558082 557297 2
15 67 558086 558083 2
16 69 573632 558087 15
17 84 558422 573646 2
18 86 558466 558423 2
19 88 573856 558467 32
20 120 558644 573887 2
21 122 559135 558645 2
22 124 560276 559136 2
23 126 560362 560277 2
24 128 564145 560363 2
25 130 564403 564146 2
26 132 576686 564404 4
27 136 569053 576689 2
28 138 569374 569054 2
29 140 576832 569375 3
30 143 576922 576834 10
31 153 576989 576931 9
32 162 577021 576997 3
33 165 569453 577023 2
34 167 569574 569454 2
35 169 577324 569575 8
36 177 569707 577331 2
37 179 577380 569708 4
38 183 577509 577383 6
39 189 570121 577514 2
40 191 570357 570122 2
41 193 571354 570358 2
42 195 571827 571355 2
43 197 572008 571828 2
44 199 573412 572009 2
45 201 573718 573413 2
46 203 557368 573719 1
47 204 557452 557368 1
48 205 557576 557452 1
49 206 579057 557576 2
50 208 579060 579058 2
51 210 557622 579061 1
52 211 579068 557622 3
53 214 558072 579070 1
54 215 558327 558072 1
55 216 558332 558327 1
56 217 579353 558332 4
57 221 579362 579356 2
58 223 579377 579363 4
59 227 558430 579380 1
60 228 558461 558430 1
61 229 558772 558461 1
62 230 559182 558772 1
63 231 559208 559182 1
64 232 559243 559208 1
65 233 559757 559243 1
66 234 560004 559757 1
67 235 562758 560004 1
68 236 563571 562758 1
69 237 563640 563571 1
70 238 563921 563640 1
71 239 564158 563921 1
72 240 564166 564158 1
73 241 564320 564166 1
74 242 564324 564320 1
75 243 564393 564324 1
76 244 564410 564393 1
77 245 564620 564410 1
78 246 565276 564620 1
79 247 565283 565276 1
80 248 565286 565283 1
81 249 581920 565286 32
82 281 582240 581951 64
83 345 565682 582303 1
84 346 582368 565682 224
85 570 565938 582591 1
86 571 582719 565938 113
87 684 566104 582831 1
88 685 582848 566104 64
89 749 658939 582911 124 eof
XXXXXX.pdf: 90 extents found
|
Em Linux não existem muitas ferramentas específicas para realizar esta consolidação. Se está preocupado com algum ficheiro em particular, uma forma de resolver o problema é copiá-lo (não mover) para uma directoria distinta, e depois movê-lo para a directoria original.Com esta acção, o ficheiro anterior ficou contíguo.
Se existir muita fragmentação, então é provável que o disco esteja quase cheio. Neste caso, procurar um disco maior deverá ser a melhor solução…