下一篇路径:https://www.cnblogs.com/jizizh/p/10499448.html

环境:

HelperA64开发板

Linux3.10内核

时间:2019.02.14

目标:定制ubuntu-core rootfs镜像

参考这篇文章:http://dev.t-firefly.com/thread-10963-1-1.html

1、下载最新的ubuntu-core,然后在下面目录解压。

在PC上模拟运行根文件系统。需要安装一个工具:

sudo apt-get install qemu-user-static

然后输入命令:

sudo cp /usr/bin/qemu-aarch64-static rootfs/usr/bin/

再下载ch-mount.sh脚本,重命名为mount.sh,

然后就可以就可以运行虚拟根文件系统了。

退出虚拟根文件系统的时候我们先敲exit,然后输入./mount.sh -u rootfs。

注:如果退出虚拟根文件系统没有执行./mount.sh -u rootfs而重复执行执行./mount.sh -m rootfs。将会导致系统出故障,只能重新启动电脑,然后才能进入虚拟根文件系统。

2、安装软件之前需要拷贝PC主机端网络配置到虚拟根文件系统中。然后进入虚拟根文件系统后可以安装软件了。命令如下:

sudo cp -b /etc/resolv.conf  rootfs/etc/resolv.conf

下载最基本的软件。

apt update

apt install wget udev kmod iproute2 net-tools systemd vim

设置好root权限的密码命令为:passwd root

然后执行下图代码,每一次退出虚拟根文件系统都要执行chown

3、原有的设备文件不可写,所以编译打包会出错,打包不了,然后删除。

然后将extra目录中init重新mount到/sbin/init中:

4、最后回到lichee目录下执行下列命令行编译打包为img镜像文件。

./build.sh && ./build.sh pack

注:这里是HelperA64开发板打包方法,参考HelperA64手册中制定ubuntu-mate一样,将内存扩大到4G。也可以使用上述参考链接文章中dd工具创建镜像文件。

做好上面步骤后,烧录好img镜像文件后,通过串口可以看到登陆界面了。

5、第一次运行要执行一下:depmod –a,然后重启,就会加载相应的模块。

接下来就是替换源:以root身份打开 /etc/apt/sources.list,将 http://ports.ubuntu.com/ 全部替换为中科大的源 http://mirrors.ustc.edu.cn/ubuntu-ports/。Vi进入sources.list时,命令行模式下输入下面命令一键替换源:

:%s/ ports.ubuntu.com /mirrors.ustc.edu.cn/g

然后设置网络网关,打开网络,vi进入修改nameserver 为192.168.0.1,

ping一下,检查是否通畅。

然后输入 sudo apt-get update和 sudo apt-get upgrade 测试

注:要设置一下正确的系统时间date -s "2019-02-14 14:15:00"  ,否则有可能不能执行apt update。

6、最后安装必要的工具:

apt-get install language-pack-en-base sudo ssh ethtool \

wireless-tools ifupdown network-manager iputils-ping rsyslog \

bash-completion htop lrzsz --no-install-recommends

7、如果你在第二步时已经安装了第七步程序。这里你就可以输入下面命令

重启之后再lsmod查看一下模块:

最后输入dhclient,这时自动打开网络,不用设置,ping一下检查网络是否通畅。然后再将源替换掉。

8、在串口中安装lightdm或者按ctrl+alt+F1-6在开发板中安装:

apt-get install lightdm

注:如果在虚拟机装了lightdm和桌面(在第9步中安装),烧录到开发板中就会一直闪屏,登陆不了操作系统,这时在串口或者按下ctrl+alt+F1-6进入终端root权限输入以下命令修改权限:

sudo chown lightdm:lightdm -R /var/lib/lightdm

sudo chown avahi-autoipd:avahi-autoipd -R /var/lib/avahi-autoipd

sudo chown colord:colord /var/lib/colord/

然后lightdm程序装完后,给系统增加一个叫ubuntu的管理员帐号:

useradd -s '/bin/bash' -m -G adm,sudo ubuntu

修改ubuntu用户密码,回车后按提示输入两次密码:

passwd ubuntu

注:在root用户下给szbaijie增加sudo用户权限

vi 进入/etc/sudoers/中在root一行下面加入

szbaijie    ALL=(ALL:ALL) ALL

并且在输入命令: chmod +s /usr/bin/sudo

给用户加入系统属性,用户可以使用sudo了。

9、最后就是安装桌面环境,我自己装的是Xfce。安装完后直接登陆。

sudo apt-get install --no-install-recommends xubuntu-desktop -y

安装桌面参考一下链接:

https://blog.csdn.net/dream361/article/details/64905099

注:当开发板root登陆操作系统界面时,会出现警告,这时候输入下面命

vi ~/.profile

进入profile后将mesg n 替换为 tty -s && mesg n

参考这篇:https://www.cnblogs.com/fanqisoft/p/8671166.html

helpera64开发板下制作ubuntu rootfs镜像的更多相关文章

  1. helpera64开发板下制作ubuntu rootfs镜像(二)

    上一篇路径:https://www.cnblogs.com/jizizh/p/10380513.html Helpera64开发板ubuntu剩于工作: 1.背光调节 答:/sys/class/bac ...

  2. Windows环境下制作Ubuntu的U盘启动工具

    Windows用户想要尝试一下Ubuntu或其他Linux系统?最简单的方法就是使用VMware Workstation,只是虚拟机会真实占用内存,如果你的电脑内存8G及以上可以试试.内存偏小,或者觉 ...

  3. 荣品RP4412开发板烧写Ubuntu系统应注意SD卡内存大些

    问:RP4412开发板用SD卡烧写光盘中的fastboot失败,现在如何补救呢? 答:INAND格式化, 利用usb来升级啊, 也有文档,看升级文档. 问: 这个是怎么回事? 答:你是升级什么系统? ...

  4. win7下制作ubuntu系统安装启动盘和U盘安装ubuntu全过程

    在我搞坏了两个系统之后,一切都得从头开始了,这回好了,电脑就是一台裸机了.没办法,重新下win7吧.这个要先做一个win7的启动盘,然后再安装,只能说我技术不行,没能把win7搞定.让大神给装的win ...

  5. 迅为4412开发板Linux设备树的镜像烧写和源码简单优化教程

    1 烧写:   烧写和4412默认镜像的烧写类似,使用fastboot. 先更新uboot,用4412默认uboot更新支持设备树的uboot 用支持设备树的uboot烧写. 进入支持设备树的uboo ...

  6. 迅为八核cortex a53开发板android/linux/Ubuntu系统

    详情请点击了解:http://www.topeetobard.com 店铺:https://arm-board.taobao.com 核心板: 提供1G和2G内存版本,全机器焊接,杜绝手工,批量无忧. ...

  7. [原]ubuntu下制作ubuntu源

    ubuntu下可以用debmirror来下载ubuntu的所有源: 配置ubuntu12.04_mirror.sh ########################################## ...

  8. Docker下制作一个容器镜像

    操作过程描述: (1)先基于centos的镜像启动一个centos容器 (2)在这个容器中安装nginx (3)然后把这个已经安装了nginx的容器制作成一个docker的镜像 操作:docker c ...

  9. 开发板 视频04_05 ubuntu的联网及基本设置

    4g内存 如果电脑有两g,只能给1.5g 处理器可以根据实际选 usb3.0 或者 2.0 联网模式:: 桥接模式 启动式连接,,,,网是不固定的 仅主机模式,主机和虚拟机在一个网络 第三种联网,自定 ...

随机推荐

  1. 612.1.003 ALGS4 | Stacks and Queues

    Algorithm | Coursera - by Robert Sedgewick Type the code one by one! 不要拜读--只写最有感触的!而不是仅仅做一个笔记摘录员,那样毫 ...

  2. 2Exception in thread "main" java.lang.OutOfMemoryError: Java heap space

    public class TestException { public static void main(String[] args) { String str = "1"; fo ...

  3. leetCode题解之字符最短路径解法2

    1.题目描述 2.分析 之前使用的大循环再向两边寻找的算法是 O(n^2)复杂度的,可以利用 multimap降低其复杂度. 3.代码 vector<int> shortestToChar ...

  4. Django之模型注册

    接着上一篇:Django之创建项目 目的:一个空项目创建好了,我们在models.py中新增3张表并在admin界面中显示,并能操作它们. 示例models 编辑models.py # -*- cod ...

  5. 关于打开现有项目时数据库连接配置遇到的问题 连接字符串中的数据源值指定未安装的SQL Server的实例。要解决此问题,可选择安装匹配的SQL Server实例或修改连接字符串中的数据源值

    最近在看红皮书<ASP.NET MVC 5 高级编程>时,为了更好理解,边看书,边打开源代码查看,在VS(Visual Studio 2015)中将源代码打开,发现数据库连接是关闭的,本想 ...

  6. Hadoop HBase概念学习系列之HBase里的列式数据库(十七)

    列式数据库,从数据存储方式上有别于行式数据库,所有数据按列存取. 行式数据库在做一些列分析时,必须将所有列的信息全部读取出来 而列式数据库由于其是按列存取,因此只需在特定列做I/O即可完成查询与分析, ...

  7. 企业大数据之Elasticsearch的搜索类型

    下面的 ES基于版本(V2.3.4) ES之默认 1.默认自动发先同一局域网的所有集群节点 2.默认一个索引库会有5个分片,(分片越多,效率越好) 由于这两个默认,所以统一索引库的分片对分布在不同机器 ...

  8. 将项目发布到Maven中央仓库的不完整纪要

    背景 有几个Utils性质的Jar需要跨项目引用,原本想部署私有Maven仓库,后来感觉太麻烦,索性直接发布到中央库,引用时也方便. 发布成功之后,觉得某些细节还是有必要记录一下. 资源 Sonaty ...

  9. 【转】说说Android中的style和theme

    最近在做软件从2.3到4.0的改变的一些工作,其中涉及了一些style和theme相关的东西.上网上查了一些东西,这个一并说说.关于android中style和theme的基本使用,这里就不再赘述了, ...

  10. js之点击值发生变化

    点击值发生变化,应用场景,比如像阿里云那样我通常密码是以******的形式存在,我必须要点击查看,它才会以明文显示. 在实际开发中,比如以智能门锁为例,安装门锁时,有个叫密码输入框的表单,这个是选填项 ...