Din hija post għal kollox inutli, mhux meħtieġ fl-applikazzjoni prattika, iżda ftit umoristiċi dwar direttorji f'sistemi * nix. Wasal il-Ġimgħa.
Waqt l-intervisti, ħafna drabi jqumu mistoqsijiet boring dwar inodes, everything-is-files, li ftit nies jistgħu jwieġbu b'mod sensibbli. Imma jekk tħaffer ftit aktar fil-fond, tista 'ssib affarijiet interessanti.
Biex tifhem il-post, ftit punti:
- kollox huwa fajl. direttorju huwa wkoll fajl
- l-inode jaħżen il-metadata mill-fajl, iżda l-isem tal-fajl mhuwiex maħżun hemmhekk
- l-isem tal-fajl huwa maħżun fid-data tad-direttorju
- Id-daqs tad-direttorju, l-istess wieħed li jidher f'ls u huwa 4Kb awtomatikament, jiddependi fuq in-numru ta 'fajls fid-direttorju u t-tul ta' l-ismijiet tagħhom
- Ovvjament, iktar ma jkun hemm fajls, iktar ikun kbir id-daqs tad-direttorju
Issa hawn il-parti interessanti: noħolqu direttorju b'miljun fajl, iċċekkja d-daqs tad-direttorju, u mbagħad ħassar il-fajls kollha u nħarsu lejn id-daqs tad-direttorju.
$ mkdir niceDir && cd niceDir
# в зависимости от скорости носителя, следующая команда может занять 2-10 минут
$ for ((i=1;i<133700;i++)); do touch long_long_looong_man_sakeru_$i ; done
$ ls -lhd .
drwxr-xr-x 2 user user 8.1M Aug 2 13:37 .
$ find . -type f -delete
$ ls -l
total 0
$ ls -lhd .
drwxr-xr-x 2 user user 8.1M Aug 2 13:37 .
Kif tistgħu taraw, id-daqs tad-direttorju ma nbidilx, għalkemm jidher :)
Tista' tiffissa biss id-daqs ta' direttorju (mingħajr ma tħassarha) billi tuża fsck (u l-għażla -D) fi stat mhux immuntat.
Imma meta mort infittex għaliex dan kien hekk, irriżulta li 10 snin ilu imġieba bħal din kienet diġà
Sors: www.habr.com