当前位置: 技术问答>linux和unix
如何从特定U盘加载启动?
来源: 互联网 发布时间:2016-09-09
本文导语: 基于U盘的linux,启动时若只插U盘,会将U盘识别为/dev/sda,但若还插有串口硬盘,则会将硬盘识别为/dev/sda,而U盘识别为/dev/sdb,只能在grub中加一个选项,设定root=/dev/sdb1,并在启动时手动选择。 尝试用UUID来指定,但提...
基于U盘的linux,启动时若只插U盘,会将U盘识别为/dev/sda,但若还插有串口硬盘,则会将硬盘识别为/dev/sda,而U盘识别为/dev/sdb,只能在grub中加一个选项,设定root=/dev/sdb1,并在启动时手动选择。
尝试用UUID来指定,但提示 VFS:Cannot open root device "UUID=4c844b3..." or unknown-block(0,0),不知如何解决。
不知是否还有其他办法能够强制将U盘自动识别为/dev/sda,使系统启动时不需手动控制?
尝试用UUID来指定,但提示 VFS:Cannot open root device "UUID=4c844b3..." or unknown-block(0,0),不知如何解决。
不知是否还有其他办法能够强制将U盘自动识别为/dev/sda,使系统启动时不需手动控制?
|
Linux对这些设备名、设备号都有统一分配的,想SDA这些都是分配给SCSI存储类设备的,SATA(Serial ATA)跟U盘都属于SCSI设备。因为在内核中这些设备的设备号都是动态分配的,当然也可以静态分配,那么这两种设备就看初始化顺序了,谁先被发现就先分配给谁sda。
》》》强制将U盘自动识别为/dev/sda
那可能需要改内核里面的驱动,估计比较麻烦一些。
》》》强制将U盘自动识别为/dev/sda
那可能需要改内核里面的驱动,估计比较麻烦一些。
|
为u disk里的根分区设置LABEL,grub里的 kernel root写 /dev/disk/by-label/USB-ROOT