linux 开启ahci_AHCI (简体中文)

翻译状态:本文是 AHCI 的翻译。上次翻译日期:2019-10-26。如果英文版本有所更改,则您可以帮助同步翻译。

AHCI, Advanced Host Controller Interface 的缩写,意思是 高级主机控制器接口, 这是一种SATA设备特有的工作模式.通常AHCI需要通过BIOS来开启或关闭,通过BIOS启用AHCI有两大好处:热插拔SATA驱动器(模拟USB驱动器的行为)和NCQ。该特性在 Linux kernel 2.6.19 以后开始提供支持,现在的 Arch 内核会自动加载 ahci 模块.

设置BIOS

进入BIOS的方法因主板的不同而不通; 通常, 在启动计算机时按Del 就可以进入BIOS,笔记本可能是F2。

进入BIOS之后, 找到跟下面类似的选项:

Enable SATA as: IDE/AHCI

或者:

SATA: PATA Emulation/Native/Enhanced

选择 AHCI 或 Native, 保存并退出 BIOS. 如果你没有找到对应的选项请参考主板说明书,因为选项的名字可能不一样。

BIOS修改完之后, Linux 下次启动将会加载 AHCI 驱动。 通过 dmesg 命令的输出可以确定是否正常加载:

SCSI subsystem initialized

libata version 3.00 loaded.

ahci 0000:00:1f.2: version 3.0

ahci 0000:00:1f.2: PCI INT B -> GSI 19 (level, low) -> IRQ 19

ahci 0000:00:1f.2: irq 764 for MSI/MSI-X

ahci 0000:00:1f.2: AHCI 0001.0200 32 slots 6 ports 3 Gbps 0x3f impl SATA mode

ahci 0000:00:1f.2: flags: 64bit ncq sntf stag pm led clo pmp pio slum part ems

ahci 0000:00:1f.2: setting latency timer to 64

scsi0 : ahci

scsi1 : ahci

scsi2 : ahci

scsi3 : ahci

scsi4 : ahci

scsi5 : ahci

and for NCQ:

ata2.00: 625142448 sectors, multi 16: LBA48 NCQ (depth 31/32)

问题解决

如果安装 Arch 后 STAT 配置从 IDE 变为 AHCI, AHCI 模块可能无法正确加载。启动时会出现找不到根分区的错误提示。

这时,应该可以用 failsafe 启动选项进行启动,启动后请执行 mkinitcpio 重新生成 initramfs 镜像。

参阅

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值