Checking disk usage on a Linux server is essential to ensure that your system has sufficient storage space for smooth operation. Here’s a step-by-step guide on how to monitor disk usage effectively:
1. Using the df
command
The df
(disk free) command provides a summary of the disk space usage on your server.
$ df -hFilesystem Size Used Avail Use% Mounted on /dev/sda1 50G 15G 30G 32% / tmpfs 1.9G 1.3M 1.9G 1% /dev/shm /dev/sdb1 100G 70G 30G 70% /data
- Filesystem: The name of the disk or partition.
- Size: Total space available on the disk.
- Used: Space currently used on the disk.
- Avail: Space available for use.
- Use%: Percentage of disk used.
- Mounted on: Directory where the filesystem is mounted.
2. Using the du
command
The du
(disk usage) command gives you detailed information about disk usage by individual directories and files.
$ du -sh /path/to/directory1.5G /path/to/directory
The -s
option provides a summary, and the -h
option makes the output human-readable.
To check the disk usage of all directories within a specified path:
$ du -h /path/to/directory1.5G /path/to/directory 1.0G /path/to/directory/subdirectory1 500M /path/to/directory/subdirectory2
3. Using lsblk
for detailed information
The lsblk
command lists all block devices, including partitions and their mount points.
$ lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 50G 0 disk └─sda1 8:1 0 50G 0 part / sdb 8:16 0 100G 0 disk └─sdb1 8:17 0 100G 0 part /data
This will provide detailed information on the available storage devices, their sizes, and mount points.
4. Using ncdu
for an interactive approach
ncdu
is a disk usage analyzer that provides an interactive interface to explore disk usage in a directory.
$ ncdu /path/to/directory--- /path/to/directory ----------------------------------------- 1.5 GiB [##########] /subdirectory1 500.0 MiB [### ] /subdirectory2 1.0 GiB [#### ] /subdirectory3 2.0 GiB [##########] .
Install ncdu
if it’s not already available:
$ sudo apt install ncdu # For Debian/Ubuntu-based systems $ sudo yum install ncdu # For CentOS/Red Hat-based systems