构建基本的嵌入式Linux根文件系统
构建基本的嵌入式Linux根文件系统
构建基本的嵌入式Linux根文件系统
(1)创建根文件系统的基本目录结构。
我把这个过程做成了shell脚本(文件名为mkroot) ,很方便!
#! /bin/sh
echo "creatint rootfs dir......"
mkdir rootfs
cd rootfs
echo "making dir : bin dev etc lib proc sbin sys usr"
mkdir bin dev etc lib proc sbin sys usr #必备的8个目录
mkdir usr/bin usr/lib usr/sbin lib/modules
# Don't use mknod ,unless you run this Script as root !
# mknod -m 600 dev/console c 5 1
# mknod -m 666 dev/null c 1 3
echo "making dir : mnt tmp var"
mkdir mnt tmp var
chmod 1777 tmp
mkdir mnt/etc mnt/jffs2 mnt/yaffs mnt/data mnt/temp
mkdir var/lib var/lock var/log var/run var/tmp
chmod 1777 var/tmp
echo "making dir : home root boot"
mkdir home root boot
echo "done"
在你想要建立根文件系统的地方,运行:
[tekkamanninja@Tekkaman-Ninja nfs]$ ./mkroot
creatint rootfs dir......
making dir : bin dev etc lib proc sbin sys usr
making dir : mnt tmp var
making dir : home root boot
done
[tekkamanninja@Tekkaman-Ninja nfs]$ cd rootfs/dev/
[tekkamanninja@Tekkaman-Ninja dev]$ su
口令:
[root@Tekkaman-Ninja dev]# mknod -m 600 console c 5 1;mknod -m 666 null c 1 3;exit
exit
[tekkamanninja@Tekkaman-Ninja dev]$
(2)配置、编译和安装Busybox-1.9.1-----我没用本文章的busybox配置,参见同文件夹下的文档,我的是静态的,如果以后要改成动态的,可参见本文章
[tekkamanninja@Tekkaman-Ninja source]$ tar -xjvf busybox-1.9.1.tar.bz2
修改Makefile文件:
[tekkamanninja@Tekkaman-Ninja busybox-1.9.1]$ pwd
/home/tekkamanninja/working/source/busybox-1.9.1
[tekkamanninja@Tekkaman-Ninja bu
相关文档:
1). /etc/sysconfig/network
主要用于设置主机名称(Host Name)以及能否启动Network。变动此文件后需重启Linux才能生效。
2). /etc/sysconfig/network-scrips/ifcfg-eth0
设置网卡参数,如GATEWAY,TYPE,DEVICE,NETMASK,IPADDR,USERCTL等...
3). /etc/resolv.conf
如果要设置DNS功能进行主机名称和IP的对应。那么resol ......
试一试,其实很简单的。
mkdir -m 775 filename
-m : 设置文件的权限。直接设置,不需要默认权限。
[root@localhost home]# mkdir text1
[root@localhost home]# mkdir -m 777 text2
[root@localhost home]# ls -l
drwxr-xr-x 2 root root 4096 2010-1-19 08:03 text1
drwxrwxrwx 2 root root 4096 2010-1-19 08:04 ......
文档创建日期:2010-02-19
001 // P174: 2.编程题 (9)将数组a中相同元素只保留第一个,其余删除。
002
003 // The beginning of C program: test06-09.c.
004
005  ......
#include <linux/module.h>
MODULE_LICENSE("GPL");
static void hello_init(void);
static void hello_exit(void);
static void hello_init(void)
{
printk("init");
}
static void hello_exit(void)
{
printk("exit");
}
.
module_init(hello_init);
m ......
这是交Linux报告的论文:
部分资料是从IBM提供给我们学院的资料上翻译的.
主要是关于Linux文件系统的,希望对大家了解Linux系统有所帮助.
Linux的根文件系统下各个目录的作用:
在Linux中文件系统构建和UNIX中差不多,但两者还是有一些小的出入。
下图是Linux中文件系统结构的 ......