Linux下制作给ARM开发板使用的文件系统
时间:2022-07-28
本文章向大家介绍Linux下制作给ARM开发板使用的文件系统,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1.Busybox源码请网上自行下载,编译方法请参考百度。
2.交叉编译工具链的设置也请先设置好。
如果以上1、2没有问题,那么可以使用以下脚本,制作一个给ARM开发板使用的文件系统。
可以自行定制使用,加入自己的Test demo。
#!/bin/bash
#yuanxin.yang develop 2015-07-05
#文件系统和Busybox的路径====>可自己定制
FILESYSTEM=/Softwave/filesystem #定义自己制作的文件系统存放的位置
BUSYBOX=/Softwave/arm/busybox-1.17.2 #Busybox软体的位置
LIBS=/usr/local/arm/4.5.1/arm-none-linux-gnueabi #交叉编译相关的库文件的位置
#判断文件是否存在 如果存在 就删除
if [ -d $FILESYSTEM ]
then
rm -rf $FILESYSTEM &>/dev/null
mkdir $FILESYSTEM &>/dev/null
else
mkdir $FILESYSTEM &>/dev/null
fi
#拷贝busybox相关的文件
if ! cp -rf $BUSYBOX/_install/* $FILESYSTEM &>/dev/null
then
echo "cp busybox failed..."
exit 1
fi
#拷贝库
if ! cp -rf $LIBS/lib/ $FILESYSTEM/ &>/dev/null
then
echo "copy libs fair...."
exit 1
fi
#拷贝etc
if ! cp -rf $BUSYBOX/examples/bootfloppy/etc $FILESYSTEM &>/dev/null
then
echo "copy etc fair..."
exit 1
fi
#创建Linux相关目录
cd $FILESYSTEM &>/dev/null
mkdir boot mnt root sys var net proc tmp dev home opt &>/dev/null
#修改配置文件
echo > $FILESYSTEM/etc/fstab
#修改etc/profile文件
echo "# /etc/profile: system-wide .profile file for the Bourne shells" > $FILESYSTEM/etc/profile
echo "echo "==========================="" >> $FILESYSTEM/etc/profile
echo "echo "Welcom to Linux System"" >> $FILESYSTEM/etc/profile
echo "echo "==========================="" >> $FILESYSTEM/etc/profile
echo "export PS1="[jiaobenzhijia@Linux W] # "" >> $FILESYSTEM/etc/profile
#修改 etc/init.d/rcS
echo "#! /bin/sh" > $FILESYSTEM/etc/init.d/rcS
echo "/bin/mount -n -t proc none /proc" >> $FILESYSTEM/etc/init.d/rcS
echo "/bin/mount -n -t sysfs none /sys " >> $FILESYSTEM/etc/init.d/rcS
echo "/bin/mount -t ramfs none /dev " >> $FILESYSTEM/etc/init.d/rcS
echo "/bin/mount -n -t ramfs none /tmp " >> $FILESYSTEM/etc/init.d/rcS
echo "/sbin/mdev -s" >> $FILESYSTEM/etc/init.d/rcS
#配置nfs服务
if ! grep "$FILESYSTEM" /etc/exports &>/dev/null
then
echo "/filesystem *(rw,sync,no_root_squash)" >> /etc/exports
fi
#启动服务
iptables -F &>/dev/null
service rpcbind restart
service nfs restart
echo "make filesystem ok....."
exit 0
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Linux系统下利用C程序输出某进程的内存占用信息
- .NET Standard中配置TargetFrameworks输出多版本类库
- .NET Standard SDK 样式项目中的目标框架
- 偿还技术债(2)-EventBus自己实现一个?
- AkShare-债券数据-收盘收益率曲线
- Vue 项目报错:‘$‘ is not defined ( no-undef )
- SpringBoot 项目开启热部署
- 小程序文件下载并保存文件名打开
- 分享个 CTF 小工具 bruteHASH
- centos配置mutt和msmtp实现邮件发送
- CentOS8 安装 jdk8 / java8的教程(推荐)
- Ubuntu18.04 一键升级Python所有第三方包 及安装python包的方法
- 详解centos7上elastic search安装及填坑记
- Linux利用Sysctl命令调整内核参数
- 在ubuntu16.04上创建matlab的快捷方式(实现方法)