Madhësia e drejtorive nuk ia vlen përpjekjet tona

Ky Ă«shtĂ« njĂ« postim i vogĂ«l, i bezdisshĂ«m, i paqĂ«ndrueshĂ«m nĂ« praktikĂ«, por argĂ«tues pĂ«r drejtoritĂ« nĂ« sistemet *nix. ËshtĂ« e premte.

Në intervista shpesh dalin pyetje të mërzitshme për inodet, gjithçka është skedarë, për të cilat pak njerëz mund të përgjigjen në mënyrë të arsyeshme. Por nëse thellohemi pak më thellë, mund të gjejmë disa gjëra interesante.

Për të kuptuar postimin, disa pika të rëndësishme:

  • gjithçka Ă«shtĂ« skedar. drejtorja Ă«shtĂ« gjithashtu njĂ« skedar
  • nĂ« inod ruhet metadatĂ« pĂ«r skedarin, por emri i skedarit nuk ruhet aty
  • emri i skedarit ruhet nĂ« tĂ« dhĂ«nat e drejtorisĂ«
  • madhĂ«sia e drejtorisĂ«, ajo e cila shfaqet nĂ« ls dhe pĂ«ré»˜èź€ Ă«shtĂ« 4Kb, varet nga numri i skedareve nĂ« drejtorinĂ« dhe gjatĂ«si e emrave tĂ« tyre
  • sigurisht, sa mĂ« shumĂ« skedare, aq mĂ« e madhe Ă«shtĂ« madhĂ«sia e drejtorisĂ«

Tani, ja e interesantja: krijojmë një drejtorinë me një milion skedare, kontrollojmë madhësinë e drejtorisë, pastaj fshijmë të gjitha skedaret dhe shohim madhësinë e drejtorisë.

$ mkdir niceDir && cd niceDir
# në varësi të shpejtësisë së bartësit, komanda pasuese mund të zgjasë 2-10 minuta
$ për ((i=1;i<133700;i++)); bëj touch long_long_looong_man_sakeru_$i ; bërë
$ ls -lhd .
drwxr-xr-x 2 user user 8.1M Aug 2 13:37 .
$ gjej . -tip f -fshi
$ ls -l
totali 0
$ ls -lhd .
drwxr-xr-x 2 user user 8.1M Aug  2 13:37 .

Siç mund tĂ« vĂ«reni, madhĂ«sia e drejtorisĂ« nuk u ndryshua, megjithĂ«se duket si njĂ« çështje 🙂

Të riparoni madhësinë e drejtorisë (pa fshirje) mund të bëhet vetëm me ndihmën e fsck (dhe opsionin -D) në gjendje të montuar.

Dhe kur shkova të kërkoj përse ka ndodhur kështu, doli se 10 vjet më parë një sjellje e tillë ishte diskutuam në lkml. Dhe sipas mendimit të zhvilluesve, korrigjimi thjesht nuk ia vlen përpjekjet e ngulitura.

Burimi: habr.com

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster