本文档作在XCU平台上实现内存文件系统启动的记录文件,具体记录如下:
平台:ubuntu 14.04
硬件:XCU A样
编译器:gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu
编译器安装位置:/opt/ gcc-linaro-4.9-2014.11-x86_64_aarch64-linux-gnu
文件系统:busybox-1.25.1.tar.bz2
一:内存文件系统的功能说明
从目前状态谈一谈自己对文件系统的存在形式的认知,通常我们谈论的文件系统主要是指文件系统中的文件即编译出的文件认知,在文件存在的介质有NFS/ext2/ext3/ext4/ramdisk等,这里主要进行RAM-FileSystem的探讨,其分为:ramfs/ramdisk/tmpfs,这里主要进行ramfs的配置。
二:busybox编译最小系统:
1. 编译选项:
Busybox Settings ---> Build Options ---> [*] Build BusyBox as a static binary (no shared libs) (aarch64-linux-gnu-) Cross Compiler prefix |
2. 编译:make / make install
3. 创建文件:
mkdir -p ./_install/etc/init.d
mkdir -p ./_install/dev
mkdir -p ./_install/proc
mkdir -p ./_install/sys
ln -sf /sbin/init ./_install/init
4. 配置文件编写:
a. vi ./_install/etc/fstab
# /etc/fstab: static file system information. # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 sysfs /sys sysfs defaults 0 0 |
b. 1. vi ./_install/etc/init.d/rcS 2.chmod 777 ./_install/etc/init.d/rcS
#! /bin/sh /bin/mount -a mkdir -p /dev /bin/mount -t devtmpfs devtmpfs /dev cat /etc/motd |
c. vi ./_install/etc/motd
_ _ | ||_| | | _ ____ _ _ _ _ | || | _ \| | | |\ \/ / | || | | | | |_| |/ \ |_||_|_| |_|\____|\_/\_/ Busybox Rootfs |
d. 1. mknod _install/dev/console c 5 1 2. chmod 660 _installl/dev/console
e. 1. mknod _install/devnull c 1 3 2. chmod 660 _install/dev/null
三: 内核编译
1. 环境配置:export
export CROSS_COMPILE=/opt/gcc-linaro-4.9-2015.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu- |
2. 配置选项:
make s32v234_defconfig |
General setup ---> [*] Initial RAM filesystem and RAM disk (initramfs/initrd) support (/home/wang_wei/busybox-1.25.1/_install) Initramfs source file(s) Device Drivers ---> [*] Block devices ---> <*> RAM block device support (16) Default number of RAM disks (20480) Default RAM disk size (kbytes) |
3. 编译链接:make / make install