1. 程式人生 > >基於busybox製作mini2440根檔案系統及使用nfs掛載

基於busybox製作mini2440根檔案系統及使用nfs掛載

 

常見的檔案系統有yaffs2, jffs2,他們是適用於根檔案系統映象存在於NAND Flash上的情況。而傳統的Linux EXT2/EXT3檔案系統格式適用於傳統的block裝置,比如SD卡或者硬碟。
cramfs同時適用於以上兩種情況。其不管採用哪種格式,核心都必須支援它,這是根檔案系統正確掛載的前提條件。其核心支援它是指:在對核心進行編譯的時候必須加入對相應檔案系統的支援。

由於在核心沒有加入對yaffs2的支援,因此在最後根據mkyaffs2image製作yaffs2型別的根檔案系統,在載入之前,必須要對linux核心進行打yaffs2的補丁。將yaffs檔案系統編譯進核心。之後在啟動linux核心時候才能識別yaffs2檔案系統。

我在自己的mini2440開發板上面通過nfs來載入製作好的"根檔案系統",這裡的"根檔案系統"指的是:沒有經過像mkyaffs2image工具轉化的原始的類linux目錄結構的檔案。其檔案包括Linux啟動時所必須的目錄和關鍵性的檔案。nfs便於載入及驗證我們製作的檔案系統的正確性。其載入時檔案系統不用讀寫flash。

*******************************第一步:下載busybox並編譯********************************

下載busybox-1.19.2.tar.bz2

http://www.busybox.net/downloads/

解壓並進入目錄
# tar jxvf busybox-1.19.2.tar.bz2
# cd busybox-1.19.2修改Makefile
# gedit Makefile &
把 164 行修改為:
CROSS_COMPILE = arm-linux-
把 190 行修改為:
ARCH = arm

配置
# make menuconfig 或者make xconfig(為圖形化介面)

在Busybox Settings->Build Options之下選擇Build BusyBox as a static binary (no shared libs) (STATIC)以靜態的方式來編譯busybox。

其他的比如安裝目錄及常用命令我沒有設定,採用的是預設值。如果有需要再新增。
編譯
# make

安裝
# make install

在busybox-1.19.2目錄下可以找到_install子目錄,其中就是編譯好的命令。

[busybox-1.19.2]$ll

total 12
drwxr-xr-x 2 root root 4096 Feb  9 14:43 bin
lrwxrwxrwx 1 root root   11 Feb  9 14:43 linuxrc -> bin/busybox
drwxr-xr-x 2 root root 4096 Feb  9 14:43 sbin
drwxr-xr-x 4 root root 4096 Feb  9 14:43 usr

並將以上檔案copy到/mini2440/rootfs目錄下面

 *******************第二步:建立所需的目錄及檔案*************************

1: 建立目錄

使用以下指令碼

[[email protected] /mini2440]$cat mkDir.sh //具有執行許可權
#!/bin/sh
echo "------Create rootfs directons start...--------"
mkdir /mini2440/rootfs
cd /mini2440/rootfs
echo "--------Create root,dev....----------"
mkdir root dev etc boot tmp var sys proc lib mnt home usr
mkdir etc/init.d etc/rc.d etc/sysconfig
mkdir usr/sbin usr/bin usr/lib usr/modules
echo "make node in dev/console dev/null"
mknod -m 600 dev/console c 5 1
mknod -m 600 dev/null c 1 3
mkdir mnt/etc mnt/jffs2 mnt/yaffs mnt/data mnt/temp
mkdir var/lib var/lock var/run var/tmp
chmod 777 tmp
chmod 777 var/tmp
echo "-------make direction done---------"

上面shell中建立的目錄有的沒有使用。執行問指令碼目錄結構如下:

[[email protected] /mini2440/rootfs]$ls
boot  dev  etc  home  lib  mnt  proc  root  sys  tmp  usr  var
[[email protected] /mini2440/rootfs]$tree
.
|-- boot
|-- dev
|   |-- console
|   `-- null
|-- etc
|   |-- init.d
|   |-- rc.d
|   `-- sysconfig
|-- home
|-- lib
|-- mnt
|   |-- data
|   |-- etc
|   |-- jffs2
|   |-- temp
|   `-- yaffs
|-- proc
|-- root
|-- sys
|-- tmp
|-- usr
|   |-- bin
|   |-- lib
|   |-- modules
|   `-- sbin
`-- var
    |-- lib
    |-- lock
    |-- run
    `-- tmp

28 directories, 2 files:

2:修改與新增系統初始化指令碼 都在 /mini2440/rootfs目錄下面進行

(1)etc/inittab 系統init程序配置檔案,並更改許可權 chmod +x inittab
::sysinit:/etc/init.d/rcS
::askfirst:-/bin/sh #沒有這就不行,就不能開啟console控制檯。
::restart:/sbin/init
::ctrlaltdel:/sbin/reboot
::shutdown:/bin/umount -a -r
::shutdown:/sbin/swapoff -a

(2)etc/init.d/rcS系統啟動載入項檔案,並更改許可權chmod +x etc/init.d/rcS

#!/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
runlevel=S
prevlevel=N
umask 022
export PATH runlevel prevlevel
mount -a
mkdir /dev/pts
mount -t devpts devpts /dev/pts #用於telnet登入時使用

echo /sbin/mdev > /proc/sys/kernel/hotplug
mdev -s
mkdir -p /var/lock
/bin/hostname -F /etc/sysconfig/HOSTNAME

(3)etc/fstab 系統掛載檔案系統列表檔案

#device mount-point type option dump fsck order
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
mdev /dev ramfs defaults 0 0
none /var ramfs defaults 0 0
none /tmp ramfs defaults 0 0

(4)etc/profile使用者環境配置檔案

# Ash profile
# vim: syntax= sh
# No core file by defaults
# ulimit - S - c 0> / dev/ null 2> & 1

USER="id -un"
LOGNAME=$USER
PS1="[\[email protected]\h \w]#"  #\w 目錄將顯示全路徑
PATH=$PATH
HOSTNAME= '/bin/hostname'
alias cls="clear"
export USER LOGNAME PS1 PATH 
 (5)/etc/passwd shadow 使用者檔案以及密碼
把主機的passwd shadow 檔案拷貝到/etc下

# cp /etc/passwd  /mini2440/rootfs/etc
# cp /etc/group /mini2440/rootfs/etc
# cp /etc/shadow /mini2440/rootfs/etc

(6)etc/sysconfig/HOSTNAME的內容為你自己的名字即可,內容為"mini2440"
        gedit /etc/sysconfig/HOSTNAME  然後鍵入 mini2440

***********************第三步:以nfs方式載入測試********************************

測試之前必須確保nfs服務已經開啟,uboot中的bootargs引數已經設定成功。

bootcmd=nfs 0x30008000 192.168.1.149:/opt/FriendlyARM/uImage;bootm
bootargs=noinitrd root=/dev/nfs proto=tcp,nolock,nfsvers=3, rw nfsroot=192.168.1.149:/mini2440/rootfs ip=192.168.1.144:192.168.1.149::255.255.255.0 console=ttySAC0,115200 init=/linuxrc mem=64M

在reboot的時候

[@mini2440 /etc]#reboot
[@mini2440 /etc]#umount: mdev busy - remounted read-only
是由於在reboot的時候執行了 /etc/inittab中的::shutdown:/bin/umount -a -r 需要重新掛載裝置所致,可以去掉此行。

有待改進:使用mkyaffs2image製作成為最終的根檔案系統,燒寫到flash中,啟動的時候從flash中讀取內容。後面會做這一實驗。
最終rootfs中的目錄結構如下:

[[email protected] /mini2440/rootfs]$tree
.
|-- bin
|   |-- addgroup -> busybox
|   |-- adduser -> busybox
|   |-- ash -> busybox
|   |-- base64 -> busybox
|   |-- busybox
|   |-- cat -> busybox
|   |-- catv -> busybox
|   |-- chattr -> busybox
|   |-- chgrp -> busybox
|   |-- chmod -> busybox
|   |-- chown -> busybox
|   |-- cp -> busybox
|   |-- cpio -> busybox
|   |-- cttyhack -> busybox
|   |-- date -> busybox
|   |-- dd -> busybox
|   |-- delgroup -> busybox
|   |-- deluser -> busybox
|   |-- df -> busybox
|   |-- dmesg -> busybox
|   |-- dnsdomainname -> busybox
|   |-- dumpkmap -> busybox
|   |-- echo -> busybox
|   |-- ed -> busybox
|   |-- egrep -> busybox
|   |-- false -> busybox
|   |-- fdflush -> busybox
|   |-- fgrep -> busybox
|   |-- fsync -> busybox
|   |-- getopt -> busybox
|   |-- grep -> busybox
|   |-- gunzip -> busybox
|   |-- gzip -> busybox
|   |-- hostname -> busybox
|   |-- hush -> busybox
|   |-- ionice -> busybox
|   |-- iostat -> busybox
|   |-- ip -> busybox
|   |-- ipaddr -> busybox
|   |-- ipcalc -> busybox
|   |-- iplink -> busybox
|   |-- iproute -> busybox
|   |-- iprule -> busybox
|   |-- iptunnel -> busybox
|   |-- kill -> busybox
|   |-- linux32 -> busybox
|   |-- linux64 -> busybox
|   |-- ln -> busybox
|   |-- login -> busybox
|   |-- ls -> busybox
|   |-- lsattr -> busybox
|   |-- lzop -> busybox
|   |-- makemime -> busybox
|   |-- mkdir -> busybox
|   |-- mknod -> busybox
|   |-- mktemp -> busybox
|   |-- more -> busybox
|   |-- mount -> busybox
|   |-- mountpoint -> busybox
|   |-- mpstat -> busybox
|   |-- mt -> busybox
|   |-- mv -> busybox
|   |-- netstat -> busybox
|   |-- nice -> busybox
|   |-- pidof -> busybox
|   |-- ping -> busybox
|   |-- ping6 -> busybox
|   |-- pipe_progress -> busybox
|   |-- powertop -> busybox
|   |-- printenv -> busybox
|   |-- ps -> busybox
|   |-- pwd -> busybox
|   |-- reformime -> busybox
|   |-- rev -> busybox
|   |-- rm -> busybox
|   |-- rmdir -> busybox
|   |-- rpm -> busybox
|   |-- run-parts -> busybox
|   |-- scriptreplay -> busybox
|   |-- sed -> busybox
|   |-- setarch -> busybox
|   |-- setserial -> busybox
|   |-- sh -> busybox
|   |-- sleep -> busybox
|   |-- stat -> busybox
|   |-- stty -> busybox
|   |-- su -> busybox
|   |-- sync -> busybox
|   |-- tar -> busybox
|   |-- touch -> busybox
|   |-- true -> busybox
|   |-- umount -> busybox
|   |-- uname -> busybox
|   |-- usleep -> busybox
|   |-- vi -> busybox
|   |-- watch -> busybox
|   `-- zcat -> busybox
|-- boot
|-- dev
|   |-- console
|   |-- null
|   `-- pts
|-- etc
|   |-- fstab
|   |-- fstab~
|   |-- init.d
|   |   |-- rcS
|   |   `-- rcS~
|   |-- inittab
|   |-- inittab~
|   |-- profile
|   |-- rc.d
|   `-- sysconfig
|       |-- HOSTNAME
|       `-- HOSTNAME~
|-- home
|-- lib
|-- linuxrc -> bin/busybox
|-- mnt
|   |-- data
|   |-- etc
|   |-- jffs2
|   |-- temp
|   `-- yaffs
|-- proc
|-- root
|-- sbin
|   |-- acpid -> ../bin/busybox
|   |-- adjtimex -> ../bin/busybox
|   |-- arp -> ../bin/busybox
|   |-- blkid -> ../bin/busybox
|   |-- blockdev -> ../bin/busybox
|   |-- bootchartd -> ../bin/busybox
|   |-- depmod -> ../bin/busybox
|   |-- devmem -> ../bin/busybox
|   |-- fbsplash -> ../bin/busybox
|   |-- fdisk -> ../bin/busybox
|   |-- findfs -> ../bin/busybox
|   |-- freeramdisk -> ../bin/busybox
|   |-- fsck -> ../bin/busybox
|   |-- fsck.minix -> ../bin/busybox
|   |-- getty -> ../bin/busybox
|   |-- halt -> ../bin/busybox
|   |-- hdparm -> ../bin/busybox
|   |-- hwclock -> ../bin/busybox
|   |-- ifconfig -> ../bin/busybox
|   |-- ifdown -> ../bin/busybox
|   |-- ifenslave -> ../bin/busybox
|   |-- ifup -> ../bin/busybox
|   |-- init -> ../bin/busybox
|   |-- insmod -> ../bin/busybox
|   |-- klogd -> ../bin/busybox
|   |-- loadkmap -> ../bin/busybox
|   |-- logread -> ../bin/busybox
|   |-- losetup -> ../bin/busybox
|   |-- lsmod -> ../bin/busybox
|   |-- makedevs -> ../bin/busybox
|   |-- man -> ../bin/busybox
|   |-- mdev -> ../bin/busybox
|   |-- mkdosfs -> ../bin/busybox
|   |-- mke2fs -> ../bin/busybox
|   |-- mkfs.ext2 -> ../bin/busybox
|   |-- mkfs.minix -> ../bin/busybox
|   |-- mkfs.vfat -> ../bin/busybox
|   |-- mkswap -> ../bin/busybox
|   |-- modinfo -> ../bin/busybox
|   |-- modprobe -> ../bin/busybox
|   |-- nameif -> ../bin/busybox
|   |-- pivot_root -> ../bin/busybox
|   |-- poweroff -> ../bin/busybox
|   |-- raidautorun -> ../bin/busybox
|   |-- reboot -> ../bin/busybox
|   |-- rmmod -> ../bin/busybox
|   |-- route -> ../bin/busybox
|   |-- runlevel -> ../bin/busybox
|   |-- setconsole -> ../bin/busybox
|   |-- slattach -> ../bin/busybox
|   |-- start-stop-daemon -> ../bin/busybox
|   |-- sulogin -> ../bin/busybox
|   |-- swapoff -> ../bin/busybox
|   |-- swapon -> ../bin/busybox
|   |-- switch_root -> ../bin/busybox
|   |-- sysctl -> ../bin/busybox
|   |-- syslogd -> ../bin/busybox
|   |-- tunctl -> ../bin/busybox
|   |-- udhcpc -> ../bin/busybox
|   |-- vconfig -> ../bin/busybox
|   |-- watchdog -> ../bin/busybox
|   `-- zcip -> ../bin/busybox
|-- sys
|-- tmp
|-- usr
|   |-- bin
|   |   |-- [ -> ../../bin/busybox
|   |   |-- [[ -> ../../bin/busybox
|   |   |-- add-shell -> ../../bin/busybox
|   |   |-- arping -> ../../bin/busybox
|   |   |-- awk -> ../../bin/busybox
|   |   |-- basename -> ../../bin/busybox
|   |   |-- beep -> ../../bin/busybox
|   |   |-- bunzip2 -> ../../bin/busybox
|   |   |-- bzcat -> ../../bin/busybox
|   |   |-- bzip2 -> ../../bin/busybox
|   |   |-- cal -> ../../bin/busybox
|   |   |-- chat -> ../../bin/busybox
|   |   |-- chpst -> ../../bin/busybox
|   |   |-- chrt -> ../../bin/busybox
|   |   |-- chvt -> ../../bin/busybox
|   |   |-- cksum -> ../../bin/busybox
|   |   |-- clear -> ../../bin/busybox
|   |   |-- cmp -> ../../bin/busybox
|   |   |-- comm -> ../../bin/busybox
|   |   |-- crontab -> ../../bin/busybox
|   |   |-- cryptpw -> ../../bin/busybox
|   |   |-- cut -> ../../bin/busybox
|   |   |-- dc -> ../../bin/busybox
|   |   |-- deallocvt -> ../../bin/busybox
|   |   |-- diff -> ../../bin/busybox
|   |   |-- dirname -> ../../bin/busybox
|   |   |-- dos2unix -> ../../bin/busybox
|   |   |-- du -> ../../bin/busybox
|   |   |-- dumpleases -> ../../bin/busybox
|   |   |-- eject -> ../../bin/busybox
|   |   |-- env -> ../../bin/busybox
|   |   |-- envdir -> ../../bin/busybox
|   |   |-- envuidgid -> ../../bin/busybox
|   |   |-- ether-wake -> ../../bin/busybox
|   |   |-- expand -> ../../bin/busybox
|   |   |-- expr -> ../../bin/busybox
|   |   |-- fdformat -> ../../bin/busybox
|   |   |-- fgconsole -> ../../bin/busybox
|   |   |-- find -> ../../bin/busybox
|   |   |-- flock -> ../../bin/busybox
|   |   |-- fold -> ../../bin/busybox
|   |   |-- free -> ../../bin/busybox
|   |   |-- ftpget -> ../../bin/busybox
|   |   |-- ftpput -> ../../bin/busybox
|   |   |-- fuser -> ../../bin/busybox
|   |   |-- groups -> ../../bin/busybox
|   |   |-- hd -> ../../bin/busybox
|   |   |-- head -> ../../bin/busybox
|   |   |-- hexdump -> ../../bin/busybox
|   |   |-- hostid -> ../../bin/busybox
|   |   |-- id -> ../../bin/busybox
|   |   |-- ifplugd -> ../../bin/busybox
|   |   |-- install -> ../../bin/busybox
|   |   |-- ipcrm -> ../../bin/busybox
|   |   |-- ipcs -> ../../bin/busybox
|   |   |-- kbd_mode -> ../../bin/busybox
|   |   |-- killall -> ../../bin/busybox
|   |   |-- killall5 -> ../../bin/busybox
|   |   |-- last -> ../../bin/busybox
|   |   |-- less -> ../../bin/busybox
|   |   |-- logger -> ../../bin/busybox
|   |   |-- logname -> ../../bin/busybox
|   |   |-- lpq -> ../../bin/busybox
|   |   |-- lpr -> ../../bin/busybox
|   |   |-- lspci -> ../../bin/busybox
|   |   |-- lsusb -> ../../bin/busybox
|   |   |-- lzcat -> ../../bin/busybox
|   |   |-- lzma -> ../../bin/busybox
|   |   |-- lzopcat -> ../../bin/busybox
|   |   |-- md5sum -> ../../bin/busybox
|   |   |-- mesg -> ../../bin/busybox
|   |   |-- microcom -> ../../bin/busybox
|   |   |-- mkfifo -> ../../bin/busybox
|   |   |-- mkpasswd -> ../../bin/busybox
|   |   |-- nc -> ../../bin/busybox
|   |   |-- nmeter -> ../../bin/busybox
|   |   |-- nohup -> ../../bin/busybox
|   |   |-- nslookup -> ../../bin/busybox
|   |   |-- od -> ../../bin/busybox
|   |   |-- openvt -> ../../bin/busybox
|   |   |-- passwd -> ../../bin/busybox
|   |   |-- patch -> ../../bin/busybox
|   |   |-- pgrep -> ../../bin/busybox
|   |   |-- pkill -> ../../bin/busybox
|   |   |-- pmap -> ../../bin/busybox
|   |   |-- printf -> ../../bin/busybox
|   |   |-- pscan -> ../../bin/busybox
|   |   |-- pstree -> ../../bin/busybox
|   |   |-- pwdx -> ../../bin/busybox
|   |   |-- readahead -> ../../bin/busybox
|   |   |-- readlink -> ../../bin/busybox
|   |   |-- realpath -> ../../bin/busybox
|   |   |-- remove-shell -> ../../bin/busybox
|   |   |-- renice -> ../../bin/busybox
|   |   |-- reset -> ../../bin/busybox
|   |   |-- resize -> ../../bin/busybox
|   |   |-- rpm2cpio -> ../../bin/busybox
|   |   |-- rtcwake -> ../../bin/busybox
|   |   |-- runsv -> ../../bin/busybox
|   |   |-- runsvdir -> ../../bin/busybox
|   |   |-- rx -> ../../bin/busybox
|   |   |-- script -> ../../bin/busybox
|   |   |-- seq -> ../../bin/busybox
|   |   |-- setkeycodes -> ../../bin/busybox
|   |   |-- setsid -> ../../bin/busybox
|   |   |-- setuidgid -> ../../bin/busybox
|   |   |-- sha1sum -> ../../bin/busybox
|   |   |-- sha256sum -> ../../bin/busybox
|   |   |-- sha512sum -> ../../bin/busybox
|   |   |-- showkey -> ../../bin/busybox
|   |   |-- smemcap -> ../../bin/busybox
|   |   |-- softlimit -> ../../bin/busybox
|   |   |-- sort -> ../../bin/busybox
|   |   |-- split -> ../../bin/busybox
|   |   |-- strings -> ../../bin/busybox
|   |   |-- sum -> ../../bin/busybox
|   |   |-- sv -> ../../bin/busybox
|   |   |-- tac -> ../../bin/busybox
|   |   |-- tail -> ../../bin/busybox
|   |   |-- tcpsvd -> ../../bin/busybox
|   |   |-- tee -> ../../bin/busybox
|   |   |-- telnet -> ../../bin/busybox
|   |   |-- test -> ../../bin/busybox
|   |   |-- tftp -> ../../bin/busybox
|   |   |-- tftpd -> ../../bin/busybox
|   |   |-- time -> ../../bin/busybox
|   |   |-- timeout -> ../../bin/busybox
|   |   |-- top -> ../../bin/busybox
|   |   |-- tr -> ../../bin/busybox
|   |   |-- traceroute -> ../../bin/busybox
|   |   |-- traceroute6 -> ../../bin/busybox
|   |   |-- tty -> ../../bin/busybox
|   |   |-- ttysize -> ../../bin/busybox
|   |   |-- udpsvd -> ../../bin/busybox
|   |   |-- unexpand -> ../../bin/busybox
|   |   |-- uniq -> ../../bin/busybox
|   |   |-- unix2dos -> ../../bin/busybox
|   |   |-- unlzma -> ../../bin/busybox
|   |   |-- unlzop -> ../../bin/busybox
|   |   |-- unxz -> ../../bin/busybox
|   |   |-- unzip -> ../../bin/busybox
|   |   |-- uptime -> ../../bin/busybox
|   |   |-- users -> ../../bin/busybox
|   |   |-- uudecode -> ../../bin/busybox
|   |   |-- uuencode -> ../../bin/busybox
|   |   |-- vlock -> ../../bin/busybox
|   |   |-- volname -> ../../bin/busybox
|   |   |-- wall -> ../../bin/busybox
|   |   |-- wc -> ../../bin/busybox
|   |   |-- wget -> ../../bin/busybox
|   |   |-- which -> ../../bin/busybox
|   |   |-- who -> ../../bin/busybox
|   |   |-- whoami -> ../../bin/busybox
|   |   |-- whois -> ../../bin/busybox
|   |   |-- xargs -> ../../bin/busybox
|   |   |-- xz -> ../../bin/busybox
|   |   |-- xzcat -> ../../bin/busybox
|   |   `-- yes -> ../../bin/busybox
|   |-- lib
|   |-- modules
|   `-- sbin
|       |-- brctl -> ../../bin/busybox
|       |-- chpasswd -> ../../bin/busybox
|       |-- chroot -> ../../bin/busybox
|       |-- crond -> ../../bin/busybox
|       |-- dhcprelay -> ../../bin/busybox
|       |-- dnsd -> ../../bin/busybox
|       |-- fakeidentd -> ../../bin/busybox
|       |-- fbset -> ../../bin/busybox
|       |-- ftpd -> ../../bin/busybox
|       |-- httpd -> ../../bin/busybox
|       |-- inetd -> ../../bin/busybox
|       |-- loadfont -> ../../bin/busybox
|       |-- lpd -> ../../bin/busybox
|       |-- nbd-client -> ../../bin/busybox
|       |-- ntpd -> ../../bin/busybox
|       |-- popmaildir -> ../../bin/busybox
|       |-- rdate -> ../../bin/busybox
|       |-- rdev -> ../../bin/busybox
|       |-- readprofile -> ../../bin/busybox
|       |-- sendmail -> ../../bin/busybox
|       |-- setfont -> ../../bin/busybox
|       |-- setlogcons -> ../../bin/busybox
|       |-- svlogd -> ../../bin/busybox
|       |-- telnetd -> ../../bin/busybox
|       |-- ubiattach -> ../../bin/busybox
|       |-- ubidetach -> ../../bin/busybox
|       |-- ubimkvol -> ../../bin/busybox
|       |-- ubirmvol -> ../../bin/busybox
|       |-- ubirsvol -> ../../bin/busybox
|       |-- ubiupdatevol -> ../../bin/busybox
|       `-- udhcpd -> ../../bin/busybox
`-- var
    |-- lib
    |-- lock
    |-- run
    |   `-- utmp
    `-- tmp

31 directories, 361 files

相關推薦

基於busybox製作mini2440檔案系統使用nfs掛載

  常見的檔案系統有yaffs2, jffs2,他們是適用於根檔案系統映象存在於NAND Flash上的情況。而傳統的Linux EXT2/EXT3檔案系統格式適用於傳統的block裝置,比如SD卡或者硬碟。 cramfs同時適用於以上兩種情況。其不管採用哪種格式,核心都必

【Tiny4412--4】基於busybox的簡單檔案系統構建

閱讀說明 該系列文章,基於的平臺均為Tiny4412SDK 1312;4G EMMC; 1G DDR3 帶@lamar: 字首的表示終端裡面的命令 帶@tiny4412: 字首的表示開發板終端裡的命令 準備 tiny4412 開發板 ubunt

tiny4412 busybox製作檔案系統rootfs nfs 掛載 ubuntu 14.04

首先得要有製作好的uboot和linux核心映象zImage,先燒錄到sd卡里,這個是已經做好了的工作。 一,ubuntu上先設定好nfs服務 1.新建一個要掛載的檔案 [email protected]:~/share$ pwd /home/liudijian

mini6410基於linux2.6.36核心通過NFS啟動檔案系統總結(四製作檔案系統通過NFS掛載檔案系統

本系列文章有本人yinjiabin製作,轉載請註明出處: http://blog.csdn.net/yinjiabin/article/details/7489563根檔案系統一般包括: 1)基本的檔案系統結構,包含一些必須的目錄,比如:/dev,/proc,/bin,/

檔案系統Busybox詳解之一

轉自 https://blog.csdn.net/chenlong12580/article/details/8761108   目錄 1.根檔案系統簡介...2 2.Busybox簡介...2 2.1Busybox簡介...2 2.2Busybox目錄結

03 H5用busybox製作64位檔案系統

解包後,在終端進入busybox-1.27.2目錄下操作: 配置busybox make menuconfig CROSS_COMPILE=aarch64-linux-gnu- //備註: 在出現的配置介面裡,按"/"鍵可查詢所需命令的選項位置. B

製作ubuntu檔案系統

參考文件: http://blog.csdn.net/mountzf/article/details/51707853 http://developer.t-firefly.com/thread-10963-1-1.html http://rockchip.wikidot.

製作yaffs2檔案系統

現在大部分開發板都可以支援yaffs2 檔案系統,它是專門針對嵌入式裝置,特別是使用nand flash作為儲存器的嵌入式裝置而建立的一種檔案系統,早先的yaffs僅支援小頁(512byte/page)的nand flash,使用 yaffs2 就可以支援大頁的 nand

debian9安裝busybox,並製作檔案系統(2)

3,製作根檔案系統 在上文debian9安裝busybox,並製作根檔案系統(1)中輸入make install命令進行安裝,busybox會自動將rootfs根檔案系統安裝到之前設定的目錄下,之前我設定的是/home/guoyanzhang/rootfs,進入之後, ##ls -l drw

debian9安裝busybox,並製作檔案系統(1)

1,構建根檔案目錄 ##mkdir rootfs ##mkdir root home bin sbin etc dev usr lib tmp mnt sys proc ##mkdir usr/lib usr/bin 2,安裝busybox 2.1,下載busybox安裝包,https

busybox製作最小檔案系統

接上篇,qemu啟動linux核心 ,啟動核心失敗後,開始製作一個最小的ramdisk根檔案系統。 根檔案系統製作工具busybox,還是走大眾路線吧。原始碼包下載地址:https://busybox.net/ 直接進入busybox的根目錄,準備編譯,使用預設配置檔案defconfig,

利用busybox和mkfs.jffs2製作檔案系統

PC機系統:Ubuntu 12.04 LTS 目標板:海思3518C Flash型別:SPI Flash(16M) Busybox:BusyBox-1.16.1.tgz 嵌入式交叉編譯工具鏈:arm-hisiv100nptl-linux-gcc 目標

最新busybox-1.28.1製作檔案系統

本文適配fs4412開發板,使用的核心為linux4.9.9。 1.原始碼下載 Busybox的官方原始碼下載路徑為: http://busybox.net/downloads/ 可以下載最新的busybox-1.28.1 2.解壓原始碼 tar

移植核心學習筆記2-----修改分割槽製作檔案系統

1、製作分割槽 (1)分析 在上節實驗中出現以下問題:無法掛載根檔案系統 在以前u-boot燒寫檔案系統時是燒寫到某個地方,以前的分割槽是下面那樣劃分的,劃分為4個分割槽,但是上面有8個分割槽 分割槽修改參考(分割槽是在程式碼裡面寫死的,u-boot怎麼設定不會影響核心

一步一步製作yaffs/yaffs2檔案系統--生成yaffs/yaffs2映象檔案下載到開發板

  開發環境:Ubuntu 12.04                             開發板:mini2440  256M NandFlash   64M SDRAM                              交叉編譯器:arm-linux-

busybox的安裝和配置/最小檔案系統製作

1.瞭解uImage和zImage: linux核心經過編譯後會生成一個elf格式的可執行程式,叫做vmlinux或vmlinuz,這個是原始的未經任何處理加工的原版核心elf檔案,嵌入式系統部署時燒錄一般不是這個vmlinux,而是要用objcopy工具去製

Buildroot製作檔案系統過程(基於MYD-AM335X開發板)

buildroot的功能很強大,可以利用它製作交叉編譯工具鏈、根檔案系統,甚至可以構建多種嵌入式平臺的bootloader、linux。下面以米爾科技的MYD-AM335X平臺為例展示如何利用buildroot製作自己所需的根檔案系統。一、到官網下載原始碼:http://b

Linux-2.6.32.2核心在mini2440上的移植(四)---檔案系統製作(1)

ROMFS MTD (C) 2007 Red Hat, Inc.msgmni has been set to 109 alg: No test for stdrng (krng) io scheduler noop registered io scheduler anticipatory registered

Linux核心映象檔案系統製作

一、系統開發平臺介紹    本次試驗是基於九鼎創展公司嵌入式開發板x210v3, 核心處理器是ARM Cortex–A8架構的S5PV210,主頻1GHz。  PC機Linux版本:Ubuntu Kylin 14.04  核心版本:3.13 二、Linux核心配置和編譯 2

uboot,核心uImage,網路檔案系統nfs的搭建(基於友善mini2440

基於友善的mini2440的環境搭建。(通過uboot下載,採用nfs根檔案系統的方式) 連上usb轉串列埠線,電源線,USB下載線,網線一頭接電腦、一頭接開發板。 開關打到NOR,啟動, 進入NOR上的supervivi介面,按a,通過DNW下載u-boot.bin到NA