刷机教程
1.bios启动设置
由于x86,且h304默认优先从U盘启动(必须uefi启动盘),所以可以装各种系统,直接插上U盘就能启动,如果你的默认就是usb优先启动,可以略过本章节,如果之前由于不当设置,已经无法从U盘启动,本章将引导你设置bios从U盘启动。
- 连接ttl串口bios
取下所有硬盘架,可以看到主板侧面两个内存插槽,边上有reset按钮和一个4pin接口,这个接口就是ttl 从外(靠近前面板)到里(靠近后面)分分别是GND(红色线)TX(黑色线)RX(黄色线)VCC(白色)线 io电压是3.3V,用3.3V的uart线(如ch341)连接。
切记VCC不接!! VCC不接!!
切记VCC不接!! VCC不接!!
切记VCC不接!! VCC不接!!
电脑打开串口软件,设置为115200 8n1
通电开机,到下面这个界面时连续按ctrl s中断系统启动并进入bios设置
选择Boot Maintenance Manager
选择boot option
选择change boot order
如果usb boot prio没有勾选,请选中按空格勾选
按f10保存即可
2.emmc安装istore os
海康H304没有显示接口,有emmc,多网口,个人觉得最适合装istore到emmc,既可以发挥多网卡软路由,又可以使用nas扩展选择nas界面,还可以docker扩展各种nas功能。
- 下载istore并写盘 从istore官网下载X86_64 EFI版本的系统,并用balenaEcher写入U盘
- 将U盘插入后面板的u口即可启动istore
默认地址192.168.100.1,网口1是wan,2-4是lan
至此,已经是插入uefi启动即可启动U盘系统,拔掉就是原厂
- 备份emmc(可选,非必须)
打开istore终端(建议ssh方式),用户名root默认密码password
输入blkid可以看到emmc和U盘均已识别(此时最好不插硬盘,防止混淆)
可选操作,不备份跳过,可以使用dd备份原厂emmc,由于镜像数据区只有2G,可能写不下,所以我将未使用空间分区成sda5,并将备份写入,你可能需要重新插入一个U盘或者向我一样将U盘用parted新建分区5再备份。
使用istore的web界面的磁盘管理,直接将U盘未使用空间建立新分区,并格式化,应该会有/dev/sda5,所谓备份就是将mmcblk0被分到sd5分区的一个文件,按照上述布局命令应为
mkdir /tmp/sda5
mount /dev/sda5 /tmp/sda5
dd if=/dev/mmcblk0 bs=10M | gzip > /tmp/sda5/h304mmc.img.gz
则U盘下就会出现h304mmc.img.gz的备份文件,恢复命令同理,先挂载U盘,然后执行
gzip -dc /tmp/sda5/h304mmc.img.gz | dd of=/dev/mmcblk0
- 安装istore到emmc
如果你想将istore装入emmc请直接ssh登录系统 输入quickstart (或者 qu + tab 自动补全) 选择 Install X86,一直按确定,就行了。具体如下图所示
- 调整系统分区大小
由于镜像默认系统分区只有2G,而H304的mmc有32G,显然大部分空间浪费了,所以安装完成后需要调整系统分区大小,可以直接按官方教程调整,核心就是resizepart,冉后reseizefs
3.emmc安装飞牛
由于我写这篇教程的时候,海康H304已经出手,所以该部分教程缺少截图,我尽量用易懂的说法去写,并且经过群友验证
- 按照飞牛官方教程制作飞牛安装盘(简称安装盘1)
直接下载用balenaEther写入即可
- 将飞牛装入高性能U盘或者usb固态盘(简称外置系统盘2)
这一步需要一个有显示器的x86电脑或者主板,按照官方安装教程,从安装盘引导后,选择安装到外置系统盘,由于安装过程需要拷贝很多小文件,所以外置系统盘必须保证读写速度。
由于该外置系统盘最终要克隆到内置emmc,所以该外置系统盘必须小于内置emmc,也就是32G,建议用30G的slc U盘
如果你没有大小刚好合适的U盘,该步骤可以使用别人做好的镜像
- 设置外置系统盘默认启动特性
由于uefi bios在系统安装的时候需要生成bios启动项,所以外置系统盘插入别的电脑并不会自动启动,但是/efi/boot/bootx64.efi是uefi bios自动添加启动项的路径
所以需要将外置启动盘飞牛生成的是efi/debian/grubx64.efi复制到/efi/boot/bootx64.efi
需要说明的是efi/boot目录默认不存在,需要在efi目录下新建boot目录,拷贝efi/debian/grubx64.efi到新建的boot目录,并重命名为bootx64.efi 该操作可以在windows下进行
- 克隆外置系统盘到内置emmc
直接按照istore教程将isotre启动盘插入海康H304,U盘启动istore
启动后插入外置系统盘并挂载 按照istore教程登录ssh:
使用blkid查看外置系统盘的路径 使用dd命令直接将外置系统盘克隆到内置emmc
样例:
dd if=/dev/sdb of=/dev/mmcblk2 bs=10M status=progress conv=sync
上述sdb和mmcblk2分别是外置系统盘和内置emmc的路径,要根据实际情况写
4.emmc安装群某晖
- 由于rr的某晖引导早就已经支持emmc,只需要写入引导U盘,插入从u盘引导即可
- 按照rr教程配置和编译好引导后,官方菜单有克隆到领一个磁盘功能,直接使用即可