mkyaffs2image制作根文件系统、使用NFS挂载虚拟机目录(2)
1.制作根文件系统及nfs烧写
1.1 先解压文件系统,/wok/nfs_root 目录下是已经构造好的各种文件系统:
① fs_mini.tar.bz2 是最小的根文件系统,里面的设备节点是事先建立好的;
② fs_mini_mdev.tar.bz2 是最小的根文件系统,里面的设备节点是等系统启动后使用
mdev 自动建立的;
③ fs_qtopia.tar.bz2 是 JZ2440 使用的支持触摸屏的根文件系统;
④ fs_xwindow.tar.bz2 是书上的基于 X 的根文件系统。

步骤:
cd /work/nfs_root // 进入nfs_root目录
mkdir tmp //新建目录tmp
cp fs_mini_mdev.tar.bz2 tmp/ // 将fs_mini_mdev.tar.bz2文件系统压缩包复制到tmp目录里(这里以fs_mini_mdev.tar.bz2文件系统为例)
cd tmp/ //进入tmp目录
sudo tar xjf fs_mini_mdev.tar.bz2 //使用sudo解压 ( 因为解压出来的 dev 目录下有一些设备节点,生成它们要用到 root 权限)
1.2 解压好后,使用mkyaffs2image 工具进行制作文件系统映象文件
由于该ubuntu里没有mkyaffs2image 工具,所以首先将Windows里的mkyaffs2image 工具复制到linux里的work/tools里,它在光盘里linux/tools 目录下 。

步骤:
cd /work/tools // 进入刚刚复制的位置目录下
sudo cp mkyaffs2image /usr/local/bin //将mkyaffs2image 复制到 /usr/local/bin目录里
注意:bin目录主要存放可执行命令文件,其中bin目录共有4种:
/bin:用来放置根分区/上的程序。
/sbin:用来存放系统管理程序的路径
/usr/bin:用来分发包管理器
/usr/local/bin:用来存放用户自己的程序,不受分发包管理器的控制
sudo chmod +x /usr/local/bin/mkyaffs2image //给mkyaffs2image 添加 执行命令(添加后直接输入mkyaffs2image 就可以查看使用说明)
mkyaffs2image fs_mini_mdev fs.yaffs2 // 将fs_mini_mdev制作成fs.yaffs2 映像文件。

1.3 使用nfs烧写fs.yaffs2 映像文件
步骤:
nfs 30000000 192.168.1.106:/work/nfs_root/tmp/fs.yaffs2 //192.168.1.106指的是虚拟机IP地址
nand erase root // 擦除root分区(root:包含文件系统等,0x30260000~0x3fffffff)
nand write.yaffs 30000000 260000 $(filesize) // 260000:0X30000000偏移地址 $(filesize) :指定烧写的文件大小
2.使用nfs挂载虚拟机目录
步骤:
ls //查看开发板目录,其中mnt(mount)目录就是用来开发板挂载的目录

mount -t nfs -o nolock,vers=2 192.168.1.106:/work/nfs_root /mnt //mount命令将远端虚拟机/work/nfs_root目录挂载到开发板/mnt目录里
//nolock:禁用文件锁 vers=2:nfs版本协议2 192.168.1.106:虚拟机地址
如下图,挂载后,进入mnt后便可以看到虚拟机/work/nfs_root目录下文件了。

如果挂载失败,那么是以下两个原因:
1.确定板子是否与虚拟机位于同一网段
ifconfig eth0 up //开启网关0,连接网线到路由器
ifconfig eth0 192.168.1.107 //设置ip,与虚拟机ip网段一样,
ping 192.168.1.106 //与虚拟机ping一下,是否已通
2.确定虚拟机是否能被挂载目录
要使虚拟机能够被挂载目录,在/etc/exports中添加需要被挂载的目录即可
例如:
sudo vi /etc/exports
添加以下一段内容:
/work/nfs_root *(rw,sync,no_root_squash) //要被挂载的目录:/work/nfs_root
sudo /etc/init.d/nfs-kernel-sever restart //重启nfs服务
mkyaffs2image制作根文件系统、使用NFS挂载虚拟机目录(2)的更多相关文章
- tiny4412 busybox制作根文件系统rootfs nfs 挂载 ubuntu 14.04
http://blog.csdn.net/liudijiang/article/details/50555429(转) 首先得要有制作好的uboot和linux内核镜像zImage,先烧录到sd卡里, ...
- mini6410基于linux2.6.36内核通过NFS启动根文件系统总结(四制作根文件系统及通过NFS挂载文件系统)
http://blog.csdn.net/yinjiabin/article/details/7489563 根文件系统一般包括: 1)基本的文件系统结构,包含一些必须的目录,比如:/dev,/pro ...
- 使用Busybox-1.2.0制作根文件系统
使用Busybox-1.2.0制作根文件系统 cross-3.3.2 make-3.8.1 STEP 1: 创建根文件系统目录,主要包括以下目录/bin,/etc,/dev,/mnt,/sbin,/u ...
- 通过busybox制作根文件系统
通过busybox制作根文件系统可以自定义选项,在制作的根文件系统中添加需要的命令,指定生成的根文件系统到相应的目录下. 一. 根文件系统的获取方式--->官网: https://busybox ...
- 通过busybox制作根文件系统详细过程
我在之前的uboot通过NFS挂载ubuntu根文件系统中也有实现过根文件系统的制作,那只是在ubuntu官网已经做好的根文件基础上安装一些自己所需的软解而已.而使用busybox制作根文件系统可以自 ...
- 利用busybox制作根文件系统
实际项目中可以使用Buildroot制作根文件系统 1.busybox源码下载及配置 https://busybox.net/downloads/ 1.1.修改Makefile (1) ARCH = ...
- Linux制作根文件系统笔记
测试平台 宿主机平台:Ubuntu 12.04.4 LTS 目标机:Easy-ARM IMX283 目标机内核:Linux 2.6.35.3 交叉编译器:arm-linux-gcc 4.4.4 Bus ...
- 第4阶段——制作根文件系统之分析init进程(2)
本节目标: (1) 了解busybox(init进程和命令都放在busybox中) (2) 创建SI工程,分析busybox源码来知道init进程做了哪些事情 (3) 分析busybox中init进 ...
- 第4阶段——制作根文件系统之分析init_post()如何启动第1个程序(1)
本章学习如何启动第一个应用程序 1.在前面的分析中我们了解到,在init进程中内核挂接到根文件系统之后,会开始启动第一个应用程序: kernel_init函数代码如下: static int __in ...
随机推荐
- Linux 系统下安装 rz/sz 命令及使用说明
Linux 系统下安装 rz/sz 命令及使用说明 rz/sz命令,实现将本地的文件上传到服务器或者从服务器上下载文件到本地,但是很多Linux系统初始并没有这两个命令,以下为安装和使用的具体步骤: ...
- POJ3660 Cow Contest floyd传递闭包
Description N (1 ≤ N ≤ 100) cows, conveniently numbered 1..N, are participating in a programming con ...
- 电脑只能上QQ,不能上网浏览网站怎么解决
这个问题通常是因为网络的DNS解析出错引起的.QQ一类的聊天软件有自动的网络解析,不需要DNS便可以使用,而一般的浏览器是需要DNS解析来访问网页的.所谓DNS,即域名服务器(Domain Name ...
- Spring Boot中使用Swagger2构建API文档
程序员都很希望别人能写技术文档,自己却很不愿意写文档.因为接口数量繁多,并且充满业务细节,写文档需要花大量的时间去处理格式排版,代码修改后还需要同步修改文档,经常因为项目时间紧等原因导致文档滞后于代码 ...
- 设置双击直接打开.ipynb文件
本文环境:win10(64)+anaconda3(64) anaconda3安装好后,可在开始菜单下查看 背景:jupyter notebook打开后无法更改路径,只能在默认路径下upload文件(如 ...
- 搭建hadoop、hdfs环境--ubuntu
最近在学习hadoop相关知识,就在本机上安装了hadoop,遇到了一些坑,也学到了不少.仅此记录我的安装过程,及可能遇到的问题.供参考.交流沟通见页末. 软件准备 > 虚拟机(VMware) ...
- Python爬虫从入门到放弃(二十三)之 Scrapy的中间件Downloader Middleware实现User-Agent随机切换
总架构理解Middleware 通过scrapy官网最新的架构图来理解: 这个图较之前的图顺序更加清晰,从图中我们可以看出,在spiders和ENGINE提及ENGINE和DOWNLOADER之间都可 ...
- MATLAB批量读入图片
%% import pictures, and save into images{img_num} function [images, img_num, vertical_border] = impo ...
- mac系统读写NTFS格式的移动硬盘
Mac OS X默认情况下,对于NTFS的移动硬盘只能读不能写,可通过将移动硬盘格式化为exFAT 或者安装NTFS相关的工具,达到可读写的目的,但对于系统的安全性方面,以上方式得不到保证:在Mac ...
- 截取TableView生成图片
先看一下实例效果: 如果所示,这是一个在APP中截图,并调起微信客户端,发送给好友的例子,图片就是一个tableView的截图. 先实现一个小例子,如果tableVIew里面的内容,没有超过当前屏幕显 ...