是我的硬盘出现故障还是 Netbeans 的问题?

是我的硬盘出现故障还是 Netbeans 的问题?

这个问题我已经遇到 7-8 个月了,但现在它已经超出了所有限制。问题是这样的:我正在使用 netbeans 8.x 编写代码。突然间,所有项目文件都变成只读,netbeans 将开始显示 5-6 条消息,例如 .config 是只读的(我不记得具体消息了)。现在最糟糕的部分发生了。我的整个文件系统将变成只读。现在我必须重新启动。重新启动后,系统将向我显示 initramfs: 并要求我执行 fsck。我将执行 fsck,然后 ubuntu 将启动,一切都将恢复正常。然后有一天,这种事情又会发生。

然后终于有一天,在 fsck 之后,ubuntu 开始显示类似 READ FPDMA QUEUED、DRY 错误之类的消息,并且 ubuntu 无法启动。

我安装了全新的 ubuntu,然后一切都运行正常。然后我安装了 netbeans,然后又发生了同样的事情。所以我又在这里执行了 fsck,然后出现了同样的消息 READ FPDMA QUEUED。最后再次安装了 ubuntu,然后发布了这个问题。

我搜索了很多显示的消息,建议检查我的硬盘健康状况。首先,我使用了 ubuntu 中的磁盘实用程序。所以总体评估还不错(48 个扇区为差)。但后来我做了智能测试。测试失败了。

然后我用了smartctl。总体评价还行。

现在我很困惑,这个问题是出在 netbeans 上还是我的硬盘出了问题。我的笔记本电脑已经用了 5 年了,除了运行 netbeans 之外,我从来没有遇到过这个问题。

在此处输入图片描述

在此处输入图片描述

答案1

您收到 NCQ(本机命令队列)磁盘错误,并且磁盘上存在坏块。

文件系统检查

让我们首先检查您的文件系统...

  • 以“试用 Ubuntu”模式启动 Ubuntu Live DVD/USB
  • terminalCtrl+ Alt+打开窗口T
  • 类型sudo fdisk -l
  • 识别“Linux 文件系统”的 /dev/sdXX 设备名称
  • 输入sudo fsck -f /dev/sdXX,替换sdXX为您之前找到的数字
  • fsck如果有错误则重复命令
  • 类型reboot

全国资格考试

笔记:坏块阻止完成后,您可能能够撤消此操作。

本机命令队列 (NCQ) 是串行 ATA 协议的扩展,允许硬盘驱动器内部优化接收的读写命令的执行顺序。

编辑sudo -H gedit /etc/default/grub并更改以下行以包含此额外参数。然后执行sudo update-grub将更改写入磁盘。重新启动。监视器挂起,并观察/var/log/syslogdmesg是否继续出现错误消息。

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash libata.force=noncq"

坏块

注意:不要中止坏块扫描!

注意:不要对 SSD 造成坏块

注意:请先备份您的重要文件!

注意:这将花费很多小时

注意:您可能面临硬盘故障

在“尝试 Ubuntu”模式下启动 Ubuntu Live DVD/USB。

terminal...

sudo fdisk -l# 识别所有“Linux 文件系统”分区

sudo e2fsck -fcky /dev/sdXX# 只读测试

或者

sudo e2fsck -fccky /dev/sdXX# 非破坏性读写测试(受到推崇的)

-k 很重要,因为它会保存之前的坏块表,并将任何新的坏块添加到该表中。如果没有 -k,您将丢失所有之前的坏块信息。

-fccky 参数...

   -f    Force checking even if the file system seems clean.

   -c    This option causes e2fsck to use badblocks(8) program to do
         a read-only scan of the device in order to find any bad blocks.
         If any bad blocks are found, they are added to the bad block
         inode to prevent them from being allocated to a file or direc‐
         tory.  If this option is specified twice, then the bad block scan
         will be done using a non-destructive read-write test.

   -k    When combined with the -c option, any existing bad blocks in the
         bad blocks list are preserved, and any new bad blocks found by
         running badblocks(8) will be added to the existing bad blocks
         list.

   -y    Assume an answer of `yes' to all questions; allows e2fsck to be
         used non-interactively. This option may not be specified at the
         same time as the -n or -p options.

答案2

看起来您有 48 个坏扇区。坏扇区很多。仅将驱动器用于非重要数据。

如果驱动器有 1 或 2 个坏扇区,这不是问题,但如果有更多坏扇区,我个人会更换它,以减少担心。

密切关注。如果坏扇区数量在短时间内增加,请更换它。如果无法更换,请将其保留用于不重要的数据。无论如何,您现在应该备份数据。

如果在保修期内,他们会为您更换驱动器。

希望这对任何人都有帮助!:)

相关内容