openPLC armhf架构 Ubuntu根文件系统制作过程记录

2024-03-26 08:44

本文主要是介绍openPLC armhf架构 Ubuntu根文件系统制作过程记录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. ubuntu 根文件系统下载
http://cdimage.ubuntu.com/ubuntu-base/releases/16.04/release/
1.1 解压 
        >> sudo tar -xzf ubuntu-base-22.04-base-armhf.tar.gz -C ubuntu_rootfs/

1.2 安装qemu模拟器
        >> sudo apt-get install qemu-user-static
        >> sudo cp /usr/bin/qemu-arm-static ubuntu_rootfs/usr/bin/   

1.3 DNS 配置文件/etc/resolv.conf 
        >> sudo cp /etc/resolv.conf ./etc/resolv.conf

1.4 制作文件系统挂载脚本ch-mount.sh

#!/bin/bashfunction mnt() {echo "MOUNTING"sudo mount -t proc /proc ${2}/procsudo mount -t sysfs /sys ${2}/syssudo mount -o bind /dev ${2}/devsudo chroot ${2}
}function umnt() {echo "UNMOUNTING"sudo umount ${2}/procsudo umount ${2}/syssudo umount ${2}/dev}if [ "$1" == "-m" ] && [ -n "$2" ] ;
thenmnt $1 $2
elif [ "$1" == "-u" ] && [ -n "$2" ];
thenumnt $1 $2
elseecho ""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

1.5 挂载文件系统
         >> sudo ./ch-mount.sh   -m    ubuntu-rootfs/

1.6 跟换源 清华 port 源
    具体查看>>https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu-ports/
    使用时把https 改成 http

1.7 下载所需软件包
apt update
apt upgrade
apt install sudo
apt install vim
apt install net-tools
apt install ethtool
apt install ifupdown
apt install wireless-tools
apt install rsyslog
apt install htop
apt install iputils-ping
apt install udhcpc
apt install ssh

1.8 添加用户
    >> adduser wy
    >> 输入密码
    修改密码
    >> passwd wy

1.9 设置本机名称和IP地址
设置主机名称:
        >> echo "mp157" > /etc/hostname
设置本机入口ip:
        >> echo "127.0.0.1 localhost" >> /etc/hosts
        >> echo "127.0.0.1 mp157" >> /etc/host

2.0 退出
    >> exit
    >> sudo ./ch-mount.sh   -u   ubuntu-rootfs/

1.制作根文件系统
        >> dd if=/dev/zero of=ubuntu-rootfs.ext4 bs=1M count=3072
        >> sudo mkfs.ext4 -F ubuntu-rootfs.ext4
        >> sudo mount ubuntu-rootfs.ext4 ubuntu-mount/
        >> sudo cp ubuntu-rootfs/* ubuntu-mount/ -drfp
        >> sudo umount ubuntu-mount

2.配置串口,解决登录输入无效问题
        >> ln –s /lib/systemd/system/serial-getty@.service 
             /etc/systemd/system/getty.target.wants/serial-getty@ttySTM0.service
...@ttySTM0 是打印串口名

3.配置网口自动dhcp并开启eth0问题。
>> sudo apt install ifupdown
>> sudo vim /etc/network/interfaces
添加 
    auto eth0
    iface eth0 inet dhcp
>>  sudo systemctl restart networking


4.清华 armhf 架构软件源地址 
https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu-ports/
使用时把https 改成 http

5.U盘挂载修复问题
sudo mount  /dev/sda1 /media
sudo umount /media/
修复
fsck -C -a /dev/sdb1

这篇关于openPLC armhf架构 Ubuntu根文件系统制作过程记录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/847924

相关文章

JavaScript中的reduce方法执行过程、使用场景及进阶用法

《JavaScript中的reduce方法执行过程、使用场景及进阶用法》:本文主要介绍JavaScript中的reduce方法执行过程、使用场景及进阶用法的相关资料,reduce是JavaScri... 目录1. 什么是reduce2. reduce语法2.1 语法2.2 参数说明3. reduce执行过程

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

redis群集简单部署过程

《redis群集简单部署过程》文章介绍了Redis,一个高性能的键值存储系统,其支持多种数据结构和命令,它还讨论了Redis的服务器端架构、数据存储和获取、协议和命令、高可用性方案、缓存机制以及监控和... 目录Redis介绍1. 基本概念2. 服务器端3. 存储和获取数据4. 协议和命令5. 高可用性6.

关于Spring @Bean 相同加载顺序不同结果不同的问题记录

《关于Spring@Bean相同加载顺序不同结果不同的问题记录》本文主要探讨了在Spring5.1.3.RELEASE版本下,当有两个全注解类定义相同类型的Bean时,由于加载顺序不同,最终生成的... 目录问题说明测试输出1测试输出2@Bean注解的BeanDefiChina编程nition加入时机总结问题说明

PLsql Oracle 下载安装图文过程详解

《PLsqlOracle下载安装图文过程详解》PL/SQLDeveloper是一款用于开发Oracle数据库的集成开发环境,可以通过官网下载安装配置,并通过配置tnsnames.ora文件及环境变... 目录一、PL/SQL Developer 简介二、PL/SQL Developer 安装及配置详解1.下

在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程

《在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程》本文介绍了在Java中使用ModelMapper库简化Shapefile属性转JavaBean的过程,对比... 目录前言一、原始的处理办法1、使用Set方法来转换2、使用构造方法转换二、基于ModelMapper

springboot启动流程过程

《springboot启动流程过程》SpringBoot简化了Spring框架的使用,通过创建`SpringApplication`对象,判断应用类型并设置初始化器和监听器,在`run`方法中,读取配... 目录springboot启动流程springboot程序启动入口1.创建SpringApplicat

本地搭建DeepSeek-R1、WebUI的完整过程及访问

《本地搭建DeepSeek-R1、WebUI的完整过程及访问》:本文主要介绍本地搭建DeepSeek-R1、WebUI的完整过程及访问的相关资料,DeepSeek-R1是一个开源的人工智能平台,主... 目录背景       搭建准备基础概念搭建过程访问对话测试总结背景       最近几年,人工智能技术

MySQL 缓存机制与架构解析(最新推荐)

《MySQL缓存机制与架构解析(最新推荐)》本文详细介绍了MySQL的缓存机制和整体架构,包括一级缓存(InnoDBBufferPool)和二级缓存(QueryCache),文章还探讨了SQL... 目录一、mysql缓存机制概述二、MySQL整体架构三、SQL查询执行全流程四、MySQL 8.0为何移除查

Linux部署jar包过程

《Linux部署jar包过程》文章介绍了在Linux系统上部署Java(jar)包时需要注意的几个关键点,包括统一JDK版本、添加打包插件、修改数据库密码以及正确执行jar包的方法... 目录linux部署jar包1.统一jdk版本2.打包插件依赖3.修改密码4.执行jar包总结Linux部署jar包部署