Questu hè un postu completamente inutile, innecessariu in l'applicazione pratica, ma divertente pocu postu nantu à i cartulari in i sistemi * nix. Hè vennari.
Duranti l'entrevista, ci sò spessu questioni noiosi nantu à inodes, all-is-files, chì poche persone ponu risponde sanamente. Ma si scavà un pocu più in fondu, pudete truvà cose interessanti.
Per capisce u post, uni pochi di punti:
- tuttu hè un schedariu. U cartulare hè ancu un schedariu
- l'inode guarda metadata da u schedariu, ma u nome di u schedariu ùn hè micca guardatu quì
- u nome di u schedariu hè guardatu in i dati di u cartulare
- A dimensione di u cartulare, u listessu chì hè indicatu in ls è hè 4Kb per difettu, dipende da u numeru di schedari in u cartulare è a durata di i so nomi.
- Ovviamente, più schedarii, più grande hè a dimensione di u cartulare
Avà quì hè a parte interessante: creamu un annuariu cù un milione di schedari, verificate a dimensione di u repertoriu, è dopu sguassate tutti i schedari è fighjate a dimensione di u cartulare.
$ 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 .
Comu pudete vede, a dimensione di u cartulare ùn hè micca cambiatu, ancu s'ellu pare :)
Pudete solu riparà a dimensione di un repertoriu (senza eliminà) cù fsck (è l'opzione -D) in un statu unmounted.
Ma quandu aghju andatu à circà per quessa chì era cusì, hè statu chì 10 anni fà un tali cumpurtamentu avia digià
Source: www.habr.com