问题现象:
远程服务器上写入文件或者日志写满时,提示no space left on device(磁盘空间不足)
问题原因:
解决思路:
- 针对block满了的问题,通常的解决方法是删除较大文件以释放磁盘空间,但是删除数据要慎重;
- 针对inode用光的情况,是小文件占用较多的inode,通常会有定时任务创建占用一个inode的文件或目录,删除时要注意这些定时任务,谨防误删。
涉及linux命令:
df -h -->查看磁盘使用情况; df -i --> 查看inode使用情况;
删除文件成功:
硬链接数为0+进程调用数为0
解决过程演示:
1. 查看磁盘使用情况
[root@db-test ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 40G 40G 20M 100% /
2、删除日志文件(可以被删除的大文件)
1 )找到占用空间较大且无用的文件,一般是过期的log文件,进入存放log的目录下,查找哪个文件夹占用空间最大
du -h --max-depth=1
2)进入最大的文件夹,查找最大的文件
ls -lhS
[root@db-test ~]# cd /var/log
[root@db-test log]# du -h --max-depth=1
17M ./sa
17M ./audit
44K ./tuned
0 ./chrony
2.1M ./anaconda
0 ./rhsm
0 ./ntpstats
69M ./jcloud
8.8G .
[root@db-test log]# ls -lhS
total 8.7G
-rw-r--r-- 1 root root 8.6G May 7 16:15 messages
-rw-rw-rw- 1 root root 11M May 3 11:43 AgentMonitor.log.1
-rw-rw-rw- 1 root root 11M Apr 30 05:14 CloudAgent.log.1
3)删除最大的文件
rm -rf /var/log/messages
4)查看空间是否被释放
df -h
注:当使用rm删除被进程打开的大文件时,rm执行后仅仅是删除了文件,而对应的文件句柄没被程序关闭,则会导致linux内核无法回收被占用的磁盘空间
3、查看文件是否依然被进程调用
lsof |grep delete
若存在调用关系,重启对应进程,比如日志服务或者关闭进程
/etc/init.d/rsyslog restart
kill -9 31871
4、再次查看磁盘使用情况
[root@db-test /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 40G 2.7G 38G 7% /
devtmpfs 1.9G 0 1.9G 0% /dev
linux操作磁盘命令
磁盘分区:fdisk
磁盘信息:df、du
-
df 命令
功能: 检查文件系统的磁盘空间占用情况
语法: df [-a/-k/-h/-T]- -a 显示所有文件系统的磁盘使用情况,包括0块(block)的文件系统,/proc文件系统;
- -k 以k字节为单位显示;
- -h 以可读性较好的方式显示;
- -T 显示文件系统类型。
常用: df -ah; df -h
-
du 命令
功能: 统计目录(或文件)所占磁盘空间的大小
语法: du [-s/-k/-h/-T]- -s 对每个Names参数只给出占用的数据块总数;
- -a 递归地显示指定目录中各文件及子孙目录中各文件占用的数据块数。若既不指定-s,也不指定-a,则只显示Names中的每一个目录及其中的各子目录所占的磁盘块数;
- -b 以字节为单位列出磁盘空间使用情况(系统缺省以k字节为单位);
- -k 以1024字节为单位列出磁盘空间使用情况;
- -c 最后再加上一个总计(系统缺省设置);
- -l 计算所有的文件大小,对硬链接文件,则计算多次。
常用: du -sh /etc;du -h /etc
磁盘加载:mount、unmount
1、磁盘
mount /dev/floppy /media/floppy
umount /dev/floppy
2、光盘
mount /dev/cdrom /media/cdrom
umount /dev/cdrom
3、USB
fdisk -l /dev/sda (USB设备名,不同机器上显示可能不一样)
mkdir /mnt/usb
mount -t vfat /dev/sda2 /mnt/usb
ls /mnt/usb
umount /dev/sda2
转载:https://blog.csdn.net/ccccsy99/article/details/105976835
查看评论