[Taille fichier] Grosse différence entre ls et du (résolu)
- benjarobin
- Maître du Kyudo
- Messages : 17596
- Inscription : sam. 30 mai 2009, 15:48
- Localisation : Lyon
[Taille fichier] Grosse différence entre ls et du (résolu)
Bonjour,
Je viens de faire la mise a jour de git, paquet qui utilise l'extension xz.
J'ai voulu comparer pour le "fun" la compression entre tar.xz et tar.gz.
Donc j'extrait le tar.xz (1.8 Mo) avec la commande: tar xvJf git-1.7.0.3-1-i686.pkg.tar.xz ou avec KDE. Et au surprise lorsque je regarde la taille avec KDE celui-ci me donne 100 Mo...
Je vérifie avec un du qui me donne 5.3 Mo. Puis avec ls qui lui me donne la même taille que KDE.
En faite l'archive contient plein de fichiers faisant 0 octect, fichiers étant une simple copie d'un autre fichier. Ceci est tout a fait normale l'exécutable sait quoi lancer avec le nom de la commande.
Mais pourquoi donc ce n'est pas des liend symboliqued et comment c'est possible de faire ceci ? Est ce normal ? Que contient réellement mon disque dur...
Merci
Je viens de faire la mise a jour de git, paquet qui utilise l'extension xz.
J'ai voulu comparer pour le "fun" la compression entre tar.xz et tar.gz.
Donc j'extrait le tar.xz (1.8 Mo) avec la commande: tar xvJf git-1.7.0.3-1-i686.pkg.tar.xz ou avec KDE. Et au surprise lorsque je regarde la taille avec KDE celui-ci me donne 100 Mo...
Je vérifie avec un du qui me donne 5.3 Mo. Puis avec ls qui lui me donne la même taille que KDE.
En faite l'archive contient plein de fichiers faisant 0 octect, fichiers étant une simple copie d'un autre fichier. Ceci est tout a fait normale l'exécutable sait quoi lancer avec le nom de la commande.
Mais pourquoi donc ce n'est pas des liend symboliqued et comment c'est possible de faire ceci ? Est ce normal ? Que contient réellement mon disque dur...
Merci
Dernière modification par benjarobin le mar. 23 mars 2010, 16:53, modifié 1 fois.
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Re: [Taille fichier] Grosse différence entre ls et du (début)
Les fichiers ont deux poids, un visible (par exemple celui que l'on voit avec un gestionnaire de fichiers), un moins visible (le nombre de blocs disques qu'ils prennent).
Un fichier affichant 0 octet prend un bloc disque, soit en général 4 Ko. Fais le calcul puisque tu as plein de fichiers de 0 octets.
Un fichier affichant 0 octet prend un bloc disque, soit en général 4 Ko. Fais le calcul puisque tu as plein de fichiers de 0 octets.

Anarchy for the triple A.
- gyo
- Maître du Kyudo
- Messages : 1049
- Inscription : jeu. 19 avr. 2007, 10:40
- Localisation : Nantes (44)
Re: [Taille fichier] Grosse différence entre ls et du (début)
Sinon, la comparaison avec un tar.gz ? 

- benjarobin
- Maître du Kyudo
- Messages : 17596
- Inscription : sam. 30 mai 2009, 15:48
- Localisation : Lyon
Re: [Taille fichier] Grosse différence entre ls et du (début)
Je n'ai donc pas fait la comparaison
(Trop occuper a comprendre le probleme)
Alors les fichiers sont dans /usr/lib/git-core/ Les fichiers qui font 0 octet dans l'archive font 950 Ko avec ls !!! (Donc rien a voir avec les bloc sur le disque dur)
Si on fait du git-var cella me donne bien 950 Ko, mais si on fait du git-* cela me donne la liste des fichiers avec leur taille mais git-var n'est pas dans cette liste (WT*) Si on fait la somme des fichiers qui sont affiche on arrive bien a 5.3 Mo...
Mais alors git-var c'est quoi un fantôme ?

Alors les fichiers sont dans /usr/lib/git-core/ Les fichiers qui font 0 octet dans l'archive font 950 Ko avec ls !!! (Donc rien a voir avec les bloc sur le disque dur)
Si on fait du git-var cella me donne bien 950 Ko, mais si on fait du git-* cela me donne la liste des fichiers avec leur taille mais git-var n'est pas dans cette liste (WT*) Si on fait la somme des fichiers qui sont affiche on arrive bien a 5.3 Mo...
Mais alors git-var c'est quoi un fantôme ?
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Re: [Taille fichier] Grosse différence entre ls et du (début)
tu peux donner la commande "ls" que tu utilises?
100mo, je l'ai pas moi (nautilus ou pcmanfm)
par contre, pour ce qui est des liens, c'est normal, avec bsdtar -vtf <archive> tu verras que les fichiers ne sont pas des liens à proprement dit, il y a un "h" au début, [EDIT: c'est une connerie]ça indique que c'est pareil qu'un des fichiers de l'archive (et donc minimise la taille de l'archive) mais lors de la décompression, c'est des vrais fichiers.[/fin de la connerie]
EDIT: En fait c'est des liens non symbolique (hard link)
100mo, je l'ai pas moi (nautilus ou pcmanfm)
par contre, pour ce qui est des liens, c'est normal, avec bsdtar -vtf <archive> tu verras que les fichiers ne sont pas des liens à proprement dit, il y a un "h" au début, [EDIT: c'est une connerie]ça indique que c'est pareil qu'un des fichiers de l'archive (et donc minimise la taille de l'archive) mais lors de la décompression, c'est des vrais fichiers.[/fin de la connerie]
EDIT: En fait c'est des liens non symbolique (hard link)
- benjarobin
- Maître du Kyudo
- Messages : 17596
- Inscription : sam. 30 mai 2009, 15:48
- Localisation : Lyon
Re: [Taille fichier] Grosse différence entre ls et du (début)
Mais il y a bien 50 fichiers ou plus de taille de 950 Ko ? (je ne suis pas sur mon PC la) Pourrait tu me donner ton ls de /usr/lib/git-core/ avec la même commande que moi: /usr/bin/ls -lc'est des vrais fichiers.
Et tant que l'on y est que donne un /usr/bin/du -sh /usr/lib/git-core/*
Mais alors pourquoi ne pas créer des liens symboliques...mais lors de la décompression, c'est des vrais fichiers.
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Re: [Taille fichier] Grosse différence entre ls et du (début)
bon après une petite recherce, en fait, c'est bien des liens, au temps pour moi
des liens non symboliques, et kde doit s'emmêler les pinceaux et sommer des fichiers qu'il faut pas.
"du" omet les fichiers en double.
pour tester, tu peux lancer "ls -ali | sort", c'est le même inode pour pas mal d'entre eux.
des liens non symboliques, et kde doit s'emmêler les pinceaux et sommer des fichiers qu'il faut pas.
"du" omet les fichiers en double.
pour tester, tu peux lancer "ls -ali | sort", c'est le même inode pour pas mal d'entre eux.
- benjarobin
- Maître du Kyudo
- Messages : 17596
- Inscription : sam. 30 mai 2009, 15:48
- Localisation : Lyon
Re: [Taille fichier] Grosse différence entre ls et du (début)
Je met en résolu, mais petite question comme même, comment on créer de tel fichier ? Je ne savais pas que cela exister. Et quel est la différence avec un lien symbolique.
Pourquoi ls -l donne a la première ligne pour le dossier (le .) une taille de 100 Mo ? Bug ou normal ?
Dois je faire un rapport de bug pour KDE (Sinon dolphin est vraiment devenu instable
) ?
Pourquoi ls -l donne a la première ligne pour le dossier (le .) une taille de 100 Mo ? Bug ou normal ?
Dois je faire un rapport de bug pour KDE (Sinon dolphin est vraiment devenu instable

Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
- gyo
- Maître du Kyudo
- Messages : 1049
- Inscription : jeu. 19 avr. 2007, 10:40
- Localisation : Nantes (44)
Re: [Taille fichier] Grosse différence entre ls et du (résolu)
Les liens hard-link existent depuis la nuit des temps !
Ça se crée avec la même commande que pour créer des liens symboliques sauf que l'on ne spécifie pas l'option « -s ».
La différence c'est que le lien symbolique ne fait que référencer le nom d'un autre fichier (répertoire ou nom) alors que le hard-link pointe le même espace mémoire sur le disque que le fichier d'origine (même inode).
Si on supprime le fichier auquel on a fait référence avec ln dans le cas du hard-link, le fichier hard-link ne sera pas altéré, alors que pour le lien symbolique si le fichier pointé n'existe plus, le lien est mort.
En fait, rien ne distingue un fichier hard-link d'un autre, car ce sont tous des liens hard-link (afaik)

Ça se crée avec la même commande que pour créer des liens symboliques sauf que l'on ne spécifie pas l'option « -s ».
La différence c'est que le lien symbolique ne fait que référencer le nom d'un autre fichier (répertoire ou nom) alors que le hard-link pointe le même espace mémoire sur le disque que le fichier d'origine (même inode).
Si on supprime le fichier auquel on a fait référence avec ln dans le cas du hard-link, le fichier hard-link ne sera pas altéré, alors que pour le lien symbolique si le fichier pointé n'existe plus, le lien est mort.
En fait, rien ne distingue un fichier hard-link d'un autre, car ce sont tous des liens hard-link (afaik)
Bug ou feature, c'est à toi de jugerPourquoi ls -l donne a la première ligne pour le dossier (le .) une taille de 100 Mo ? Bug ou normal ?
Dois je faire un rapport de bug pour KDE (Sinon dolphin est vraiment devenu instable) ?
