第17 3章 構建根檔案系統

2021-08-26 15:18:54 字數 1886 閱讀 9109

# /etc/inittab

::sysinit:/etc/init.d/rcs

ttysac0::askfirst:-/bin/sh

::ctrlaltdel:/sbin/reboot

::shutdown:/bin/umount -a -r

#!/bin/sh

ifconfig eth0 ***.***.***.***

mount -a

# chmod +x etc/init.d/rcs

#device mount-point type    options     dump    fsck order

proc /proc proc defaults 0

0tmpfs /tmp tmpfs defaults 0

0

內容如下,表示執行」mount -a」命令後將掛接proc、tmpfs檔案系統

引數名

說明預設值

auto

noauto

決定執行」mount -a」時是否自動掛接

auto:掛接;noauto:不掛接

auto

user

nouser

user:允許普通使用者掛接裝置

nouser:只允許root使用者掛接裝置

nouser

exec

noexec

exec:允許執行所掛接裝置上的程式

noexec:不允許執行所掛接裝置上的程式

exec

ro以唯讀方式掛接檔案系統-rw

以讀寫方式掛接檔案系統

-sync

async

sync:修改檔案時,它會同步寫入裝置中

async:不會同步寫入

sync

defaults

rw、suid、dev、exec、auto、nouser、async等的組合-

- dump程式根據dump欄位的值來決定這個檔案系統是否需要備份,如果沒有這個字段,或其值為0,則dump程式忽略這個檔案系統

- fsck程式根據fsck oder欄位來決定磁碟的檢查順序,一般來說對於根檔案系統這個欄位設為1,其它檔案系統設為2。如果設為0,則fsck程式忽略這個檔案系統

靜態建立裝置檔案

mknod console c 5

1mknod null c 1

3mknod ttysac0 c 204

64mknod mtdblock0 b 31

0mknod mtdblock1 b 31

1

使用mdev建立裝置檔案

mdev是udev的簡化版本,它也是通過讀取核心資訊來建立裝置檔案

要使用mdev,需要核心支援sysfs檔案系統,為了減少對flash的讀寫,還要支援tmpfs檔案系統。先確保核心已經配置了config_sysfs、config_tmpfs配置項

mount -t tmpfs mdev /dev #使用記憶體檔案系統,減少對flash的讀寫

mkdir /dev/pts #devpts用來支援外部網路連線(telnet)的虛擬終端

mount -t devpts devpts /dev/pts

mount -t sysfs sysfs /sys #mdev通過sysfs檔案系統獲得裝置資訊

echo /bin/mdev > /proc/sys/kernel/hotplug #設定核心,當有裝置拔插時呼叫/bin/mdev程式

mdev -s

#在/dev目錄下生成核心支援的所有裝置的節點

構建根檔案系統

wget make defconfig make cross compile arm linux gnueabi make install編譯完install後會預設安裝在busybox原始碼目錄下 install目錄內,但是此檔案系統並不完整,只有四個目錄 root ls bin linuxrc ...

構建根檔案系統

wget make defconfig make cross compile arm linux gnueabi make install編譯完install後會預設安裝在busybox原始碼目錄下 install目錄內,但是此檔案系統並不完整,只有四個目錄 root ls bin linuxrc ...

構建根檔案系統

tar xjf busybox 1.7.0.tar.bz2 cd busybox 1.7.0 make menuconfig 編譯busybox 1.7.0出現如下錯誤 busybox 1.7.0 make menuconfig makefile 405 mixed implicit and nor...