如何修复错误 ata1.00:无法启用 AA(0x1 = error_mask

如何修复错误 ata1.00:无法启用 AA(0x1 = error_mask

我有一台联想 z 480,有一半的时间 ubuntu 无法启动,只显示此错误消息

Error ata1.00: failed to enable AA (error_mask = 0x1

有时屏幕变黑,光标闪烁。我尝试了几个发行版(kde 和 gnome),并且总是等于开始和结束时间,其他则不然。所有都使用 grub 2,唯一始终 100% 启动的发行版是 mageia,如果使用旧 grub 则不会,但不能使用你最喜欢的发行版非常烦人。

答案1

硬盘错误地通告了 ATA_FLAG_FPDMA_AA 标志(FPDMA FIS 自动激活位),但当该标志被激活时,它似乎不具备此功能。请参阅http://download.intel.com/support/chipsets/imsm/sb/sata2_ncq_overview.pdf

通常,最好的解决方法是使用 drivers/ata/libata-core.c 来修复特定驱动器系列的问题。一种解决方法可能是使用内核参数 libata.force=noncq 禁用 NCQ,但这会降低性能。

为此,编辑 /etc/default/grub

并改变:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

到:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash libata.force=noncq"

并运行:

sudo update-grub

答案2

错误 ata1.00:无法启用 AA(error_mask = 0x1)

这表明您的硬件存在问题,可能是电缆、硬盘或主板。修复它的唯一方法是诊断每个硬件。由于您说的是随机的,您可以先测试内存和硬盘。Ubuntu 包含 memtest86+ 来对内存进行启发式测试,对于硬盘,您应该对所有重要数据进行完整备份,然后更换它。

答案3

就我而言,这是由损坏的文件系统引起的。我已通过以下方式修复它:

  1. 启动到Recovery mode
  2. 我得到了确切的错误/dev/sda2 requires a manual fsck
  3. 我已经发出命令fsck -y /dev/sda2
  4. 命令完成后我收到成功消息。
  5. 发出命令reboot
  6. 启动到正常模式并且一切正常。

参考:

  1. 恢复模式
  2. 文件系统检查

答案4

我的问题也出在文件系统损坏上。我使用了systemd-fsck来修复它。

  1. 重新启动并拦截 GRUB 启动菜单。请参阅如何在启动时进入 GRUB 菜单?如果您需要这方面的帮助。
  2. 按下该e键来编辑启动选项。
  3. 找到以“linux”开头的行并添加fsck.mode=force到行尾。
  4. 按下F10继续启动
  5. 观察所有磁盘的 fsck 运行情况。

相关内容