稀里糊涂的修好了。。
问题出现在测试硬盘iO的时候运行了 time dd if=/dev/zero of=/dev/sda1 bs=1M count=10000复制代码
然后df -h就直接
运行fsck -v /dev/sda1提示 fsck -v /dev/sda1 fsck from util-linux 2.36.1 e2fsck 1.46.5 (30-Dec-2021) ext2fs_open2: Bad magic number in super-block fsck.ext2: Superblock invalid, trying backup blocks… fsck.ext2: Bad magic number in super-block while trying to open /dev/sda1 The superblock could not be read or does not describe a valid ext2/ext3/ext4 filesystem. If the device is valid and it really contains an ext2/ext3/ext4 filesystem (and not swap or ufs or something else), then the superblock is corrupt, and you might try running e2fsck with an alternate superblock: e2fsck -b 8193 or e2fsck -b 32768 复制代码
然后找谷歌找到了一个解决方法 mke2fs -n /dev/sda1复制代码
会出来一大堆数字
然后把数字拿到里面一个一个试,直到找到修复的那个超级块 e2fsck -b 数字 device复制代码
修复完成后,然后去 /home/lost+found复制代码
找.qcow2的文件
用cp命令复制到 /home/images/小鸡ID复制代码
但这块有个蛋疼的问题。这个.qcow2是2T,复制超慢。。复制过来后,母鸡显示home目录占用70%+。。。
以前记得是动态的,本来打算忽略这个问题,结果手贱又把开头的dd重新运行了一遍。。。。
然后又崩了,但这次fsck -v /dev/sda1可以用了。取消挂载后用fsck -v /dev/sda1修复,
然后去宝塔里面通过文件管理器把lost+found里的.qcow2文件剪贴到images下,一秒钟就剪贴好了。。。恢复正常了。。目录占用也不再以2T为基准了。。。
反正稀里糊涂的修好了
广东省网友说:dd过的qcow2镜像占完空间
你可以新建一个qcow2 哪怕100G的镜像
然后dd一个很小的系统进去
然后看实际大小 du -h 100G.qcow2
山东省网友说:不太了解原理。。
为啥复制lost+found的qcow2,占用存储70%(也能正常用)
但是剪切过来就正常呢。。(剪切过来后,就以真实占用为准)
辽宁省网友说:据我所知dd命令 是dd完整块硬盘的
而不是镜像100m 它就dd 100m 多出部分空
esxi也是一样的 dd过都占用硬盘全部大小
吉林省网友说:你需要了解一下稀疏文件和文件系统实现。
看完这俩的资料你应该还能顺便了解下”文件空洞”。
你现在用的文件系统都是经过层层优化的,能直接复用的玩意没必要重复储存。
浙江省网友说:比方说吧 我新建了个虚拟机分配500G虚拟硬盘稀疏 实际大小10m左右 从iso安装win7sp1 安装完 显示实际大小 30g dd个系统 显示硬盘实际大小500g了 虚拟机硬盘是稀疏的thin 大佬能解答一下吗?我想dd完系统 按照实际大小显示