当前位置: 首页 > ai >正文

全志F1c200开发笔记——移植Debian文件系统

1.搭建环境

sudo apt install qemu-user-static -y sudo apt install debootstrap -y mkdir rootfs

2.拉取文件系统

这边我参照墨云大神的文档,但是华为镜像已经没有armel了,我找到了官方仓库,还是有的,拉取速度比较慢

sudo debootstrap --foreign --verbose --arch=armel buster rootfs http://archive.debian.org/debian/

这里遇到报错

Cannot check Release signature; keyring file not available /usr/share/keyrings/debian-archive-keyring.gpg

解决方法

sudo apt-get install debian-archive-keyring

重新拉取

拉取完成

3.配置

3.1 进入虚拟系统

运行如下命令

cd rootfs
sudo mount --bind /dev dev/
sudo mount --bind /sys sys/
sudo mount --bind /proc proc/
sudo mount --bind /dev/pts dev/pts/
cd ..
sudo cp /usr/bin/qemu-arm-static rootfs/usr/bin/
sudo chmod +x rootfs/usr/bin/qemu-arm-static
sudo LC_ALL=C LANGUAGE=C LANG=C chroot rootfs /debootstrap/debootstrap --second-stage --verbose
sudo LC_ALL=C LANGUAGE=C LANG=C chroot rootfs

可以看到我们现在进入了虚拟系统中

3.2.配置相关库

3.1 网络相关库

我们安装一下相应的库

3.2 SSH

设置允许root用户登录

nano /etc/ssh/sshd_config

找到

修改为PermitRootLogin yes 然后保存退出

3.3 小火车

这里我想安装一个小火车玩,就

apt update apt install sl

于是我输入如下命令

./usr/games/sl

会得到一只小火车

3.3 修改密码

3.4 修改时区

4. rootfs打包

4.1 清理缓存

apt-cache clean #删除安装包 
exit  #退出chroot
rm rootfs/usr/bin/qemu-arm-static

4.2 卸载挂载的文件夹

cd rootfs
sudo umount   dev/pts/
sudo umount   dev/
sudo umount   sys/
sudo umount   proc/
sudo umount   dev/pts/

4.3打包

这里我们将TF卡连接ubuntu,因为debian有点大,我将TF卡的rootfs分区扩容到了1024MB,然后删除rootfs目录下的内容,将内容复制过去

# cd rootfs #进到文件系统目录,如果已经在该文件夹下,可以忽略

sudo cp -a ./ /media/nanqiu/rootfs/ sync sudo umount /media/nanqiu/rootfs

我在这边总是出现问题,经常是命令运行运行就卡死了,排查发现,是我的TF卡是低速卡导致的,娘的,某宝商家骗我,建议搭建换高速TF卡+USB3.0读卡器

这里每次出现问题,我就要强行拔除TF卡,然后再接入ubuntu,清空TF中的rootfs分区中的内容,然后重新操作,头疼,已下单好卡

5.启动

TF卡配置好后,我们连接开发板进行启动,正常应该如下

如果报错

Exec format error

可以看一下TF卡中的/bin目录下是不是很多文件为0字节,如果是,其实就是复制文件系统到TF卡的时候,系统没有将数据写到TF中,方法就是重新运行复制命令,将文件系统写入到TF卡中,保证数据写入进来了

如果和我一样一切正常的话

输入账密登录之后

输入如下命令

/usr/games/sl

然后,你会收到一只在开发板上运行的小火车

此时,你的Debian系统就运行成功了,下一章节我们移植屏幕

http://www.xdnf.cn/news/9798.html

相关文章:

  • 彻底卸载安装的虚拟机VMware Workstation软件
  • 树莓派超全系列教程文档--(51)如何使用SSH登录树莓派
  • RFID综合项目实训 | 基于C#的一卡通管理系统
  • AI绘画提示词:从零开始掌握Prompt Engineering的艺术
  • 群辉(synology)NAS老机器连接出现网页端可以进入,但是本地访问输入一样的账号密码是出现错误时解决方案
  • ST MCU CAN模块--TTCAN模式浅析
  • window 显示驱动开发-转换 Direct3D 固定函数状态(一)
  • 界面开发框架DevExpress XAF实践:集成.NET Aspire后如何实现自定义遥测?
  • Odoo 打印功能架构与工作流程深度剖析
  • 什么是node.js、npm、vue
  • 洛谷 P1157:组合的输出 ← dfs
  • 简单三步FastAdmin 开源框架的安装
  • 如何将图像插入 PDF:最佳工具比较
  • 45. 跳跃游戏 II
  • Vue-05(自定义事件)
  • 汽车售后诊断数据流详细分析
  • linux 安装python
  • 性能测试工具选型指南
  • 二级域名怎么申请?二级域名申请费免费吗?
  • Android Studio 解决报错 not support JCEF 记录
  • 【C/C++】chrono简单使用场景
  • 国密SSL证书有哪些技术优势?
  • 基于qt5和stk10开发的互联调试
  • 黑马程序员C++核心编程笔记--4 类和对象--封装
  • Unity中的JsonManager
  • C++双线程交替打印奇偶数(活泼版)
  • 2024 CKA模拟系统制作 | Step-By-Step | 15、查看Pod日志
  • 委托从入门到入土
  • Elasticsearch的集群管理介绍
  • 乾元通渠道商中标青海省自然灾害应急能力提升工程基层防灾项目