斐讯N1烧写NKN nCDN节点 镜像教程

2020.05.29 版本更新说明

  1. 改善本机网络拓扑,对上下行流量有提升
  2. 支持多任务,会自动根据外挂磁盘容量调整任务实例数量,进一步提升业务流量
  3. 增加滴聊(dchat)消息发送功能。刷机成功后会自动发送完成消息到nMobile/d-chat(需联网)。以后增加故障自检功能后也可用于消息告警。详情见dchat消息通知功能章节
  4. 增加nShell功能,在当前矿工环境多样性适配阶段便于排查/收集现场异常信息。详情见nShell功能说明章节
  5. 设置主机名,以nshID高8位作为主机名后缀。方便矿工在上游路由器里区分设备(需路由器支持显示hostname)

N1刷机分两种情况:

  • 原厂系统
  • 刷过的系统

原厂系统降级支持USB启动

原厂系统不支持从USB口启动,需线刷将bootloader降级到支持USB启动的版本,然后走USB启动盘刷机流程。线刷教程参考下面传送门的Part-1部分,这里不做赘述。

USB启动盘刷机

只需以下3步:

  • 制作启动U盘
  • 往U盘添加个人账户信息
  • N1插入U盘启动,自动刷机
  1. 制作USB启动盘
    对于刷过的系统,通常都支持USB启动(若不支持走线刷降级流程)。
    http://121.36.30.183:6080/n1_usb_img/NKNMining_N1.img.zip下载刷机U盘镜像并解压,并使用U盘制作工具烧录U盘(下图示例软件为balenaEtcher( https://www.balena.io/etcher/ ),也可用其它任意烧录软件)

    左侧选择要烧录的镜像,中间选择要烧录的U盘,然后点击右边Flash开始烧录,它会自动开始写入、校验,最后提示succeed表示烧录完成。

  2. 添加个人账户信息
    将制作好的U盘插入PC,windows系统会识别出其中一个可见分区。其中有一个名为beneficiary.json的文件。
    image
    使用写字板或任意文本编辑器打开(notepad会出现不换行情况,内容可读性差一些)
    image
    配置文件内容如图:
    image
    beneficiary: 为NKN钱包地址(安装nMobile Pro版,获得nkn地址的方法:滴聊 - 左上角头像 - 钱包地址)。
    ercAddr: 为ERC20 token的ETH收款地址。将它们修改为你的个人钱包地址,并检查别填错,否则就做雷锋啦。
    referrer: 如果有内容,千万不可以修改。
    contact: 填写nkn公钥地址,用于刷机成功的消息通知。(需安装nMobile Pro版,获得nkn地址的方法:滴聊 - 左上角头像 - 滴聊地址)
    image
    修改完成保存文件后,弹出U盘即可。

  3. U盘启动刷机
    在N1断电状态下将启动U盘插入USB1口(靠近HDMI的那个U口),上电即可。刷机为无人值守全自动过程,期间前面板的斐讯Logo灯会保持点亮(注意,因面板材质的透光率低,这个灯非常不明显,得在暗光环境下才能看得出来),刷机完成后U盘会自动关机,Logo灯熄灭。意味着刷机已完成。整个刷机过程用时大约10分钟左右。

重新上电前记得将刷机U盘拔下(否则开机后将再次进入刷机系统 :joy:),换上数据盘,给N1上电奔跑吧 :grin:

如何确认设备在工作

  1. 登录设备
    刷机后的系统上电启动后,可ssh [email protected]设备IP 登录系统(设备IP取决于各人网络环境,需自行在路由器或DHCP服务上查找设备分配到的IP)。初始密码为1234,首次登录时会强制要求更改密码,更改新密码后重新ssh login。
    登录成功后将看到NKN的logo和设备ID(nshID)。如下图所示:
    image
    说明刷机后的系统已创设设备ID并进入到可访问状态
    05.29新增dchat消息通知功能:刷机时N1联网状态下,刷机成功后会自动根据U盘里beneficiary.json文件设置的contact发滴聊(dchat)消息,contact为nMobile里钱包的公钥。nMobile在线时将收到刷机完成的通知,效果如图:
    image

  2. 查看磁盘挂载和调度状态
    ssh登录系统后

  • 查看磁盘
    df -h 命令可查看磁盘挂载位置/mnt/sda1,若存在/mnt/sda1挂载点,说明外挂磁盘已挂载成功。
    image
    df -h的输出中没有该挂载点,用lsblklsusb两条命令查看硬件信息,将硬件信息提供给NKN客服,客服将安排技术人员进行硬件兼容性问题排查。
    image

  • 调度状态
    docker ps命令可查看运行中的任务。如下图:
    image
    刚刷机加入的设备不一定能马上获得任务,需有一个等待任务分配和任务镜像下载的时间。等待时长几分钟至几小时不等,具体取决于各设备的网络情况。若磁盘成功挂载且长时间没有运行任务,请联系客服安排技术人员排查。

  • nShell功能说明
    现阶段仍处于固件对各种矿工场景多样性的适配阶段,固件对各种特定场景下的兼容性问题较多。为方便远程协助矿工排查这类特殊现场问题,新版固件里在/etc/nshd/authorized_pubkeys配置文件中预放置了两个NKN技术员的公钥,作用是授权这两个NKN官方私钥的持有者可以远程nsh登录N1设备。
    在固件的场景多样性兼容适配完善后,会在以后的新版固件中取消该配置文件里的登录预授权。在此之前,对此远程访问授权介意的矿工,可手动修改/etc/nshd/authorized_pubkeys文件取消nShell对任意公钥的登录授权。

1 Like