Boot menggunakan NFS dan TFTP (diperbaharui)
Daripada mengenakan keluar perlahan-lahan Anda NAND flash Anda dapat boot MINI2440 melalui jaringan dengan memuat kernel menggunakan TFTP dan OS dari berbagi NFS. Hal ini juga membuat lebih cepat untuk menguji perubahan. Menggunakan Fedora 11 Anda dapat menggunakan YUM untuk menginstal tftp, tftp-server dan nfs-utils.
Saya membuat sebuah folder / home/doug/mini2440/root_fs dan menambahkan baris berikut ke / etc / exports untuk memungkinkan r / w akses dari 192.168.1 .*:
.. Dan diekstraksi sistem file Angstrom sebagai root untuk / home/doug/mini2440/root_fs
Anda akan perlu mengedit / etc / xinetd.d / tftp untuk setup TFTP. Tambang ini diposting di bawah ini untuk referensi, Anda setidaknya perlu mengatur disable = no.
# Description: server tftp melayani file menggunakan file transfer sepele
# Protokol. Protokol tftp sering digunakan untuk boot diskless
# Workstation, file konfigurasi download ke printer jaringan-aware,
# Dan untuk memulai proses instalasi untuk beberapa sistem operasi.
layanan tftp
{
disable = no
socket_type = dgram
protokol = udp
menunggu = yes
user = akar
sbin / in.tftpd server = / usr / sbin / in.tftpd
home / doug / mini2440 / kernel server_args =-s / home / doug / MINI2440 / kernel
per_source = 11
cps = 100 2
flags = IPv4
}
Saya kemudian memulai layanan:
service xinetd start / Sbin / service xinetd start
Untuk mengotomatisasi ini saya pikir Anda dapat melakukan:
chkconfig xinetd on
chkconfig nfs pada
Berikutnya saya diedit lingkungan uboot. Gunakan perintah setenv untuk mengubah atau menambahkan entri dan savenev ketika Anda selesai. Saya berakhir dengan berikut:
bootdelay = 3
baudrate = 115200
: 18 : 12 : 27 ethaddr = 08:08: 11: 18: 12: 27
usbtty = cdc_acm
=mini2440-nand:256k @ 0 ( u-boot ) ,128k ( env ) ,5m ( kernel ) ,- ( root ) mtdparts = mtdparts = MINI2440-nand: 256k @ 0 (u-boot), 128k (env), 5m (kernel), - (akar)
=0tb MINI2440 = MINI2440 = 0tb
=ttySAC0, 115200 noinitrd bootargs_base = console = ttySAC0, 115200 noinitrd
= / sbin / init bootargs_init = init = / sbin / init
= / dev / mtdblock3 rootfstype =jffs2 root_nand = root = / dev / mtdblock3 rootfstype = jffs2
= / dev / mmcblk0p2 rootdelay = 2 root_mmc = root = / dev / mmcblk0p2 rootdelay = 2
mnt / nfs root_nfs = / mnt / nfs
= / dev / nfs rw nfsroot = ${serverip} : ${root_nfs} set_root_nfs = setenv root_nfs root = / dev / nfs rw nfsroot = $ {serverip}: $ {root_nfs}
ip = ${ipaddr} : ${serverip} :: ${netmask} :mini2440:eth0 ifconfig_static = jalankan ifconfig ip setenv = $ {ipaddr}: $ {serverip}:: $ {netmask}: MINI2440: eth0
ip =dhcp ifconfig_dhcp = menjalankan ip ifconfig setenv = dhcp
=dhcp ifconfig ip = dhcp =
set_bootargs_mmc = setenv bootargs $ {} $ {bootargs_base bootargs_init} $ {} $ {MINI2440 root_mmc}
set_bootargs_nand = setenv bootargs $ {} $ {bootargs_base bootargs_init} $ {} $ {MINI2440 root_nand}
set_bootargs_nfs = menjalankan set_root_nfs; setenv bootargs $ {} $ {bootargs_base bootargs_init} $ {} $ {MINI2440 root_nfs} $ {ifconfig}
=mini2440-nand mtdids = nand0 = MINI2440-nand
=ttySAC0, 115200 noinitrd init = / sbin / init mini2440 =0tb ip =192.168.1.85 root = / dev / nfs rw nfsroot =192.168.1.10: / home / doug / mini2440 / root_fs bootargs = console = ttySAC0, 115200 noinitrd init = / sbin / init MINI2440 = 0tb ip 192.168.1.85 = root = / dev / nfs rw nfsroot = 192.168.1.10: / home / doug / MINI2440 / root_fs
bootfile = "uImage"
filesize = 1E9088
fileaddr = 32000000
gatewayip = 192.168.1.100
netmask = 255.255.255.0
ipaddr = 192.168.1.85
serverip = 192.168.1.10
bootcmd = tftp; bootm 32000000
partisi = nand0, 0
mtddevnum = 0
mtddevname = u-boot
Perhatikan ketika Anda setenv Anda harus menghilangkan tanda =. Jelas Anda akan ingin mengubah beberapa ini sesuai konfigurasi jaringan anda. Berikut laptop saya adalah 192.168.1.10 dan 192.168.1.100 adalah pfsense kotak saya yang menugaskan 192.168.1.85 ke MINI2440 oleh DHCP.
Bila Anda boot sistem akan uboot mendownload kernel lebih dari TFTP dan kemudian mount NFS berbagi.
Jika Anda memiliki DHCP pada jaringan Anda Angstrom otomatis harus mendapatkan IP. Anda dapat melewatkan sisanya dalam kasus ini!
Jika Anda ingin alamat statis Anda dapat mengubah / etc / network / interfaces. Aku hanya berubah dhcp statis untuk eth0:
Dan setelah ini sistem boot up baik. Terakhir saya punya catatan yang mengatakan saya menghapus symlink / etc / resolve.conf dan diganti dengan:
pencarian lokal
nameserver 192.168.1.100
Jadilah memperingatkan bahwa seluruh kebutuhan di atas harus sesuai dengan firewall dan SELinux Anda, itu tidak akan bekerja sebaliknya!
Saya menemukan Link berikut membantu:



Dear Friends,
Saya telah membangun sebuah distrubition openembedded untuk MINI2440. Saya telah menyalin
MINI2440-base-image.tar.gz ke pc host saya dan saya arrenged NFS untuk cross
bangunan. Ia bekerja OK, tetapi ketika saya menyalin dan ekstrak
MINI2440-konsol-image.tar.gz, saya NFS tidak menanggapi. Apakah Anda memiliki
saran untuk saya? Saya menyalin konsol minicom saya pesan dan menempelkannya.
Juga saya mencoba dengan rootfs untuk NFS SISTEM link di bawah ini, tapi masih belum
menanggapi.
U-Boot 1.3.2-MINI2440 (6 Oktober 2009 - 12:51:09)
I2C: siap
DRAM: 64 MB
Flash: 2 MB
NAND: blok tabel Bad tidak ditemukan untuk chip 0
Tabel blok buruk tidak ditemukan untuk chip 0
128 MiB
Lingkungan Ditemukan offset dalam OOB ..
USB: USB S3C2410 Deviced
Dalam: serial
Out: serial
Err: serial
MAC: 08:08:11:18:12:27
Menekan tombol apa saja untuk menghentikan autoboot: 0
dm9000 i / o: 0 × 20000300, id: 0x90000a46
DM9000: berjalan di 16 bit mode
MAC: 08:08:11:18:12:27
TFTP dari server 192.168.1.10; alamat IP kita adalah 192.168.1.85
Filename 'uImage.bin'.
Memuat alamat: 0 × 32000000
Memuat: checksum yang buruk
checksum yang buruk
T ################################################# ################
################################################## ###############
#########
dilakukan
Byte yang ditransfer = 2031220 (1efe74 hex)
# # Boot kernel dari Gambar Legacy di 32000000 ...
Gambar Nama: Angstrom/2.6.31 + git/mini2440
Dibuat: 2009/10/30 09:06:09 UTC
Tipe Gambar: ARM Linux Kernel Gambar (terkompresi)
Data Ukuran: 2031156 Bytes = 1,9 MB
Beban Alamat: 30008000
Entry Point: 30008000
Memverifikasi Checksum ... OK
Memuat Kernel Gambar ... OK
OK
Mulai kernel ...
Uncompressing
Linux versi 2.6.31.1 (sven @ kantor) (gcc version 4.2.4) # 1 Thu 30 Okt 2009 17:04:01 CST
CPU: ARM920T [41129200] revisi 0 (ARMv4T), cr = c0007177
CPU: Data VIVT cache, cache instruksi VIVT
Mesin: MINI2440
Memori kebijakan: ECC dinonaktifkan, data cache yang writeback
CPU S3C2440A (id 0 × 32440001)
Jam S3C24XX, (c) 2004 Simtec Elektronik
S3C244X: inti 405,000 MHz, memori 101,250 MHz, 50,625 MHz perifer
JAM: modus Lambat (1.500 MHz), cepat, MPLL pada, UPLL pada
Dibangun 1 zonelists dalam rangka Zone, pengelompokan mobilitas. Jumlah halaman: 16256
Perintah baris kernel: console = ttySAC0, 115200 noinitrd init = / sbin / MINI2440 init = ip = 192.168.1.85 0tb akar = / dev / nfs rw nfsroot = 192.168.1.10: / hd
PID entri tabel hash: 256 (urutan: 8, 1024 byte)
Dentry Cache entri tabel hash: 8192 (order 3, 32768 bytes)
Inode-cache entri tabel hash: 4096 (order: 2, 16384 bytes)
Memori: 64MB = 64MB Total
Memori: 60640KB tersedia (kode 3568K, data 417K, 132K init, highmem 0K)
Slub: Genslabs = 11, HWalign = 32, Orde = 0-3, MinObjects = 0, CPU = 1, Nodes = 1
NR_IRQS: 85
irq: Status kliring tertunda 02000000
irq: Status 00000002 kliring subpending
Console: warna boneka perangkat 80 × 30
konsol [ttySAC0] diaktifkan
Mengkalibrasi keterlambatan lingkaran ... 201,93 BogoMips (LPJ = 504.832)
Gunung-cache entri tabel hash: 512
CPU: Pengujian menulis buffer koherensi: ok
NET: keluarga protokol Terdaftar 16
MINI2440: Opsi String MINI2440 = 0tb
MINI2440: LCD [0:240 X320] 1:800 × 480 × 768 2:1024
S3C2440: arsitektur Memasang
S3C2440: IRQ Dukungan
S3C24XX DMA Driver, (c) 2003-2004,2006 Simtec Elektronik
DMA channel 0 pada c4808000, irq 33
DMA channel 1 di c4808040, irq 34
DMA saluran 2 di c4808080, irq 35
DMA saluran 3 di c48080c0, irq 36
S3C244X: Dukungan Jam, dvs dari
bio: membuat slab pada 0
usbcore: usbfs antarmuka driver yang terdaftar baru
usbcore: registered antarmuka hub driver baru
usbcore: terdaftar baru driver perangkat usb
s3c-i2c S3C2440-i2c: budak alamat 0 × 10
s3c-i2c S3C2440-i2c: Frekuensi bus diatur ke 98 KHz
s3c-i2c S3C2440-i2c: adaptor S3C I2C: i2c-0
NET: keluarga protokol terdaftar 2
Rute IP Cache entri tabel hash: 1024 (order: 0, 4096 byte)
TCP entri tabel hash: 2048 (order: 2, 16384 bytes)
TCP mengikat entri tabel hash: 2048 (urutan: 1, 8192 byte)
TCP: tabel Hash dikonfigurasi (didirikan 2048 mengikat 2048)
TCP reno terdaftar
NET: keluarga protokol terdaftar 1
JFFS2 versi 2.2. (NAND) © 2001-2006 Red Hat, Inc
ROMFS MTD (C) 2007 Red Hat, Inc
msgmni telah diatur untuk 118
ALG: Tidak ada tes untuk stdrng (krng)
io scheduler noop terdaftar
io scheduler antisipatif terdaftar (default)
io scheduler tenggat terdaftar
io scheduler cfq terdaftar
Console: beralih ke perangkat frame buffer warna 60 × 53
fb0: s3c2410fb bingkai penyangga perangkat
S3C2440-uart.0: ttySAC0 di MMIO 0 × 50000000 (irq = 70) adalah S3C2440
S3C2440-uart.1: ttySAC1 di MMIO 0 × 50004000 (irq = 73) adalah S3C2440
S3C2440-uart.2: ttySAC2 di MMIO 0 × 50008000 (irq = 76) adalah S3C2440
BRD: modul dimuat
at24 0-0050: 1024 byte EEPROM 24C08 (writable)
dm9000 Ethernet Driver, V1.31
eth0: dm9000e di c486e300, c4872304 IRQ 51 MAC: 08:08:11:18:12:27 (chip)
S3C24XX NAND Driver, (c) 2004 Simtec Elektronik
s3c24xx-nand nand S3C2440-: Tacls = 1, 9ns Twrph0 = 3 29ns, 19ns Twrph1 = 2
s3c24xx-nand nand S3C2440-: NAND lembut ECC
NAND perangkat: ID Produsen: 0xec, ID Chip: 0xf1 (Samsung NAND 128MiB 3,3 V 8-bit)
Membuat partisi MTD pada 4 "NAND 128MiB 3,3 V 8-bit":
0 × × 000000000000-0 000000040000: "u-boot"
ftl_cs: FTL header tidak ditemukan.
0 × × 000000040000-0 000000060000: "u-boot-env"
ftl_cs: FTL header tidak ditemukan.
0 × × 000000060000-0 000000560000: "kernel"
ftl_cs: FTL header tidak ditemukan.
0 × × 000000560000-0 000008000000: "root"
ftl_cs: FTL header tidak ditemukan.
ohci_hcd: 'Open' USB 1.1 Host Controller (OHCI) Driver
s3c2410-OHCI s3c2410-OHCI: S3C24XX OHCI
s3c2410-OHCI s3c2410-OHCI: baru terdaftar bus USB, bus ditugaskan nomor 1
s3c2410-OHCI s3c2410-OHCI: irq 42, io mem 0 × 49000000
usb USB1: # 1 Konfigurasi dipilih dari 1 pilihan
hub 1-0:1.0: USB hub ditemukan
hub 1-0:1.0: 2 port terdeteksi
usbcore: registered antarmuka libusual driver baru
S3C2440-usbgadget S3C2440-usbgadget: S3C2440: meningkatkan FIFO untuk 128 byte
tikus: PS / 2 mouse perangkat umum untuk semua tikus
masukan: GPIO-tombol sebagai / devices/platform/gpio-keys/input/input0
S3C2440-ts-ts S3C2440: Memulai
Membuat grup ts menyaring len 12 kedalaman 2 menutup 10 mengirik 6
Dibuat Median Filter ts len 20 kedalaman 2 Desember 24
Dibuat ts menyaring rata-rata kedalaman 2 len 4 mengirik 65535
Dibuat Linear Filter ts kedalaman 2
S3C2440-ts-ts S3C2440: 4 filter (s) diinisialisasi
S3C2440-ts-ts S3C2440: berhasil dimuat
masukan: s3c2410 Touchscreen sebagai / devices/virtual/input/input1
S3C24XX RTC, (c) 2004,2006 Simtec Elektronik
s3c2410-RTC RTC s3c2410-: RTC cacat, mengaktifkan kembali
s3c2410-RTC RTC s3c2410-: RTC inti: s3c terdaftar sebagai rtc0
i2c / dev entri sopir
Watchdog Timer S3C2410, (c) 2004 Simtec Elektronik
s3c2410-wdt s3c2410-wdt: pengawas tidak aktif, reset cacat, irq diaktifkan
cpuidle: menggunakan tangga Gubernur
sdhci: Host Controller Driver Secure Digital Antarmuka
sdhci: Copyright (c) Pierre Ossman
dipetakan saluran 0 to 0
S3C2440-SDI-SDI S3C2440: powered bawah.
S3C2440-SDI-SDI S3C2440: inisialisasi dilakukan.
Terdaftar dipimpin perangkat: LED1
Terdaftar dipimpin perangkat: led2
Terdaftar dipimpin perangkat: led3
Terdaftar dipimpin perangkat: led4
Terdaftar dipimpin perangkat: backlight
usbcore: registered antarmuka hiddev driver baru
usbcore: registered antarmuka usbhid driver baru
usbhid: v2.6: USB HID sopir inti
Lanjutan Linux Suara Arsitektur Driver Versi 1.0.20.
Tidak ada perangkat untuk DAI UDA134X
Tidak ada perangkat untuk DAI s3c24xx-I2S
S3C24XX_UDA134X SoC Audio Driver
UDA134X SoC Audio Codec
asoc: UDA134X s3c24xx-I2S pemetaan ok
ALSA daftar perangkat:
# 0: S3C24XX_UDA134X (UDA134X)
TCP kubik terdaftar
NET: keluarga protokol Terdaftar 17
RPC: Terdaftar udp modul transportasi.
RPC: Terdaftar tcp modul transportasi.
s3c2410-RTC RTC s3c2410-: pengaturan sistem clock untuk 2009-12-19 00:36:25 UTC (1261182985)
eth0: link down
IP-Config: netmask 255.255.255.0 Menebak
IP-Config: Lengkap:
device = eth0, addr = 192.168.1.85, mask = 255.255.255.0, 255.255.255.255 gw =,
host = 192.168.1.85, domain =, nis-domain = (tidak ada),
bootserver = 255.255.255.255, rootserver = 192.168.1.10, ROOTPATH =
Mendongak port RPC 100003 / 2 pada 192.168.1.10
eth0: link up, 100Mbps, full-duplex, LPA 0xCDE1
Mendongak port RPC 100005 / 1 pada 192.168.1.10
VFS: Mounted akar (nfs filesystem) pada 0:14 perangkat.
Membebaskan memori init: 132K
INIT: version 2.86 booting
Please wait: boot ...
Mulai udev
Mengisi tembolok dev
Remounting root file system ...
HZ diketahui nilai! (90) Asumsikan 100.
ALSA: Memulihkan pengaturan mixer ...
Konfigurasi antarmuka jaringan ... Tidak ada negara yang hadir untuk kartu S3C24XXUDA134X
/ Usr / sbin / alsactl: parse: 1639: Tidak dapat membuka file '/ usr/share/alsa/init/00main': Tidak ada berkas atau direktori
Tidak ada negara hadir untuk kartu S3C24XXUDA134X
nfs: server 192.168.1.10 tidak menanggapi, masih mencoba
Hi semua,
Saya memiliki perilaku yang sama persis dengan NFS menggunakan openembedded
Saya kira bahwa setelah pesan "Tidak ada negara yang hadir untuk kartu S3C24XXUDA134X" openembedded mencoba untuk reconfig ethernet interface dan gagal menghubungkan NFS tetapi saya tidak tahu apa yang harus dilakukan untuk menghindari hal ini.
telah ada yang menemukan solusi?
terima kasih untuk membantu saya
jmboy
Hai
Aku punya masalah yang sama, jaringan itu koneksi ulang dan NFS hilang.
Saya tidak bisa menemukan URL dari solusi untuk posting di sini, tapi saya masih memiliki file di rootfs berubah saya.
mengedit file / etc / init.d / networking di rootfs Anda
temukan baris yang terlihat seperti ini:
echo-n "Konfigurasi antarmuka jaringan ..."
ifup-a
echo "dilakukan."
dan komentar baris kedua untuk memiliki sesuatu seperti ini:
echo-n "Konfigurasi antarmuka jaringan ..."
# Ifup-a
echo "dilakukan."
setelah ini rootfs dari NFS tidak memiliki masalah. Setidaknya bagi saya.
Ini tampak seperti solusi jelek tapi berharap ini akan membantu Anda.
Hi, ya, ketika saya datang di masalah ini saya diubah ke alamat IP tetap. Yang aneh adalah ketika saya mencoba hal yang sama pada jaringan yang berbeda, dikonfigurasi dalam cukup banyak cara yang sama, saya tidak perlu mengubah apa pun. Aku tidak pernah tahu apa perbedaan itu. Terima kasih atas Irakli posting.