FT1500A 刀片机uboot安装系统
外接sata盘的方式:
准备一个带系统的sata盘(系统必须支持这个硬件不然启不来,uboot不需要改什么默认进这个系统),把iso与脚本harddisk_copy-noarch_20160711.sh拷进去
- 通过mobaxterm或者minicom工具进入串口,选择对应的COM口,调整速率为115200。
- 开机进入系统,给板卡硬盘创建3个分区/dev/sdb1 /dev/sdb2 /dev/sdb3,分别是/boot(1G及以上),/root(30G以上),/swap(4G及以上)。
- 执行脚本 ./ harddisk_copy-noarch_20160711.sh /dev/sdb1 /dev/sdb2 /dev/sdb3 iso xxx(绝对路径镜像文件)
- 等待结束。。。执行sync,等待结束,关机即可
- 拔掉外接硬盘,开机进入uboot,修改环境变量,
- 执行boot,如果需要保存配置,执行saveenv。
安装实时核(uboot):
- 安装内核文件
- 拷贝实时核的uImage到boot下并重命名为uImage-4.19.90-17-rt-rc2-724+
- 创建软连接 ln -s initrd,img-xxx initrd.img
ln -s uImage-4.19.90-17-rt-rc2-724+ uImage
- 安装preempt-rt-19-tianjinkylin文件夹下的包
- 重启进入uboot,修改环境变量
- 执行saveenv保存,在执行boot启动。
注意:scsi的盘符会变,可以同时修改scsidevs=0保存重启解决。
核孤立:
在cmdline中增加isolcpus启动参数,如isolcpus=3
可以在grub.cfg里修改,vi /boot/efi/boot/grub/grub.cfg
如果是修改uboot环境变量:setenv bootargs ‘console=ttyS0,115200 earlyprintk=uart8250-32bit,0x28001000 root=/dev/sda2 initrd=0x95000000,32M rootwait rw KEYBOARDTYPE=pc KEYTABLE=us isolcpus=3,4,5’
进入单用户模式:
setenv bootargs ‘console=ttyS0,115200 earlyprintk=uart8250-32bit,0x28001000 root=/dev/sda2 initrd=0x95000000,32M rootwait rw KEYBOARDTYPE=pc KEYTABLE=us init=/bin/bash
关闭ncq
uboot修改bootargs
setenv bootargs “console=ttyS0,115200 earlyprintk=uart8250-32bit,0x28001000 root=/dev/sda2 initrd=0x95000000,64M rootwait rw KEYBOARDTYPE=pc KEYTABLE=us libata.force=noncq”
进入系统查看 cat /sys/block/sda/device/queue_depth 输出1 及配置生效
切换内核
uboot引导是指定的文件可以是软链接也可以是实际文件名
标准核切换为实时内核
默认情况下uboot引导时指定的文件
scsi_load_initrd=ext4load scsi 0:1 0x95000000 initramfs.img
scsi_load_kern=ext4load scsi 0:1 0x90100000 uImage
标准核 /boot下
initramfs.img -> initramfs.img-4.4.58-20200328.kylin.server-generic
uImage -> uImage-4.4.58-20200328.kylin.server-generic
安装完实时内核,uboot引导时指定的文件(initrd.img-4.19.90-17-rt-rc2-724+,uImage-4.19.90-17-rt-rc2-724+)
/boot
initramfs.img -> initrd.img-4.19.90-17-rt-rc2-724+
uImage -> uImage-4.19.90-17-rt-rc2-724+