Pourquoi "df" n'est pas cohérant ?

Résolu
Bonjour,

j'explique mon interrogation.

Lorsque je fais "df" sur mon serveur linux il m'indique une taille de 670 Go pour "/" avec en espace occupé 598 Go et en espace libre 39 Go. si on ajoute 598 + 39 = 637 Go et pas 670 GO !!

Quelqu'un peut me répondre à ce sujet ?

D'avance merci.

9 réponses

  1. Modérateur
    Salut,

    affiche le résultat de
    df -h
    df -H
    --
    106485010510997108
    1
    1. Webmaster
      Hello :)

      Lorsque je fais "df" sur mon serveur linux il m'indique une taille de 670 Go pour "/" avec en espace occupé 598 Go et en espace libre 39 Go. si on ajoute 598 + 39 = 637 Go et pas 670 GO !!

      Rien de plus normal!

      5% de 670 = 33 (grosso-modo)
      637+33 = 670
      CQFD

      Tu vas me dire pourquoi c'est normal de perdre 5% d'espace ?

      Ce n'est pas perdu, par defaut, pour ext2/ext3, 5% des blocks sont reservés à l'utilisateur root pour diverses raisons dont la principal est de permettre à certains programmes (le bon exemple est syslogd) de continuer à fonctionner... en effet, on imagine mal qu'un système une fois full soit incapable d'émettre une alerte sur ce problème :)
      Une autre raison, est il me semble pour une histoire de fragmentation...

      Donc cet espace n'est pas perdu...

      exemple:
      sibsrv01:/home/adrien/test_df/mount_point# df /home/adrien/test_df/mount_point
      Filesystem           1K-blocks      Used Available Use% Mounted on
      /home/adrien/test_df/image
                                4824      4668         0 100% /home/adrien/test_df/mount_point
      sibsrv01:/home/adrien/test_df/mount_point# su adrien -c "dd if=/dev/zero of=afile count=304"
      dd: writing to `a': No space left on device (test avec un utilisateur lambda)
      1+0 records in
      0+0 records out
      0 bytes (0 B) copied, 0.0037153 seconds, 0.0 kB/s
      sibsrv01:/home/adrien/test_df/mount_point# dd if=/dev/zero of=afile count=304
      304+0 records in (test avec root, pas de soucis)
      304+0 records out
      155648 bytes (156 kB) copied, 0.00399913 seconds, 38.9 MB/s
      sibsrv01:/home/adrien/test_df/mount_point# df /home/adrien/test_df/mount_point
      Filesystem           1K-blocks      Used Available Use% Mounted on
      /home/adrien/test_df/image
                                4824      4824         0 100% /home/adrien/test_df/mount_point


      Voilà, la le disque est vraiment plein ;-)
      1
      1. et bien ça fait plus de 30 Go qui sont partis dans la nature !! :(

        Donc vu que je commence à être limite sur ce serveur je voudrais savoir si je peux les récupérer ou bien si c'est un peu comme Windows (la taille réelle des fichiers n'est pas la taille prise sur le disque).

        Merci pour vos réponses.
        0
        1. df -h :

          Sys. de fich. Tail. Occ. Disp. %Occ. Monté sur
          /dev/cciss/c0d0p1 671G 598G 39G 94% /
          tmpfs 443M 0 443M 0% /dev/shm
          none 10M 668K 9,4M 7% /dev

          df -H :

          Sys. de fich. Tail. Occ. Disp. %Occ. Monté sur
          /dev/cciss/c0d0p1 720G 642G 42G 94% /
          tmpfs 465M 0 465M 0% /dev/shm
          none 11M 685k 9,9M 7% /dev

          Donc dans les deux cas une perte de Go assez importante !! :(
          0
          1. bon sur ce serveur ça ne marche pas cette commande !! :(

            donc je vous en remets un autre qui est un peu critique mais avec le même souci :

            systechinf01:~# df -h
            Sys. de fich. Tail. Occ. Disp. %Occ. Monté sur
            /dev/cciss/c0d0p1 671G 440G 198G 69% /

            systechinf01:~# df -H
            Sys. de fich. Tail. Occ. Disp. %Occ. Monté sur
            /dev/cciss/c0d0p1 720G 472G 212G 69% /

            systechinf01:~# fdisk -l

            Disk /dev/cciss/c0d0: 734.0 GB, 734054899712 bytes
            255 heads, 63 sectors/track, 89243 cylinders
            Units = cylinders of 16065 * 512 = 8225280 bytes

            Device Boot Start End Blocks Id System
            /dev/cciss/c0d0p1 * 1 88912 714185608+ 83 Linux
            /dev/cciss/c0d0p2 88913 89243 2658757+ f W95 Ext'd (LBA)
            /dev/cciss/c0d0p5 88913 89243 2658726 82 Linux swap / Solaris

            Pour info ces deux serveurs sont quasi identique.
            0
            1. ok mai son peut pas diminuer cette capacité ???

              style mettre 3Go pour ça et "délivrer" le reste ??
              0
              1. Webmaster
                Si on peut, si tu n'as pas de programmes qui tourne dessus, ce n'est pas dangereux, mais comme c'est ta racine, je te le déconseille fortement, au risque e planter completement ton système...

                En revanche, 3 Go tu ne pourras pas, tu peux laisser 1% (6,7go) ou 0%, mais pas 0,5%...

                Pour le faire, il faudra
                démonter la partition (la comme c'est la racine, ça va être chaud)
                utiliser tune2fs
                remonter la partition.

                Exemple chez moi:
                root@sibsrv01:~/test_df# df /home/adrien/test_df/mount_point
                Filesystem           1K-blocks      Used Available Use% Mounted on
                /home/adrien/test_df/image
                                          4824      4668         0 100% /home/adrien/test_df/mount_point
                root@sibsrv01:~/test_df# umount mount_point
                root@sibsrv01:~/test_df# tune2fs -m0 image (0%)
                root@sibsrv01:~/test_df# mount mount_point
                root@sibsrv01:~/test_df# df /home/adrien/test_df/mount_point
                Filesystem           1K-blocks      Used Available Use% Mounted on
                /home/adrien/test_df/image
                                          4824      4668       156  97% /home/adrien/test_df/mount_point
                Pour toi, comme c'est la partition racine, il faudrait couper le serveur, redemarrer sur un livecd, faire la manip, relancer le serveur (peut-être qu'en le fesant en mode single ça passera, ça t'epargnera le livecd, mais je n'ai pas testé, et de base, le disque ne doit pas être monté lors de cette opération, donc je doute)

                Bref, vu le volume, je te conseillerai plutot d'acheter un nouveau disque ;-)
                Et éventuellement, de refaire un nouveau système, dans lequel tu utilise une partition bien a part pour stocker tes données

                -1
            2. Merci pour tout

              Bon je crois que je suis coincé :(

              Je suis à bloc niveau disque, et donc vu que c'est la racine c'est clair que ça va être chaud. Mais vu que je récupère un existant je ne peux pas faire grand chose. L'architecture date de 5 ans !

              Bon je vais voir pour purger le contenu !! ;)
              0
              1. Pardon, réponse idiote.

                En fait, il y a sur le système de fichier ext3 un espace réservé aux inodes, qui à mon avis n’est pas comptabilisé là dedans. Pas sûr, le manuel de df ne dit rien à ce sujet ?
                -1
                1. Modérateur
                  Salut,

                  affiche aussi le résultat de (à faire en root)
                  fdisk -l
                  --
                  106485010510997108
                  -1