| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> 介绍在全志A40i Ubuntu系统上定制文件系统的操作过程 -> 正文阅读 |
|
[系统运维]介绍在全志A40i Ubuntu系统上定制文件系统的操作过程 |
为了给客户的测试和开发提供便利,飞凌嵌入式的开发板产品一般都支持多种操作系统,以基于全志T507H处理器设计研发的OKT507-C开发板为例,它支持三种操作系统,分别是:Linux、Android 和 Forlinx Desktop(Ubuntu),这里提到的Forlinx Desktop系统是飞凌嵌入式在Ubuntu base的基础上构建的桌面操作系统,完全兼容Ubuntu18.04,相对传统的Linux系统而言易用性更高。 Forlinx Desktop(Ubuntu)系统基于Ubuntu官方为嵌入式设备制作的操作系统-Lubuntu,该操作系统具备apt-get、ldd等常用的命令,若需要安装软件则直接apt-get在线安装即可,不需进行交叉编译移植等繁琐操作。但是每次重新烧写镜像之后,之前安装的软件就得重新安装,比较繁琐,如果需要批量操作则每块开发板都需要去apt-get安装,这样会大幅增加工作量,很不便于批量化生产。 能不能把软件一起打包到镜像呢?这样每次烧写完就不用再去apt-get在线安装了。答案当然是肯定的,这就涉及到文件系统的定制了,那么接下来,小编就为大家介绍在Forlinx Desktop(Ubuntu)系统上定制文件系统的操作过程。
OKT507-desktop-release/ubuntu 解压后,可看到文件系统目录OKT507-linux-ubuntu,进入到此目录后可看到如下文件夹:
① 更新下载源: sudo apt-get update ②执行命令安装: sudo apt-get install qemu-aarch64-static sudo apt-get install qemu-user-static
sudo cp /usr/bin/qemu-arm-static usr/bin/ ② 拷贝PC主机端的DNS配置,因为待会我们安装程序时要用网络: sudo cp -b /etc/resolv.conf etc/resolv.conf ③ 修改下载源: sudo vim etc/apt/sources.list 添加 deb http://ports.ubuntu.com/ubuntu-ports/ xenial main universe deb-src http://ports.ubuntu.com/ubuntu-ports/ xenial main universe
① 新建一个脚本文件命名为ch-mount.sh,附代码如下: #!/bin/bash function mnt() { echo “MOUNTING” sudo mount -t proc /proc ${2}proc sudo mount -t sysfs /sys ${2}sys sudo mount -o bind /dev ${2}dev sudo chroot ${2} } function umnt() { echo “UNMOUNTING” sudo umount ${2}proc sudo umount${2}sys sudo umount${2}dev } if [ “$1” == “-m” ] && [ -n “$2” ] ; then mnt $1 $2 elif [ “$1” == “-u” ] && [ -n “$2” ]; then umnt $1 $2 else echo “” echo “Either 1’st, 2’nd or both parameters were missing” echo “” echo "1’st parameter can be one of these: -m(mount) OR -u(umount)" echo "2’nd parameter is the full path of rootfs directory(with trailing ‘/’)" echo “” echo “For example: ch-mount -m /media/sdcard/” echo “” echo 1st parameter : ${1} echo 2nd parameter : ${2} fi ② 设置这个shell脚本可执行权限,如下: sudo chmod 777 ch-mount.sh ③ 挂载文件系统: 执行ch-mount.sh脚本 指定参数-m,挂载成功如下: sudo ./ch-mount.sh -m ./
① 更新下载源: apt update 注意:更新下载源可能会报错,这里需要注意一下,因为tmp文件夹权限不够,chmod为其赋予权限。 如下: chmod 777 /tmp ② 安装软件: 至此,便可以安装所需软件了,在这里用apt-get安装自己所需软件,根据所需安装。我们这里来安装一个minicom串口测试工具。如下: ③ 安装完成后,exit退出QEMU。 ④ 执行ch-mount.sh脚本卸载文件系统,指定参数-u,卸载成功后打印如下: 注意:我们exit退出后,只是退出了QEMU模拟器,并没有卸载文件系统,一定要执行脚本卸载文件系统。
sudo tar -cvzf OKT507-linux-ubuntu.tar.gz ./* ② 压缩完成后,为文件系统压缩包OKT507-linux-ubuntu.tar.gz赋予权限,如下: sudo chmod a+w OKT507-linux-ubuntu.tar.gz ③ 将刚打包好的压缩包替换到上一级目录下的旧的文件系统压缩包。 ④ 重新编译打包后生成新的镜像烧录开发板。
从上图红框可以看出,通过终端命令启动了minicom,说明我们在QEMU中安装成功了,至此Ubuntu文件系统定制就做完了。 通过这种方法可以个性化的定制属于自己文件系统,安装自己所需软件,也可以根据自己需求将出厂不需要的软件用相同的方式卸载掉,这样既能减少工作量,又利于批量化生产。 以上就是小编为大家带来的在Forlinx Desktop(Ubuntu)系统上定制文件系统的操作过程。想要了解有关OKT507-C开发板更多的功能和详情,可以进入飞凌嵌入式官网查看。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 19:51:56- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |