【教程】如何制作自己的 N1 开放镜像

Moderator: 论坛版主

Post Reply
User avatar
wusheng
硕士研究生
Posts: 221
Joined: Thu Nov 01, 2018 10:13 am

【教程】如何制作自己的 N1 开放镜像

Post by wusheng » Wed Apr 17, 2019 4:23 am

众所周知,博纳云发的镜像是不给ssh登录的,
原因嘛,当然就是怕你们上去乱搞,搞出了问题又让程序员背锅

软件准备
准备完成后

1. 解压下载的镜像为img镜像

2. 这里有两个选择
制作完成后用户root 密码1234
2.1 直接修改镜像

2.2 烧录到U盘后修改Upan
这里有啥区别呢?
直接修改镜像:修改后烧录的所有U盘都是修改过的
修改U盘:缺点是每次烧录后都要再修改一次,优点是使用过的U盘可以保留配置,例如Root密码,ISCSI等写在U盘里的配置
2.1 使用DG打开img镜像
过于新的DG不能复制文件的问题就从上面的其他网站中选一个下载吧
Image

打开镜像

Image

复制三个文件

Image

打开三个文件

Image

修改rc.local文件烧到U盘==>烧到emmc

Image

Code: Select all

#这条是开启ssh服务
sed -i 's/^AddressFamily/#AddressFamily/g' /etc/ssh/sshd_config
sed -i 's/^ListenAddress/#ListenAddress/g' /etc/ssh/sshd_config 
systemctl enable ssh&&systemctl restart ssh

/opt/bcloud/scripts/bootconfig   #这条是官方的远程调试
/root/install.sh  #这行去掉的话就是U盘启动,不去掉就默认烧到emmc

修改两个shadow文件

Image

修改为这一行

Code: Select all

root:$6$T1AHVNkK$B32WlCvW8WZqP3p60Vn1bOd/QmjDbVFoSPSq0kN7ix3jUcyFkQ/8QClQZh.hCH7wLp4ElASCWVM2Sz4vy12GQ.:0:0:99999:7:::

复制回镜像覆盖

Image

Image

Image

Image

关闭镜像

Image



2.2修改U盘

步骤大致和修改镜像差不多

区别在于:
修改U盘可将rc.local中的命令移到到BOOT分区方便修改

在BOOT分区新建start.sh文件

Image

Code: Select all

/boot/start.sh
Image

Code: Select all

#!/bin/sh -e

#上面这条是必要的
#这里就可以随心所欲定制你的命令拉,这个文件要建在U盘的BOOT分区哦,
#这样直接用文件管理器就可以直接编辑这个文件,
#不需要再用DG复制来复制去的啦,记得Unix格式哦,Windows格式是不能运行的


#这条是开启ssh服务
sed -i 's/^AddressFamily/#AddressFamily/g' /etc/ssh/sshd_config
sed -i 's/^ListenAddress/#ListenAddress/g' /etc/ssh/sshd_config 
systemctl enable ssh&&systemctl start ssh

#iscsiadm 。。。。等等启动命令都可以放在这里

exit 0
Linux下修改

Linux 下修改就方便了

Code: Select all

#!/bin/bash
# made by wusheng
set -e
set -x
NewName=${1:0:$((${#1}-3))}
[ ! -s ${NewName}-open.img ] &&xz -d -v -T 4 -k $1
[ ! -s ${NewName}-open.img ] &&mv ${NewName} ${NewName}-open.img
devName=`losetup -P -f --show ${NewName}-open.img`
mkdir -p /tmp/mnt
mount ${devName}p2 /tmp/mnt

sed -i '/^root:/'d /tmp/mnt/etc/shadow
sed -i '/^root:/'d /tmp/mnt/etc/shadow-
sed -i '1i\root:$6$T1AHVNkK$B32WlCvW8WZqP3p60Vn1bOd/QmjDbVFoSPSq0kN7ix3jUcyFkQ/8QClQZh.hCH7wLp4ElASCWVM2Sz4vy12GQ.:0:0:99999:7:::' /tmp/mnt/etc/shadow
sed -i '1i\root:$6$T1AHVNkK$B32WlCvW8WZqP3p60Vn1bOd/QmjDbVFoSPSq0kN7ix3jUcyFkQ/8QClQZh.hCH7wLp4ElASCWVM2Sz4vy12GQ.:0:0:99999:7:::' /tmp/mnt/etc/shadow-
sed -i 's/^AddressFamily/#AddressFamily/g' /tmp/mnt/etc/ssh/sshd_config
sed -i 's/^ListenAddress/#ListenAddress/g' /tmp/mnt/etc/ssh/sshd_config 
sed -i '/^exit/i\systemctl enable ssh&&systemctl restart ssh' /tmp/mnt/etc/rc.local

sync
umount /tmp/mnt
losetup -d ${devName}
rm -r /tmp/mnt
#xz -v -T 4 ${NewName}-open.img
md5sum ${NewName}-open.img
保存上面的内容到一个文件例如ts.sh里

Code: Select all

chmod +x ts.sh
./ts.sh 镜像文件路径例如

Code: Select all

./ts.sh ./BonusCloud-LiteNode-N1-emmc.img.xz
你可以顺便烧录到U盘里,对于Linux是是很方便的
修改sda为你的U盘盘符,fdisk -l 根据大小区分

Code: Select all

dd if=BonusCloud-LiteNode-N1-emmc.img-open.img of=/dev/sda bs=4M conv=fsync
少年修改中...
有未记录问题联系https://t.me/wusheng

rickychaw
新人报道
Posts: 3
Joined: Wed Nov 28, 2018 6:39 am

Re: 【教程】如何制作自己的博纳云开放镜像

Post by rickychaw » Fri Apr 19, 2019 8:00 am

图片显示不全,挂了ti子才顺利露头。期待后续...

User avatar
wusheng
硕士研究生
Posts: 221
Joined: Thu Nov 01, 2018 10:13 am

Re: 【教程】如何制作自己的博纳云开放镜像

Post by wusheng » Fri Apr 19, 2019 1:53 pm

rickychaw wrote:
Fri Apr 19, 2019 8:00 am
图片显示不全,挂了ti子才顺利露头。期待后续...
网络不好吧,我这里是不需要梯子的,后续我也不知道写啥,您有建议吗
有未记录问题联系https://t.me/wusheng

liuyu56
新人报道
Posts: 1
Joined: Sat May 04, 2019 4:33 am

Re: 【教程】如何制作自己的 N1 开放镜像

Post by liuyu56 » Sat May 04, 2019 4:37 am

老哥 从官方0.42升级了用DG做的开放版 但是SSH 进不去 现在后台也显示离线 这是什么地方错了吗

User avatar
二 猫
论坛管理员
Posts: 1480
Joined: Thu Nov 01, 2018 10:34 am

Re: 【教程】如何制作自己的 N1 开放镜像

Post by 二 猫 » Sun May 05, 2019 3:04 am

liuyu56 wrote:
Sat May 04, 2019 4:37 am
老哥 从官方0.42升级了用DG做的开放版 但是SSH 进不去 现在后台也显示离线 这是什么地方错了吗
显示离线说明有程序没跑起来或者证书没保留好
BonusCloud.io

Sumn255
新人报道
Posts: 8
Joined: Tue Nov 06, 2018 3:55 pm

Re: 【教程】如何制作自己的 N1 开放镜像

Post by Sumn255 » Thu Aug 01, 2019 10:17 am

不错的教程,我一般都是刷进N1然后U盘写入一个普通的armbian,然后U盘启动,挂载emmc然后chroot去emmc,然后修改/etc/ssh/sshd_config,允许ipv4登录以及允许密码登录,然后systmectl enable ssh以及passwd修改密码

Post Reply