本文轉載自:http://www.cnblogs.com/king-77024128/articles/2275545.html
/Linuxrc 執行init 進程初始設定檔案。主要工作是把已安裝根檔案系統中的/etc 安裝為ramfs,並拷貝/mnt/etc/目錄下所有檔案到/etc,這裡存放系統啟動後的許多特殊檔案;接著Linuxrc 重新構建檔案配置表inittab;之後執行系統初始化進程/sbin/init。
/mnt/etc/init.d/rcS 完成各個檔案系統的 mount,再執行/usr/etc/rc.local;通過rcS 可以調用 dhcp 程式配置網路。rcS 執行完了以後,init 就會在一個 console 上,按照 inittab 的指示開一個 shell,或者是開 getty + login,這樣使用者就會看到提示輸入使用者名稱的提示符。
/usr/etc/rc.local 這是被init.d/rcS 檔案調用執行的特殊檔案,與Linux 系統硬體平台相關,如安裝核心模組、進行網路設定、運行應用程式、啟動圖形介面等。
/usr/etc/profile rc.local 首先執行該檔案配置應用程式需要的環境變數等。
Linuxrc
#!/bin/sh
echo "mount /etc as ramfs"
/bin/mount -n -t ramfs ramfs /etc
/bin/cp -a /mnt/etc/* /etc
echo "re-create the /etc/mtab entries"
# re-create the /etc/mtab entries
/bin/mount -f -t cramfs -o remount,ro /dev/mtdblock/3 /
/bin/mount -f -t ramfs ramfs /etc
exec /sbin/init
rcS
/mnt/etc/init.d/
#!/bin/sh
/bin/mount -a
exec /usr/etc/rc.local
rc.local
/usr/etc/
#!/bin/sh
. /usr/etc/profile
echo "HELLO! Embest"
echo "ifconfig eth0 192.168.0.10"
ifconfig eth0 192.168.0.10 可自行配置開發板IP
Profile
/usr/etc/
#!/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin 設定命令工具所在位置
我對這其中的執行順序理解:
我在我的開發板中的(位置)/etc/init.d/rcS 檔案中添加了關於對QT應用程式的執行設定需要的庫函數的路徑做export聲明,鑒於對上述執行順序的理解,我感覺對在rcS檔案中添加並自動啟動並執行應用程式,必須要指明所需支援庫的路徑。若在(位置)/etc/profile檔案中添加對應用程式庫的路徑聲明是不行的,因為rcS檔案中程式的要比/etc/profile中的程式先執行。所以,想想吧……