天天看點

arm linux 啟動檔案/etc/init.d/rcs,[ARM 驅動]挂載檔案系統

說明:我是将開發闆的檔案系統挂載在本機Linux系統的/opt上,路徑為/opt/fsmini。

第一步、

首先配置tftp和nfs服務,在我的部落格裡面的《嵌入式Linux開發》一類中有詳細說明。

第二步、啟動開發闆,切換到u-boot菜單中,輸入q,Linux主機IP和開發闆IP位址前24位要相同,如我的,Linux主機IP位址:192.168.1.3  開發闆IP位址:192.168.1.17

輸入q,退出u-boot菜單後,按順序輸入以下三條指令:

setenv bootargs noinitrd root=/dev/nfs rw nfsroot=192.168.1.3:/opt/fsmini ip=192.168.1.17:192.168.1.3::255.255.255.0::eth0:off console=tty init=/linuxrc

//其中192.168.1.17為單闆ip位址,192.168.1.3為本機伺服器的位址,/opt/fsmini為挂載檔案的位置

setenv bootcmd 'tftp 0x30007FC0 /tftpboot/uImage;bootm 0x30007FC0'

//其中tftpboot/uImage為配置tftp的路徑,uImage為編譯好的映像檔案。

saveenv

//儲存配置

第三步、

打開檔案目錄進/etc/NetworkManager/NetworkManager.conf,并進行修改,managed中的false改為true。

[main]

plugins=ifupdown,keyfile,ofono

dns=dnsmasq

[ifupdown]

managed=true

第四步、

設定靜态ip

打開檔案目錄/etc/network/interfaces

在:

auto lo

iface lo inet loopback

下面添加如下内容:

auto eth0

iface eth0 inet static

address 192.168.1.3

gateway 192.168.1.1

netmask 255.255.255.0

完整設定如下:auto lo

iface lo inet loopback

//添加内容:

auto eth0

iface eth0 inet static

address 192.168.1.3

gateway 192.168.1.1

netmask 255.255.255.0

在檔案目錄/etc/resolv.conf(預設情況這個檔案是不存在的)下添加如下内容

nameserver 202.96.128.86

重新開機網絡:sudo /etc/init.d/networking restart

第五步、

在opt/fsmini/etc/init.d/rcS 配置如下:#!/bin/sh

ifconfig eth0 192.168.1.17

mount -a

mkdir /dev/pts

mount -t devpts devpts /devpts

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

mdev -s

第六步、

在opt/fsmini/etc/fstab來自動挂載檔案系統,修改etc/init.d/rcS加入要自動運作的指令,修改如下:

/etc/fstab

# device mount-point type options dump fsck order

proc /proc proc defaults 0 0

tmpfs /tmp tmpfs defaults 0 0

#添加部分

sysfs /sys sysfs defaults 0 0

tmpfs /dev tmpfs defaults 0 0

第七步、

s3c2410、s3c2440的序列槽名是s3c_2410_serial0、s3c_2410_serial1、s3c_2410_serial2,

而不是ttySAC0、ttySAC1、ttySAC2,是以需要修改opt/fsmini/etc/inittab檔案 ,修改如下:# /etc/inittab

::sysinit:/etc/init.d/rcS

s3c2410_serial0::askfirst:-/bin/sh

::ctrlaltdel:/sbin/reboot

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

附加:

有時候可能會出現以下問題:unable to open initial console或Warning: unable to open an initial console.

檔案系統無法加載,解決此類方法可以手動在檔案系統建立console節點:

cd opt/fsmini/dev

mknod -m 660 console c 5 1

mknod -m 660 null c 1 3