admin管理员组文章数量:1567573
根目录空间不足的原因
1.1 inode已满
block虽然还有剩余,但inode已经用满,因此在创建新目录或文件时,系统提示磁盘空间不足,inode译成中文就是索引节点,每个存储设备(例如硬盘)或存储设备的分区被格式化为文件系统后,应该有两部份,一部份是inode,另一部份是 block,block是用来存储数据用的,而inode就是用来存储这些数据的信息,这些信息包括文件大小、属主、归属的用户组、读写权限等。inode为每个文件进行信息索引,所以就有了inode的数值。操作系统根据指令,能通过inode值最快的找到相对应的文件。
现象:
使用df -Th
有剩余空间但是无法继续使用
(查看inode占用命令:df -i
)
解决方法
删除无用的临时文件,释放inode
遍历寻找0字节的文件,并删除。
find / -type f -size 0 -exec rm {} \;
根目录下包括所有的目录,而有些目录是挂了盘的,这些目录不会占用根目录下的系统磁盘空间。
出现根目录空间不足的情况只要关注那些未挂盘的文件大小,使用du命令查看各个目录的大小(只显示一层目录)
1.2 大文件过多
使用du命令查看各个目录的大小 (只显示一层目录)
du -ah --max-depth=1 /
1.3 日志文件太多
Linux系统运行时会产生日志文件,可以讲日志文件远程备份,或者是拷贝到其它的硬盘
如果以上方法都不可以,可以使用软连接的方法,或者是对根目录扩容
解决方法
2.1 软连接
将占用空间大的目录复制到另一个磁盘上面,或者是nfs提供的存储上面
例如
一台服务器A(IP:20.0.0.105)上的/opt/nfs
的文件过大,可以在另一台服务器B(IP:20.0.0.104)上安装nfs共享存储,然后将挂载。在把里面的东西拷贝过去。
[root@serverb ~]# yum -y install nfs-utils rpcbind
[root@serverb ~]# vi /etc/exports
/opt 20.0.0.0/24(rw)
[root@serverb ~]# systemctl start nfs
[root@servera ~]# showmount -e 20.0.0.104
Export list for 20.0.0.104:
/opt 20.0.0.0/24
[root@servera ~]# mkdir centos
[root@servera ~]# mount 20.0.0.104:/opt /centos/
[root@servera ~]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
···········
20.0.0.104:/opt nfs4 39G 2.4G 36G 7% /centos
[root@servera ~]# cp -R /opt/nfs/* /centos/
[root@servera ~]# ln -s /centos/ /opt/nfs
2.2:根目录扩容
使用场景:设备的存储空间已占满,并且已经清理过了,而且其它硬盘均已满,服务器物理硬件支持添加硬盘
添加一块新硬盘
[root@localhost ~]# init 6 #硬盘很少有支持热插拔的,需要重启
连接断开
连接成功
[root@localhost ~]# fdisk -l
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘 /dev/sda:64.4 GB, 64424509440 字节,125829120 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0009ed77
设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 125829119 61864960 8e Linux LVM
磁盘 /dev/mapper/centos-root:41.1 GB, 41120956416 字节,80314368 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘 /dev/mapper/centos-home:20.1 GB, 20073938944 字节,39206912 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
[root@localhost ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0xf60c7ee0 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):
将使用默认值 41943039
分区 1 已设置为 Linux 类型,大小设为 20 GiB
命令(输入 m 获取帮助):t
已选择分区 1
Hex 代码(输入 L 列出所有代码):8e
已将分区“Linux”的类型更改为“Linux LVM”
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@localhost ~]# mkfs -t xfs /dev/sdb1
meta-data=/dev/sdb1 isize=512 agcount=4, agsize=1310656 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=5242624, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@localhost ~]# lvm
lvm> pvcreate /dev/sdb1
WARNING: xfs signature detected on /dev/sdb1 at offset 0. Wipe it? [y/n]: y
Wiping xfs signature on /dev/sdb1.
Physical volume "/dev/sdb1" successfully created.
lvm> vgdisplay
--- Volume group ---
VG Name centos
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 1
Act PV 1
VG Size <59.00 GiB
PE Size 4.00 MiB
Total PE 15103
Alloc PE / Size 15102 / 58.99 GiB
Free PE / Size 1 / 4.00 MiB
VG UUID Cnl1hp-dBeF-55rw-KU0p-co0L-FiSn-5Nrs2d
lvm> vgextend centos /dev/sdb1
Volume group "centos" successfully extended
lvm> vgdisplay
--- Volume group ---
VG Name centos
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 2
Act PV 2
VG Size 78.99 GiB
PE Size 4.00 MiB
Total PE 20222
Alloc PE / Size 15102 / 58.99 GiB
Free PE / Size 5120 / 20.00 GiB
VG UUID Cnl1hp-dBeF-55rw-KU0p-co0L-FiSn-5Nrs2d
lvm> lvextend -l +5120 /dev/mapper/centos-root
Size of logical volume centos/root changed from <38.30 GiB (9804 extents) to <58.30 GiB (14924 extents).
Logical volume centos/root successfully resized.
lvm> lvdisplay
--- Logical volume ---
LV Path /dev/centos/root
LV Name root
VG Name centos
LV UUID OeHFno-diSX-xWuQ-K8j6-tdpT-D0KE-YB3jxG
LV Write Access read/write
LV Creation host, time localhost, 2021-02-01 22:26:07 -0500
LV Status available
# open 1
LV Size <58.30 GiB
Current LE 14924
Segments 3
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
--- Logical volume ---
LV Path /dev/centos/home
LV Name home
VG Name centos
LV UUID ne6xL1-fepP-cE9h-WJzc-12Kw-FVzK-NNYU6i
LV Write Access read/write
LV Creation host, time localhost, 2021-02-01 22:26:07 -0500
LV Status available
# open 1
LV Size <18.70 GiB
Current LE 4786
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:2
--- Logical volume ---
LV Path /dev/centos/swap
LV Name swap
VG Name centos
LV UUID 7mtj59-3PN7-1UbZ-QiJa-He5b-hGTz-SCpicW
LV Write Access read/write
LV Creation host, time localhost, 2021-02-01 22:26:07 -0500
LV Status available
# open 2
LV Size 2.00 GiB
Current LE 512
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:1
lvm> exit
Exiting.
[root@localhost ~]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 39G 1.5G 37G 4% /
devtmpfs devtmpfs 898M 0 898M 0% /dev
tmpfs tmpfs 910M 0 910M 0% /dev/shm
tmpfs tmpfs 910M 9.6M 901M 2% /run
tmpfs tmpfs 910M 0 910M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 146M 869M 15% /boot
/dev/mapper/centos-home xfs 19G 33M 19G 1% /home
tmpfs tmpfs 182M 0 182M 0% /run/user/0
[root@localhost ~]# xfs_growfs /dev/mapper/centos-root
meta-data=/dev/mapper/centos-root isize=512 agcount=4, agsize=2509824 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=10039296, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=4902, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 10039296 to 15282176
[root@localhost ~]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 59G 1.5G 57G 3% /
devtmpfs devtmpfs 898M 0 898M 0% /dev
tmpfs tmpfs 910M 0 910M 0% /dev/shm
tmpfs tmpfs 910M 9.6M 901M 2% /run
tmpfs tmpfs 910M 0 910M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 146M 869M 15% /boot
/dev/mapper/centos-home xfs 19G 33M 19G 1% /home
tmpfs tmpfs 182M 0 182M 0% /run/user/0
[root@localhost ~]#
版权声明:本文标题:解决Linux根目录空间不足 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dianzi/1725681147a1036309.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论