定制最简linux和根文件系统(平台龙芯1B开发板) 联系客服

发布时间 : 星期二 文章定制最简linux和根文件系统(平台龙芯1B开发板)更新完毕开始阅读ade2f25102768e9950e73814

已经把需要的东西放到当前目录的_install下

然后在这基础上制作根文件系统

3.3. 构建根文件系统 3.3.1. 建立系统根目录

[root@localhost nfsramdisk]# mkdir LS1B [root@localhost nfsramdisk]# cd LS1B [root@localhost LS1B]# ls

[root@localhost LS1B]# mkdir dev home proc tmp var etc lib mnt sys usr etc/rc.d root var/log [root@localhost LS1B]# ls

dev etc home lib mnt proc root sys tmp usr var [root@localhost LS1B]#

3.3.2. 建立设备文件

建立console和串口设备文件

[root@localhost LS1B]# mknod -m 600 dev/console c 5 1 [root@localhost LS1B]# mknod -m 600 dev/ttyS2 c 4 66 [root@localhost LS1B]#

9

3.3.3. 建立系统配置文件

注意:以下的配置文件不是在开发主机的根目录下创建的。

3.3.3.1. 添加etc/inittab文件

[root@localhost LS1B]# vim etc/inittab

::sysinit:/etc/rc.d/rc.sysinit // 指定系统启动后首先执行的文件 #Example of how to put a getty on a serial line(rot a terminal)

ttyS2::respawn:~/bin/sh #no login(启动后进入shell) #::respawn:/sbin/getty -L ttyS2 115200 vt100 #use login #tty::respawn:~/bin/sh

#Stuff to do when restarting the init process ::restart:/sbin/init

#Stuff to do before rebooting

::ctrlaltdel:/sbin/reboot // 捕捉ctrl+alt+del键,重启文件系统 ::shutdown:/bin/umount -a -r // 当关机时卸载所有文件系统 ::shutdown:/sbin/swapoff -a ~ ~

\新] 14L, 553C 已写入 [root@localhost LS1B]#

3.3.3.2. 新建etc/rc.d/rc.sysinit文件

[root@localhost LS1B]# vim etc/rc.d/rc.sysinit

#!/bin/sh

#Set binary path

export PATH=/bin:/sbin:/usr/bin:/usr/sbin

#Config dev environment

mount -t tmpfs -o size=64k,mode=0755 tmpfs /dev mkdir -p /dev/pts

mount -t devpts devpts /dev/pts

#mknod -m 600 /dev/console c 5 1 #mknod -m 600 /dev/ttyS2 c 4 66

#mount all filesystem defined in /etc/fstab

10

echo \/bin/mount -a

echo \

echo /sbin/mdev>/proc/sys/kernel/hotplug /sbin/mdev -s

#Set hostname

/bin/hostname \export LOGNAME=root

\新] 24L, 489C 已写入 [root@localhost LS1B]#

3.3.3.3. 新建etc/fstab文件

[root@localhost LS1B]# vim etc/fstab

sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 tmpfs /tmp tmpfs defaults 0 0 tmpfs /mnt tmpfs defaults 0 0 tmpfs /root tmpfs defaults 0 0 tmpfs /var/log tmpfs defaults 0 0 ~

\新] 7L, 213C 已写入 [root@localhost LS1B]#

3.3.3.4. 新建etc/profile文件

[root@localhost LS1B]# vim etc/profile

#!/bin/sh

#/etc/profile:system-wide .profile file for the Bourne shells echo \

#Set search library path

export LD_LIBRARY_PATH=/lib:/usr/lib

#Set user path

export PATH=/bin:/sbin:/usr/bin:/usr/sbin

#Set PS1

11

USER=\LOGNAME=$USER PS1='[\%u@\\h:\\w]\\$' PATH=$PATH

alias ll=\

echo \

\已写入 [root@localhost LS1B]#

3.3.3.5. 修改系统配置文件权限

[root@localhost LS1B]# chmod 755 etc/*

[root@localhost LS1B]# chmod 755 etc/rc.d/rc.sysinit [root@localhost LS1B]#

3.3.3.6. 拷贝Busybox文件

[root@localhost ~]# cd /home/dev/test/busybox-1.19.2-default [root@localhost busybox-1.19.2-default]# ls /nfsramdisk/LS1B dev etc home lib mnt proc root sys tmp usr var

[root@localhost busybox-1.19.2-default]# cp -rf _install/* /nfsramdisk/LS1B [root@localhost busybox-1.19.2-default]# ls /nfsramdisk/LS1B

bin dev etc home lib linuxrc mnt proc root sbin sys tmp usr var

至此根文件系统制作完成!

4. 编译linux

在强调一下,我使用的是red hat,直接root登录,手册《1B开发板用户手册》使用的是Ubuntu。您可能又不一样,这个自己随机应变。

还有手册《1B开发板用户手册》用的是linux-2.6.21,而我用的是开发板光盘中的linux 3.0。这个同样根据自己情况随机应变。

12