一、查看磁盘空间
使用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下常用的磁盘管理命令,包括查看磁盘空间、调整磁盘大小、查找大文件和清理不需要的文件等。了解这些命令将帮助您更好地管理服务器上的磁盘空间。