何小豆儿在此 发表于 2024-6-9 20:31:06

【Linux】详细分析/dev/loop的基本知识 | 空间满了的办理方法

媒介

服务器不停down机,翻找日志文件不停找不到缘由,终极发现是挂载的内存满了,那本身这个文件就什么用呢?
1. 基本知识

/dev/loop是一种特殊的装备文件,用于将文件系统映射到一个文件上,形成一个假造的块装备。通常情况下,它用于挂载镜像文件或压缩的文件系统,例如ISO镜像、磁盘映像或squashfs文件系统
/dev/loop的作用是允许用户将文件系统挂载为一个磁盘分区,这样用户就可以像操作硬盘分区一样来访问其中的文件


[*] 创建和管理 loop 装备:在 Linux 中,可以使用 losetup 下令来创建和管理 loop 装备,通过 losetup 下令,可以将文件与 loop 装备举行绑定或排除绑定,并管理 loop 装备的属性。
[*] 挂载和卸载文件系统:一旦文件与 loop 装备绑定,就可以像挂载其他块装备一样,使用 mount 下令将文件系统挂载到指定的挂载点上,也可以使用 umount 下令将文件系统卸载
[*] 使用 loop 装备创建假造磁盘:通过 loop 装备,可以轻松地创建假造磁盘。用户可以创建一个空文件,然后将其与 loop 装备绑定,并在其上创建文件系统,从而形成一个假造磁盘,用于存储数据。
[*] 挂载镜像文件:将镜像文件挂载到文件系统中。例如,可以将 ISO 镜像文件挂载到 /dev/loop 上,以便浏览其内容或实行其中的程序
[*] 容器技术:创建容器的根文件系统,Docker 等容器平台会使用 loop 装备来挂载容器镜像。
2. 内存满了

一共有两种方案,要么清空要么扩增
2.1 清空

df -h查看,发现/dev/loop系列的都满了
https://img-blog.csdnimg.cn/direct/228bb0b424bc4d23af4d8ad252eb6d2e.png
自动删除不再必要的 Snap 软件包以及它们的设置文件,并彻底扫除 Snap 守护程序 snapd :sudo apt autoremove --purge snapd
https://img-blog.csdnimg.cn/direct/5a5c9b0fd2b744949ff5a71add9b0266.png
再次查看:
https://img-blog.csdnimg.cn/direct/26a973ad33e043bc882113bca81fcead.png
2.2 扩增

1. 查看挂载文件:losetup下令来查看loop装备挂载的哪个文件,相应举行扩增
2. 扩增文件:dd if=/dev/loop1 bs=4M count=1024 >> /xx/yy/xx.img,( 4M * 1024 = 4096M )
3. 更新 loop 装备: losetup -c /dev/loop1
4. 更新 loop 装备: losetup -c /dev/loop1
3. 彩蛋

对于从无到有的新增,详细如下:
1. 检查可用装备:losetup -a
2. 创建新的loop装备:sudo mknod /dev/loop5 b 7 5。(b表示该装备是一个块装备,7表示主装备号,5表示次装备号。主装备号7用于loop装备,而次装备号表示详细的loop装备编号)
3. 将文件与新的loop装备关联:sudo losetup /dev/loop5 /path/to/image.img
4. 挂载关联的文件系统:sudo mount /dev/loop5 /mnt
假如后续必要使用新的挂载装备,详细如下:
sudo umount /mnt
sudo losetup -d /dev/loop5
sudo rm /dev/loop5

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 【Linux】详细分析/dev/loop的基本知识 | 空间满了的办理方法