Fatmawati Achmad Zaenuri / Shutterstock.com
le df
et du
Les commandes rapportent l’utilisation de l’espace disque à partir du shell Bash utilisé sur Linux, macOS et de nombreux autres systèmes d’exploitation de type Unix. Ces commandes vous permettent d’identifier facilement ce qui utilise le stockage de votre système.
Affichage de l’espace disque total, disponible et utilisé
Bash contient deux commandes utiles liées à l’espace disque. Pour connaître l’espace disque disponible et utilisé, utilisez df
(systèmes de fichiers de disque, parfois appelés disque libre). Pour découvrir ce qui occupe l’espace disque utilisé, utilisez du
(utilisation du disque).
Taper df
et appuyez sur Entrée dans une fenêtre de terminal Bash pour commencer. Vous verrez beaucoup de résultats similaires à la capture d’écran ci-dessous. Utilisant df
sans aucune option affichera l’espace disponible et utilisé pour tous les systèmes de fichiers montés. À première vue, cela peut sembler impénétrable, mais c’est assez facile à comprendre.
df
Chaque ligne de l’affichage est composée de six colonnes.
- Système de fichiers: Le nom de ce système de fichiers.
- Blocs 1K: Le nombre de blocs de 1K disponibles sur ce système de fichiers.
- Utilisé: Le nombre de blocs de 1K qui ont été utilisés sur ce système de fichiers.
- Disponible: Nombre de blocs de 1 Ko inutilisés sur ce système de fichiers.
- Utiliser%: L’espace utilisé dans ce système de fichiers est exprimé en pourcentage.
- Déposer: Le nom du système de fichiers, s’il est spécifié sur la ligne de commande.
- Monté sur: Le point de montage du système de fichiers.
Vous pouvez remplacer le nombre de blocs de 1K par une sortie plus utile en utilisant le -B
(taille de bloc) option. Pour utiliser cette option, tapez df,
un espace, puis -B
et une lettre de la liste de K, M, G, T, P, E, Z ou Y. Ces lettres représentent les valeurs kilo, méga, giga, tera, peta, exa, zeta et yotta du multiple de 1024 échelle .
Par exemple, pour afficher les chiffres d’utilisation du disque en mégaoctets, utilisez la commande suivante. Notez qu’il n’y a pas d’espace entre le B et M.
df -BM
le -h
(lisible par l’homme) indique df
pour utiliser l’unité la plus appropriée pour la taille de chaque système de fichiers. Dans la sortie suivante, notez qu’il existe des systèmes de fichiers avec des tailles de gigaoctets, mégaoctets et même kilo-octets.
df -h
Si vous avez besoin de voir les informations représentées en nombre d’inœuds, utilisez le -i
(inodes) option. Un inode est une structure de données utilisée par les systèmes de fichiers Linux pour décrire des fichiers et stocker des métadonnées à leur sujet. Sous Linux, les inodes contiennent des données telles que le nom, la date de modification, la position sur le disque dur, etc. pour chaque fichier et répertoire. Cela ne va pas être utile à la majorité des gens, mais les administrateurs système doivent parfois se référer à ce type d’informations.
df -i
Sauf si on vous dit de ne pas le faire, df
fournira des informations sur tous les systèmes de fichiers montés. Cela peut conduire à un affichage encombré avec beaucoup de sortie. Par exemple, le /dev/loop
les entrées dans les listes sont des pseudo systèmes de fichiers qui permettent à un fichier d’être monté comme s’il s’agissait d’une partition. Si vous utilisez le nouvel Ubuntu snap
méthode d’installation des applications, vous pouvez en acquérir beaucoup. L’espace disponible sur ceux-ci sera toujours de 0 car ils ne sont pas vraiment un système de fichiers, nous n’avons donc pas besoin de les voir.
On peut dire df
pour exclure les systèmes de fichiers d’un type spécifique. Pour ce faire, nous devons savoir quel type de système de fichiers nous souhaitons exclure. le -T
(print-type) nous donnera cette information. Il instruit df
pour inclure le type de système de fichiers dans la sortie.
df -T
le /dev/loop
les entrées sont toutes squashfs
systèmes de fichiers. Nous pouvons les exclure avec la commande suivante:
df -x squashfs
Cela nous donne un résultat plus gérable. Pour obtenir un total, nous pouvons ajouter le --total
option.
df -x squashfs --total
Nous pouvons demander df
pour n’inclure que les systèmes de fichiers d’un type particulier, en utilisant le -t
(type) option.
df -t ext4
Si nous voulons voir les tailles d’un ensemble de systèmes de fichiers, nous pouvons les spécifier par leur nom. Les noms de lecteurs sous Linux sont alphabétiques. Le premier lecteur est appelé /dev/sda
, le deuxième lecteur est /dev/sdb
, etc. Les partitions sont numérotées. Donc /dev/sda1
est la première partition sur le disque /dev/sda
. Nous disons df
pour renvoyer des informations sur un système de fichiers particulier en passant le nom du système de fichiers comme paramètre de commande. Regardons la première partition du premier disque dur.
df /dev/sda1
Notez que vous pouvez utiliser des caractères génériques dans le nom du système de fichiers, où *
représente n’importe quel jeu de caractères et ?
représente n’importe quel caractère unique. Donc, pour regarder toutes les partitions sur le premier lecteur, nous pourrions utiliser:
df /dev/sda*
Nous pouvons demander df
pour faire un rapport sur un ensemble de systèmes de fichiers nommés. Il nous demandons les tailles de la /dev
et /run
systèmes de fichiers, et nous aimerions un total.
df -h --total /dev /run
Pour personnaliser davantage l’affichage, nous pouvons dire df
quelles colonnes inclure. Pour ce faire, utilisez le --output
et fournissez une liste séparée par des virgules des noms de colonne requis. Assurez-vous de ne pas inclure d’espaces dans la liste séparée par des virgules.
- la source: Le nom du système de fichiers.
- fstype: Le type du système de fichiers.
- itotal: La taille du système de fichiers en inodes.
- j’ai utilisé: L’espace utilisé sur le système de fichiers dans les inodes.
- iavail: L’espace disponible sur le système de fichiers en inodes.
- ipcent: Le pourcentage d’espace utilisé sur le système de fichiers en inœuds, en pourcentage.
- Taille: La taille du système de fichiers, par défaut en blocs de 1K.
- utilisé: L’espace utilisé sur le système de fichiers, par défaut en blocs de 1K.
- profiter: L’espace disponible sur le système de fichiers, par défaut en blocs de 1K.
- pcent: Le pourcentage d’espace utilisé sur le système de fichiers en inodes, par défaut en blocs de 1K.
- déposer: Le nom du système de fichiers s’il est spécifié sur la ligne de commande.
- cible: Le point de montage du système de fichiers.
Demandons df
pour signaler la première partition sur le premier lecteur, avec des nombres lisibles par l’homme, et avec les colonnes source, fstype, size, used, available et pcent:
df -h /dev/sda1 --output=source,fstype,size,used,avail,pcent
Les commandes longues sont des candidats parfaits pour être transformées en alias. Nous pouvons créer un alias dfc
(pour df custom
) en tapant ce qui suit et en appuyant sur Entrée:
alias dfc="df -h /dev/sda1 --output=source,fstype,size,used,avail,pcent"
Dactylographie dfc
et appuyer sur Entrée aura le même effet que la saisie de la commande longue. Pour rendre cet alias permanent, ajoutez-le à votre .
ou alors bashrc
.bash_aliases
déposer.
Nous avons cherché des moyens d’affiner la sortie de df
afin que les informations qu’il affiche correspondent à vos besoins. Si vous voulez adopter l’approche inverse et avoir df
renvoie toutes les informations qu’il peut éventuellement utiliser le -a
(tous) et l’option --output
option comme indiqué ci-dessous. le -a
(tout) option demande df
pour inclure tous les systèmes de fichiers, et en utilisant le --output
option une liste de colonnes séparées par des virgules provoque df
pour inclure chaque colonne.
df -a --output
Tuyauterie de la sortie de df
à travers le less
est un moyen pratique de passer en revue la grande quantité de sortie que cela peut produire.
df -a --output | less
Découvrir ce qui occupe l’espace disque utilisé
Faisons une enquête et découvrons ce qui prend de la place sur ce PC. Nous allons commencer par l’un de nos df
commandes.
df -h -t ext4
Il y a 78% d’espace disque utilisé sur la première partition du premier disque dur. Nous pouvons utiliser le du
pour afficher les dossiers contenant le plus de données. Délivrance du du
La commande sans option affichera une liste de tous les répertoires et sous-répertoires sous le répertoire le du
a été émise dans. Si vous faites cela à partir de votre dossier personnel, la liste sera très longue.
du
Le format de sortie est très simple. Chaque ligne indique la taille et le nom d’un répertoire. Par défaut, la taille est affichée en blocs de 1K. Forcer du
pour utiliser une taille de bloc différente, utilisez le -B
(taille de bloc) option. Pour utiliser ce type d’option du
, un espace, puis -B
et une lettre de la liste de K, M, G, T, P, E, Z et Y, comme nous l’avons fait ci-dessus pour df
. Pour utiliser des blocs de 1M, utilisez cette commande:
du -BM
Juste comme df
, du
a une option lisible par l’homme, -h
, qui utilise une plage de tailles de bloc en fonction de la taille de chaque répertoire.
du -h
le -s
(résumer) donne un total pour chaque répertoire sans afficher les sous-répertoires dans chaque répertoire. La commande suivante demande du
pour renvoyer des informations au format résumé, en nombres lisibles par l’homme, pour tous les répertoires
du -h -s *
Sortie de la commande du avec les options -h -s * du
Le dossier Picture contient de loin le plus de données. Nous pouvons demander
du -sm Pictures/* | sort -nr
Sortie de la commande du avec l’option -sm Pictures / *! options de tri -nr df
En affinant les informations renvoyées par du
et
il est facile de savoir combien d’espace disque est utilisé et de découvrir ce qui occupe cet espace. Vous pouvez alors prendre une décision éclairée concernant le déplacement de certaines données vers un autre stockage, l’ajout d’un autre disque dur à votre ordinateur ou la suppression de données redondantes. Ces commandes ont de nombreuses options. Nous avons décrit les options les plus utiles ici, mais vous pouvez voir une liste complète des options pour le commande df et pour le du commande
dans les pages de manuel Linux.