IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> MPSOC 移植ubuntu文件系统 -> 正文阅读

[系统运维]MPSOC 移植ubuntu文件系统

MPSOC 移植ubuntu文件系统

0、uboot和kernel准备(有关petalinux的介绍我就不多说了参见ug1144)

  • 利用petalinux配置文件系统格式、根文件系统路径
    在这里插入图片描述

在这里插入图片描述

  • 执行编译命令最终生成以下3个文件
    在这里插入图片描述

  • 格式化SD卡并重新分为2个区第一个区的格式为FAT,第二个区的格式为EXT4
    在这里插入图片描述

  • 将boot.src、 BOOT.BIN、 image.ub复制到第一个分区(FAT)

1、下载ubuntu-base

  • 打开ubuntu-base下载网址,根据自己的需求下载ubuntu版本,我下载的是ubuntu-base-22.04-base-amd64.tar.gz

2、解压

mkdir rootfs
tar xzvf ubuntu-base-XXXXXX.tar.gz -C ./rootfs
cd rootfs

3、安装 qemu-user-static(为了在PC上模拟运行根文件系统)

apt-get install qemu-user-static
cp /usr/bin/qemu-aarch64-static usr/bin/

4、拷贝PC主机端网络配置到虚拟根文件系统中

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

5、创建mount.sh,放置于rootfs同等级目录下

  • 文件内容如下所示
#!/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
  • 修改为可运行文件
chmod +x mount.sh
  • 通过mount.sh脚本chroot到arm64的文件系统下
./mount.sh -m rootfs/

在这里插入图片描述

6、下载基础软件(一定要找一个网速好的地方)

apt update
apt install language-pack-en-base
apt install sudo
apt install ssh
apt install net-tools
apt install ssh
apt install network-manager
apt install iputils-ping
apt install rsyslog
apt install bash-completion
apt install gcc
apt install vim

7、添加用于名和密码

  • 给系统添加一个名为bohai的管理员账号
useradd -s '/bin/bash' -m -G adm,sudo bohai
  • 修改bohai帐号密码(根据提示输入两次)
passwd bohai
  • 修改root帐号密码(根据提示输入两次)
passwd root

8、设置主机名

echo 'ubuntu' > /etc/hostname
echo '127.0.0.1 ubuntu' >> /etc/hosts

9、保存退出

exit
./mount -u rootfs/

10、打包压缩

sudo tar -zcvf rootfs.tar.gz -C rootfs/ .

11、解压到SD卡第二分区(EXT4格式的文件系统)

sudo tar xzvf rootfs.tar.gz -C /media/xxx/EXT
  • 注意的的SD卡EXT4分区盘符的名字叫做“EXT”
  • /media/xxx/EXT表示盘符挂载路径,根据实际情况更改

12、新建网卡配置文件01-network-manager-all.yaml

  • ubuntu-base-22.04后的版本不再使用interfaces配置网卡,改用yaml
  • 01-network-manager-all.yaml文件内容如下
    • 自动获取ip
    network:
      version: 2
      renderer: NetworkManager
      ethernets:
        eht0:
          dhcp4: yes
    
  • 复制该文件到/…/etc/netplan
sudo cp 01-network-manager-all.yaml /media/hhl/EXT4/etc/netplan/

13、插入SD卡上电启动

在这里插入图片描述

14、注意

  • 上述的一些指令如果不能正常运行请切换至sudo权限
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-09-21 01:04:54  更:2022-09-21 01:06:36 
 
开发: 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年12日历 -2024/12/28 19:13:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计