如何确认 dd 不会删除 e2fsck 创建的坏块列表?

如何确认 dd 不会删除 e2fsck 创建的坏块列表?

如何确认 dddoes Not擦除由 e2fsck 创建的坏块列表?

一个旧的 1500 GB HDD(硬盘驱动器),没有数据,运行此命令
大约需要(1932 分钟):33 hours

time sudo e2fsck -c -c -k -C 0 /dev/sda1

输出

e2fsck 1.46.5 (30-Dec-2021) 
Checking for bad blocks (non-destructive read-write test) 
Testing with random pattern: done                                                  
_1500G_GEXT4: Updating bad block inode. 
Pass 1: Checking inodes, blocks, and sizes 
Pass 2: Checking directory structure                                            
Pass 3: Checking directory connectivity 
Pass 4: Checking reference counts 
Pass 5: Checking group summary information                                      
                                                                               
_1500G_GEXT4: ***** FILE SYSTEM WAS MODIFIED ***** 
_1500G_GEXT4: 11/91578368 files (0.0% non-contiguous), 6031026/366284288 blocks 

real    1932m4.759s 
user    0m2.296s 
sys     0m7.618s

time sudo e2fsck -c -c -k -C 0 /dev/sda1

-c使用 badblocks(8) 程序进行只读扫描

第二步,-c进行非破坏性的写入+读取测试,
Linux 中的外部硬盘坏道恢复/标记实用程序

-k与 -c 选项结合使用时,坏块列表中任何现有的坏块都将被保留,并且通过运行 badblocks(8) 发现的任何新坏块都将添加到现有的坏块列表中。

-C fd
-C 0可以监控文件系统检查的进度

man e2fsck

换句话说:
执行 dd 命令会擦除需要33 hours实现的目标吗?
dd 命令会擦除坏块列表吗?
如何确认 dddoes Not擦除了 e2fsck 创建的坏块列表?

dd 命令表示以下一个或两个:
time sudo dd if=/dev/urandom of=/dev/sd_ bs=64K status=progress
time sudo dd if=/dev/zero of=/dev/sd_ bs=64K status=progress

细节:

lsblk -ae7 -oType,name,path,size,fsuse%,tran,pttype,fstype,label,partlabel,mountpoints |grep 'sda\|MOUNT'   

TYPE NAME        PATH             SIZE FSUSE% TRAN   PTTYPE FSTYPE LABEL        PARTLABEL            MOUNTPOINTS  
disk sda         /dev/sda         1.4T        sata   gpt                                              
part └─sda1      /dev/sda1        1.4T               gpt    ext4   _1500G_GEXT4 PART_1   

neofetch --stdout |grep 'OS:'
操作系统:Kubuntu 22.04.2 LTS x86_64

e2fsck -V
e2fsck 1.46.5(2021 年 12 月 30 日)
使用 EXT2FS 库版本 1.46.5,2021 年 12 月 30 日

--

答案1

您想要实现什么?--实现硬盘无错误。

这可以让磁盘将错误重新分配给备用扇区。

重新分配扇区并不能修复损坏的磁盘。重新分配过程会掩盖损坏的扇区。

你所做的只是在文件系统层面上进行装饰。在对磁盘进行分区和格式化时,它看起来会很干净,但在固件层面上,你可能会遇到很大的混乱。

计算机速度变慢或挂起。磁盘发出咔嗒声。

咔嗒声表示硬件有问题。所有症状都表明您的磁盘已损坏,请更换它。

运行“smartmontools”来编译 SMART 信息很可能会提供一些额外的参数来不再使用该磁盘。

答案2

如果磁盘出现坏块,则应更换该磁盘。问题很快就会出现。

但是,解决坏块问题的方法是使用 dd 命令进入该磁盘上的文件系统中的文件,而不是整个磁盘。文件系统会知道坏块在哪里,并会去到它们旁边。

相关内容