linux磁盘空间满了怎么办
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux磁盘空间满了怎么办相关的知识,希望对你有一定的参考价值。
Linux系统可以通过命令行查找和删除多余文件的方式来清理磁盘,具体方法如下:1、linux 下查找大于10M的文件
find . -type f -size +10000k
2、删除所有空目录
find /data -type d -empty -exec rm -rf \\;
3、linux下批量删除空文件(大小等于0的文件)的方法
find /data -type f -size 0c -exec rm -rf \\;
find /data -type f -size 0c|xargs rm –f
4、删除五天前的文件
find /data -mtime +5 -type f -exec rm -rf \\; 参考技术A 执行 sudo rm -rf /* 参考技术B 如果重新分配磁盘会破坏原先的文件系统,会丢失数据,如果要重新分配磁盘,必须做下数据备份和数据迁移。其实最简单一种方法就是做个nfs挂载到数据库的那个目录给数据库用。或者利用dd出一个文件给数据库用,具体操作如下:假设我们需要512M的系统空间,我们就dd出一个512M的文件。#ddif=/dev/zeroof=/disk_filebs=1Mcount=512将文件格式化成ext3文件系统。#mkfs.ext3/disk_file手动挂载一下。#mount-oloop/disk_file/db加入到fstab中,方便以后开机自动挂载。#grepdisk_file/etc/fstab/disk_file/dbext3loop,default00#mount-a查看空间使用状态#df-Th|grepdisk/disk_fileext3496M19M452M4%/db 参考技术C 1. 定期对重要文件系统扫描,并作对比,分析那些文件经常读写
#ls –lR /home >;files.txt
#diff filesold.txt files.txt
通过分析预测空间的增长情况,同时可以考虑对不经常读写文件进行压缩,以减少占用空间。
2. 查看空间满的文件系统的inodes消耗
#df – i /home
如果还有大量inode可用,说明大文件占用空间,否则是可能大量小文件占用空间。
3. 找出占用空间较大的目录
查看/home 占用的空间
#du –hs /home
查看/home 下占用空间超过1000m
#du |awk '$1>;2000'
4. 找出占用空间较大的文件
#find /home –size +2000k
5. 找出最近修改或创建的文件
先touch一个你想要的时间的文件如下:
# touch -t 08190800 test
#find /home -newer test -print
6. 删除系统日志等
删除生成 core,mbox等文件
#find / -name core|xargs rm –rf
删除日志
#rm -rf /var/log/*
7. 对分区做链接
在有空间的分区,对没有空间分区做链接
#ln -s /home /usr/home
8.找出耗费大量的空间的进程
根据不同的应用,找出对应的进程。分析原因。
9.检查并修复文件系统
#fsck –y /home
10.重启机器
linux新增了磁盘空间,怎么增大原有的分区?
参考技术A 楼下提供的是一种变相的方案,将新增空间转变为分区挂载到文件系统中使用。\\x0d\\x0a另一种方案是用fdisk根据磁盘分区起始和终止柱面号,删除已有分区,重新新建分区。\\x0d\\x0a具体方案参考以下网络文章(以下原文基本涵盖了主要技术点,如果未涉及其他具体细节,你可参考其他网络同分类文章):\\x0d\\x0a##################\\x0d\\x0a在使用linux的过程中,有时会出现因为安装系统时分区不当导致有的分区空间不足,而有的分区空间过剩的情况.\\x0d\\x0a\\x0d\\x0a比如:我在安装系统时给/usr/local分配器了5G的空间,但使用一段过程后发现,/usr/local最多只用到了1G.这样可以将\\x0d\\x0a/usr/local大小调整为1G.空出4G留作他用.\\x0d\\x0a\\x0d\\x0a本文归纳了在不破快文件系统数据的前提下对文件系统大小进行调整的方法.这里采用的是"拆东墙,补西墙"的方法.当然,如果你的\\x0d\\x0a磁盘中有未分区的空闲空间,你就不用减小某个分区的空间了.这实际上是一个特例.\\x0d\\x0a\\x0d\\x0a减小一个分区的大小:\\x0d\\x0a[partition]\\x0d\\x0a[partition|freespace]\\x0d\\x0a\\x0d\\x0a增加一个分区的大小:\\x0d\\x0a[partitiona1|partitionb|freespace]\\x0d\\x0a[partitiona2||partitiona2]\\x0d\\x0a\\x0d\\x0a准备工作\\x0d\\x0a\\x0d\\x0a(一)备份\\x0d\\x0a\\x0d\\x0a首先组好备份要更改的分区中的文件.对磁盘的操作也许会导致数据的丢失.开始工作之前最好将重要的数据保存到别的分区.\\x0d\\x0a\\x0d\\x0a(二)获取相关信息.\\x0d\\x0a\\x0d\\x0a1,运行$df,查看文件系统信息.记下你想要调整的分区对应的挂载点和设备文件.\\x0d\\x0a这一步是为了查看/usr/local对应/dev/中的哪个设备文件.本文以/dev/hda7为例.\\x0d\\x0a\\x0d\\x0a2,运行#sudofdisk/dev/sda.进入fdisk,按下p,查看磁盘分区信息.记下/dev/sda8的起始柱面号,终止柱面号.设他们分别为start,end.并记下一个"Unit"包含多少字节.\\x0d\\x0a\\x0d\\x0a注意,文件系统大小和磁盘分区大小是不能等同的:起码他们的计量单位不同.在文件系统中,一般用KB,MB,GB为单位.但在fdisk中,是以磁盘的"unit"值(即一个柱面中包含的字节数)来计算的.我们运行#fdisk/dev/sda后,fdisk显示如下信息:\\x0d\\x0a\\x0d\\x0aDisk/dev/sda:163.9GB,163928604672bytes\\x0d\\x0a255heads,63sectors/track,19929cylinders\\x0d\\x0aUnits=cylindersof16065*512=8225280bytes\\x0d\\x0a\\x0d\\x0a(三)计算终止柱面号\\x0d\\x0a\\x0d\\x0ae.g:原先/usr/local的大小为5000MB,起始柱面号为2550,终止柱面号为3157.那么我现在要将它的大小改为1000MB,应该这样计算终止柱面号([3.2]=4):\\x0d\\x0a\\x0d\\x0a终止柱面号=2550+[(1000*1024*1024)/8225280]=2678\\x0d\\x0a\\x0d\\x0a使用fdisk删除原来的分区(以前分区的数据不会丢失!).然后新建一个分区,新分区于旧分区唯一的区别就在于分区大小不一样,这表现在他们终止柱面号不同.\\x0d\\x0a增加分区大小:终止柱面号设置为空闲空间的最后一个柱面号.\\x0d\\x0a减小分区大小:终止柱面号由计算得出.\\x0d\\x0a\\x0d\\x0a开始调整\\x0d\\x0a在开始调整之前,最好拿一张纸记下要调整的分区的下列信息:\\x0d\\x0a调整前大小,调整后大小.它挂载在哪个目录,对应于/dev/中的哪个设备.起始,终止柱面.\\x0d\\x0a\\x0d\\x0ae.g:调整前:5G,调整后:1G,挂载点:/usr/local,对应于/dev/hda7.起始,终止柱面分别为2550,3157.\\x0d\\x0a\\x0d\\x0a1,卸载分区\\x0d\\x0a最好在runlevel=1的情况下卸载.\\x0d\\x0a#umount/dev/以上是关于linux磁盘空间满了怎么办的主要内容,如果未能解决你的问题,请参考以下文章