我有SATA控制器,还有一个附加的RAID控制器卡:
00:17.0 SATA controller: Intel Corporation Device a282
...
04:00.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS-3 3108 [Invader] (rev 02)当linux内核引导时,首先识别/枚举在LSI raid控制器上连接的磁盘(sda,sdb,.),然后再将磁盘挂在SATA控制器上(sde)。
我的内核是单块的,没有可加载的模块。是否可以告诉内核,SATA控制器上的磁盘应该是第一位(sda)?
是什么影响了命令?这仅仅是一个意外,LSI raid是首先被识别的,还是可以更改?
发布于 2020-10-26 19:24:34
在不使用udev的情况下,实现这一目标的唯一方法是更改驱动程序的顺序,即内核加载。由于您想要使用“单块”内核,这可能不是那么容易。如果要将驱动程序作为模块加载,则可以更改每个/etc/modprobe.*中模块的顺序,但只要磁盘需要不同的驱动程序,这就会有所帮助。如果使用相同的驱动程序添加另一个磁盘,您将再次遇到相同的问题。
在使用systemd-udev的系统上,不再可能像以前那样将设备名称更改为不同的sd* (或者在当前的非系统发行版上,如gentoo上的OpenRC或高山上的SysVInit,…)。
为什么有必要将设备命名为/dev/sda?你不能使用/dev/disk/by-*/*或者写你自己的udev规则来生成你自己的符号链接吗?你用的是什么发行版?
一些链接:
https://unix.stackexchange.com/questions/616131
复制相似问题