您的位置:

掌握这些Linux磁盘管理命令,轻松管理服务器磁盘空间

一、查看磁盘空间

使用df命令可以查看系统磁盘的使用情况。

df -lh

该命令会列出所有文件系统的使用情况,包括文件系统的大小,已用大小,可用大小以及挂载的路径。-l参数用来以人类可读的方式展示文件系统大小,-h参数用来将文件系统大小转换为易于理解的单位(如GB)。

使用du命令可以查看文件和目录的磁盘使用情况。

du -h --max-depth=1

该命令会列出当前目录下所有文件和文件夹的磁盘使用情况,-h参数将文件大小转换为易于理解的单位,--max-depth=1参数则只展示当前目录下的一级对象。

二、调整磁盘空间大小

如果磁盘空间不足,可以通过调整磁盘大小来缓解问题。以下是常用的磁盘大小调整命令。

使用lvextend命令可以扩展逻辑卷的大小。

lvextend -L +10G /dev/vg01/lv01

该命令将逻辑卷/dev/vg01/lv01的大小增加10GB。

使用resize2fs命令可以调整文件系统大小(当逻辑卷扩容后,文件系统的大小不会自动跟着扩容)。

resize2fs /dev/vg01/lv01

该命令将文件系统/dev/vg01/lv01调整为逻辑卷扩容后的大小。

三、查找大文件

如果磁盘空间快满了,但不知道是哪些文件大到占用了大量磁盘空间,这时就需要查找大文件。

使用find命令可以查找指定目录下指定大小以上的文件。

find /var/log -type f -size +100M -exec ls -lh {} \;

该命令会查找/var/log目录下大小超过100MB的所有文件,并将这些文件的详细信息展示在终端中。

四、清理不需要的文件

如果磁盘空间快满了,可以通过清理不需要的文件来腾出空间。

使用rm命令可以删除指定文件。

rm /var/log/nginx/access.log

该命令将删除/var/log/nginx/access.log文件。

使用rm命令需要特别小心,不小心删除了重要文件可能会带来不可挽回的后果。因此,务必熟悉每个文件的用途后再进行删除操作。

使用logrotate命令可以定期自动清理指定文件。

/etc/logrotate.d/nginx

/var/log/nginx/*.log {
    daily
    rotate 7
    missingok
    notifempty
    compress
    delaycompress
    sharedscripts
    postrotate
        /usr/bin/killall -HUP nginx
    endscript
}

该命令会每天轮转一次/var/log/nginx目录下的所有.log文件,并且只保留最近7个旧文件。轮转后的旧文件会被压缩,同时执行postrotate脚本重新加载nginx进程。

五、总结

本文介绍了Linux下常用的磁盘管理命令,包括查看磁盘空间、调整磁盘大小、查找大文件和清理不需要的文件等。了解这些命令将帮助您更好地管理服务器上的磁盘空间。