AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 703543
Accepted
Damn Vegetables
Damn Vegetables
Asked: 2022-05-24 02:46:33 +0800 CST2022-05-24 02:46:33 +0800 CST 2022-05-24 02:46:33 +0800 CST

手动告诉 EXT4 坏扇区?

  • 772

该驱动器当前位于 NTFS 中。运行chkdsk几个小时后,我找到了坏扇区的位置(下图)。我想在 EXT4 中重新格式化磁盘。我听说 EXT4 有某种元数据来标记坏扇区,并且有一个实用程序,但我不想再运行几个小时的测试。我可以直接告诉 EXT4 我已经找到的坏扇区位置chkdsk吗?

Stage 4: Looking for bad clusters in user file data ...
Read failure with status 0xc000009c at offset 0x280036f1000 for 0x10000 bytes.
Read failure with status 0xc000009c at offset 0x280036fb000 for 0x1000 bytes.


Read failure with status 0xc000009c at offset 0x280cb987000 for 0x10000 bytes.
Read failure with status 0xc000009c at offset 0x280cb993000 for 0x1000 bytes.


Read failure with status 0xc000009c at offset 0x280dbdc2000 for 0x10000 bytes.
Read failure with status 0xc000009c at offset 0x280dbdc4000 for 0x1000 bytes.


Read failure with status 0xc000009c at offset 0x2835d5bb000 for 0x10000 bytes.
Read failure with status 0xc000009c at offset 0x2835d5c0000 for 0x1000 bytes.
filesystems hard-disk
  • 3 3 个回答
  • 203 Views

3 个回答

  • Voted
  1. Marcus Müller
    2022-05-24T02:56:10+08:002022-05-24T02:56:10+08:00

    这很严重:备份您的数据并丢弃该硬盘。在您可以进行备份之前,请不要使用驱动器;断开它。

    在制作文件系统时,有一种直接的方法可以告诉 ext4 哪些扇区是坏的,在制作文件系统时使用-L。我不会在这里更详细地描述它,因为这确实是一个糟糕的想法;不过,您应该随意自己研究它。

    发现这些错误需要几个小时的事实意味着您的硬盘驱动器在比这些已经出现故障的位置更多的地方进行常规操作需要很长时间。这意味着有更多的地方即将失败。这个驱动器正在丢失数据,它不是

    这些地方坏了,驱动器的其余部分还可以

    它是

    这个驱动器坏了,但现在大部分都经过努力,仍然可读;它看起来是正确的,但没有办法知道它是否正确。可访问性可能随时变得更糟。

    使用 EXT4 格式化分区并在其上复制任何新数据会给设备带来更大的压力。更多的事情会失败。

    这个驱动就完成了。它不再适合存放。对不起。把它扔掉。当数据在未知位置出现错误或在您需要时可能无法读取时,实际上没有有用的数据。

    • 5
  2. user10489
    2022-05-24T03:37:59+08:002022-05-24T03:37:59+08:00

    大约 20 到 25 年前,在磁盘具有内部缺陷管理之前,文件系统在格式化和驱动器老化时进行块级缺陷管理并将块添加到坏块列表是有意义的。

    现代磁盘都具有 SMART 缺陷管理(或 NVME 等效功能)并自动将坏块替换为好块。通常写入坏块足以触发它通过替换一个好块来修复。

    如果您的磁盘有大量坏块,这意味着它已经用完了替换块。考虑到它开始时有大量替换块,这可能意味着磁盘出现机械故障(可能有碎片漂浮在内部造成更多损坏),并且可能接近完全灾难性故障。

    smartctl -a您可以使用设备上的命令来验证这一点。在顶部附近,它应该指示驱动器运行状况,在底部附近,它包含一个块错误列表。如果它表明磁盘出现故障或您看到块错误报告,则可能是磁盘出现故障。如果它说没问题,您应该运行测试(-t long或者-t short)并在等待(通常短时间为 2 分钟,长时间为数小时)后,再次检查并查找测试结果。

    如果驱动器通过了长时间的测试,它可能仍然可以使用,并且可能您只需要触发一些对坏扇区的写入以尝试修复它们。

    • 3
  3. Best Answer
    LustreOne
    2022-05-24T12:23:13+08:002022-05-24T12:23:13+08:00

    您可以将“badblocks”命令与 e2fsck 一起使用来指定文件系统的坏磁盘块列表。

    正如其他人所评论的那样,这并不好,因为这意味着您的磁盘正处于越来越多的故障边缘。此外,因为这通常在今天的驱动器级别处理,所以这些坏块代码现在很少使用。

    • 1

相关问题

  • 如何提前知道 .zip 内部是否有父目录

  • Virtualbox 动态分配磁盘 *.vdi 不断增长

  • 以 100% 的利用率捕捉 /dev/loop -- 没有可用空间

  • du/df 和 ls 报告不同的磁盘使用情况

  • Linux 内核开发人员如何处理数百万行代码的工作?他们是一种方法吗?[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve