本帖最后由 牛头 于 2016-10-9 14:38 编辑
很多朋友希望在拿到Firelfy发布的Ubuntu镜像后,会想自己加驱动或自己编译的内核等等,但做的过程中难免出现各种各样的问题。网上各种教程都不那么切题,讲解都不是那么细致,让人感到迷茫,又或许是无助。Firefly团队努力地在帮助开发者打破此困局,整理策划了系列教程,让开发者可以通过Firefly开源平台可以快速上手开发,并快速打造出成熟产品。 “创新 开源 分享 定制”是我们的口号,我们一直在努力。
说实话第一次制作的镜像真是寒碜,要啥没啥,今天就治治它。让我们来“象征性地”给镜像增加实用工具,然后再打包新的镜像文件,实现开发板根文件系统的固化。 让我们上路吧! 给开发板接好显示器、鼠标键盘,启动开发板。先用键盘登陆ubuntu用户,因为连sudo工具都没有,所以直接切换到root用户来操作,如下: su root 按提示输入密码,密码是做镜像时的设置的。 接着给开发板做网络配置,前提是开发板有用以太网线连接到带DHCP服务的路由哦: dhclient eth0 经过上一步操作,开发板就自动分配好IP,已经可以联网了,我们先给开发板更新软件源。但在此之前先给rootfs分区扩展磁盘空间,不然没多余空间: resize2fs /dev/mmcblk0p3 apt-get update 现在还不知道开发板IP,没办法用ssh登陆等,但是现在系统里连ifconfig工具都没有,需要安装net-tools工具集: apt-get net-tools 安装成功后,运行ifconfig查看确认ip信息,现在可以在pc端用ssh登陆开发板来进行操作了。 除上述命令必须要用键盘输入外,下边开始的命令可以通过ssh远程登陆去操作。 后面制作镜像需要远程同步开发板上的根文件系统,同步过程中需要远程登陆root帐号。但ubuntu默认是不允许通过ssh远程登陆root帐号,所以我们修改一下相应的配置,让系统允许用密码远程登陆root帐号: su root vim /etc/ssh/sshd_config 找到PermitRootLogin这项,设置为yes,如图: 保存退出后,重启sshd: /etc/init.d/ssh restart 经过这此修改后就可以远程登陆root帐户了,可以通过ssh工具验证。
现在开发板上的ubuntu系统比之前安装多了一些必要工具,这样使用起来方便多。马上来尝试把当前的系统固化,打包生成镜像。 先在PC主机上创建一个目录,用来同步保存开发板上的文件系统: cd ~/Ubuntu/rootfs mkdir ubuntuBoard 上边的IP要根据开发板实际情况修改,信息由ifconfig得到。 命令执行完后,ubuntuBoard里就保存着和开发板系统上一样的文件系统内容了,各位朋友可以按上一篇教程,对此目录进行打包生成镜像,这里就不再重述。新镜像生成后,把镜像烧录到linuxroot分区。系统正常启动后,输入ifconfig等命令试试吧,这回就不会要啥没啥了。 没错啦,这镜像就和之前我们配置后的系统一模一样,Linux发行版镜像生成的基本原理就是这样的啦。到此在Firefly RK3288平台制作ubuntu镜像的流程已经全部讲完啦。关于ubuntu系统本身更多的知识就要,靠大家自己去学习补充啦。 有了这些技能后,自己在Firefly RK3288开发板上制作一些好玩的linux发行版,就没有什么障碍啦。欢迎大家多分享自己的成果,比如搞个Firefly RK3288开发板的kali系统镜像什么的,想想还是很酷的。 下一篇讲点什么呢,大家踊跃发表意见,说不定就是你的意见就给采纳了。
|