[ARM 驅動]掛載文件系統

說明:我是將開發板的文件系統掛載在本機Linux系統的/opt上,路徑爲/opt/fsmini


第一步、

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


第二步、

  1. 啓動開發板,切換到u-boot菜單中,輸入q,Linux主機IP和開發板IP地址前24位要相同,如我的,Linux主機IP地址:192.168.1.3  開發板IP地址:192.168.1.17

  2. 輸入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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章