文档摘要:
本文主要在最小文件系统的基础上添加常用的功能。

文档说明:
1.文件系统位于宿主机的/mnt/armlinux/rootfs目录下;
2.注意文件路径。


添加运行库
由于尚未添加库文件,所以还不能运行非静态编译的文件,需要将编译器目录下的库文件复制至文件系统的lib目录中。

# cp 4.3.3/arm-none-linux-gnueabi/libc/armv4t/lib/*  /mnt/armlinux/rootfs/lib

安装模块

#make modules_install INSTALL_MOD_PATH=/mnt/armlinux/rootfs

用户管理
添加以下三个文本文件

etc/passwd
用户文件,内容为:

root:x:0:0:Linux User,,,:/root:/bin/sh

etc/shadow
密码文件,内容为:

root:$1$56YxCPNt$PLyr9O6i/GwR.Ogu/JT9A0:15297:0:99999:7:::

etc/group
组文件,内容为:

root:x:0:root

注意事项:
以上文件可以直接在宿主机上复制相关内容,
登陆系统后,就可以直接adduser添加其他用户;
shadow文件中的密文是随便写的,保存后用passwd命令更改就可以了;


设置主机名称:
建立etc/sysconfig/HOSTNAME 文件
内容为希望配置的主机名称:

localhost.localdomain

修改etc/rcS文件
添加一行读取文件中的主机名称
if [ -f /etc/sysconfig/HOSTNAME ]; then
/bin/hostname -F /etc/sysconfig/HOSTNAME
fi


配置网络参数:
建立etc/network/eth0文件
内容如下:

IPADDR=192.168.1.6
NETMASK=255.255.255.0
GATEWAY=192.168.1.2
MAC=00:11:22:33:44:55

注意事项:网卡的物理地址,第一字节最后2个bit值应该为0

建立配置脚本sbin/netset

if [ -f /etc/network/eth0 ] ; then
    source /etc/network/eth0
    ifconfig eth0 down
    ifconfig eth0 hw ether $MAC
    ifconfig eth0 $IPADDR netmask $NETMASK up
    route add default gw $GATEWAY
fi
echo Done 

并加入至rcS中调用.
注意事项:
1.此段脚本是从/etc/network/eth0文件中读取各项参数,并进行配置;
2.采用nfs根起文件系统时,最好不要在启动后重新配置IP.


配置DNS:
新建etc/resolv.conf文件,添加DNS服务器(最多指定3条)
nameserver 8.8.8.8


修改命令提示符:
在etc/init.d/rcS中添加

export PS1='[\u@\h \w]\$ '

参考文献:
《构建嵌入式linux系统》