嵌入式开发板移植ubuntu base系统的方法

一、环境
PC端ubuntu18.04
嵌入式ARM开发板
二、移植过程
1、下载镜像 ubuntu-base-18.04.5-base-arm64.tar.gz

2、创建目录
mkdir ubuntu_rootfs

3、解压文件
sudo tar xfvp ubuntu-base-18.04.5-base-arm64.tar.gz -C ubuntu_rootfs

4、安装 qemu 工具
sudo apt-get install qemu-user-static
然后:
sudo cp /usr/bin/qemu-arm-static ./ubuntu_rootfs/usr/bin/
sudo cp /usr/bin/qemu-aarch64-static ./ubuntu_rootfs/usr/bin/

5、设置配置文件
sudo cp -av /run/systemd/resolve/stub-resolv.conf ./ubuntu_rootfs/etc/resolv.conf

6、编写挂载和卸载脚本
(1)编写一个mount.sh脚本
#!/bin/bash
echo “MOUNTING”
sudo mount -t proc /proc ./ubuntu_rootfs/proc
sudo mount -t sysfs /sys ./ubuntu_rootfs/sys
sudo mount -o bind /dev ./ubuntu_rootfs/dev
sudo mount -o bind /dev/pts ./ubuntu_rootfs/dev/pts
sudo chroot /home/**/ubuntu_rootfs

(2)编写一个umount.sh脚本
#!/bin/bash
echo “UNMOUNTING”
sudo umount ./ubuntu_rootfs/proc
sudo umount ./ubuntu_rootfs/sys
sudo umount ./ubuntu_rootfs/dev
sudo umount ./ubuntu_rootfs/dev/pts

设置 shell 脚本可执行权限,
sudo chmod 777 mount.sh umount.sh

7、执行
./mount.sh

8:安装常用的命令和软件
#apt update
#apt install -y sudo vim kmod net-tools ethtool ifupdown language-pack-en-base rsyslog htop
#apt-get install vim git openssh-server sudo net-tools iputils-ping wireless-tools udev
#apt-get install htop rsyslog network-manager ifupdown ethtool
#apt-get install florence apt-get install ubuntu-session xubuntu-desktop
#update-alternatives --config x-session-manager
#dpkg-reconfigure lightdm

#echo auto eth0 > etc/network/interfaces.d/eth0
#echo iface eth0 inet dhcp >> etc/network/interfaces.d/eth0
#echo auto wlan0 > etc/network/interfaces.d/wlan0
#echo allow-hotplug wlan0 > etc/network/interfaces.d/wlan0
#echo iface wlan0 inet dhcp >> etc/network/interfaces.d/wlan0
9、增加用户
#vim /ect/hostname
useradd -s ‘/bin/bash’ -m -G adm,sudo userxx
passwd userxx(自己用户,自定义)
passwd 123

10、设置权限
vi /etc/sudoers
root ALL=(ALL:ALL) ALL
userxx ALL=(ALL:ALL) ALL
11、增加日志
touch /var/log/rsyslog
chown syslog:adm /var/log/rsyslog
chmod 666 /var/log/rsyslog
systemctl unmask rsyslog
systemctl enable rsyslog
12、主机名
echo “xxx” > /etc/hostname
echo “127.0.0.1 localhost” > /etc/hosts
echo “127.0.1.1 xxx” >> /etc/hosts
13、串口终端和网络dhcp
ln -s /lib/systemd/system/getty@.service /etc/systemd/system/getty.target.wants/getty@ttyPS0.service
echo “auto eth0” > /etc/network/interfaces
echo “iface eth0 inet dhcp” >> /etc/network/interfaces
13、退出
exit
./umount.sh
14、文件拷贝,这部分操作根据板子来做,有差异性。
我这边是以一个sd卡启动的镜像为例子。
sd卡分为root(fat32)和rootfs(ext4)两个区域,将生成的系统拷贝到sd卡rootfs区。
常用指令
sudo mkfs.vfat -F 32 -n BOOT /dev/sdb1
sudo mkfs.ext4 -L ROOTFS /dev/sdb2

sudo chmod 755 /media/jcl/ROOTFS
sudo chmod 755 /media/jcl/ROOTFS/*

sudo chown root:root /media/jcl/ROOTFS
sudo chown root:root /media/jcl/ROOTFS/*

sudo rm -rfd /media/jcl/ROOTFS/*
sudo cp -a -r -v ./ubuntu_rootfs/* /media/jcl/ROOTFS/
最后执行 sync
然后弹出卡。
15、上板子运行,无界面版本Ubuntu启动,后续可以安装xfce4、weston。

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在嵌入式行业中,开发板和工具链的选择对于实现openpose嵌入式部署非常重要。根据引用,在嵌入式行业中,除了嵌入式开发,还存在外包的形式,供应商可以根据用户的定制要求提供硬件设计和驱动移植等方面的服务。因此,选择适合openpose部署的嵌入式开发可以更好地满足项目的需求。 根据引用,选择特定的开发板时,应该考虑厂商提供的推理框架和示例。对于openpose的嵌入式开发,可以考虑选择支持NNIE或其他相关底层加速实现的特定开发板。比如,如果使用nvidia显卡,可以选择TensorRT作为推理框架;如果使用Intel的CPU,可以选择OpenVINO;如果使用arm的CPU,可以选择NCNN或MNN。这些特定开发板通常会提供一些经典的视觉任务的示例,如分类和检测,使用它们的工具链进行部署的例子。因此,熟悉这些示例,并关注如何进行Debug和内存释放等操作是很重要的。 此外,引用提到了一些知名大佬们的文章,他们对于AI移动端优化和算法优化的经验和见解也可以作为学习的参考。搜索知乎的AI移动端优化专栏,可以找到一些有关优化部署的文章,从中学习优化算法的方法。 综上所述,为了实现openpose嵌入式部署,你可以选择适合openpose的嵌入式开发,并熟悉其对应的工具链和官方示例。同时,可以参考一些大佬们的文章,学习优化部署的方法和技巧。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [嵌入式开发的功能及选择](https://download.csdn.net/download/weixin_38740130/12699059)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [视觉算法的工业部署及落地方面的技术知识,怎么学?](https://blog.csdn.net/Yong_Qi2015/article/details/109541838)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值