Khởi động NFS sử dụng và TFTP (cập nhật)
Thay vì từ từ mặc ra NAND flash của bạn, bạn có thể khởi động mini2440 qua mạng bằng cách tải hạt nhân bằng cách sử dụng TFTP và hệ điều hành từ một chia sẻ NFS. Điều này cũng làm cho nó nhanh hơn nhiều để kiểm tra sự thay đổi. Sử dụng Fedora 11, bạn có thể sử dụng YUM để cài đặt tftp, tftp-server và nfs-utils.
Tôi tạo ra một thư mục / home/doug/mini2440/root_fs và thêm dòng sau vào / etc / xuất khẩu cho phép truy cập r w / từ 192.168.1 .*:
.. Và trích xuất các hệ thống tập tin Angstrom như là người chủ để / home/doug/mini2440/root_fs
Bạn sẽ cần phải chỉnh sửa / etc / xinetd.d / tftp để thiết lập TFTP. Mỏ được đăng dưới đây để tham khảo, bạn ít nhất là cần phải thiết lập vô hiệu hóa = không.
# Mô tả: Các máy chủ phục vụ các tập tin bằng cách sử dụng tftp truyền tập tin tầm thường \
# Giao thức. Các giao thức tftp thường được dùng để khởi động \ không đĩa
máy trạm #, tải tập tin cấu hình để nhận biết máy in mạng, \
# Và để bắt đầu quá trình cài đặt cho một số hệ điều hành.
dịch vụ tftp
(
vô hiệu hóa = không có
socket_type = dgram
giao thức = UDP
chờ đợi = yes
user = root
sbin / in.tftpd server = / usr / sbin / in.tftpd
home / doug / mini2440 / kernel server_args =-s / home / Doug / mini2440 / kernel
per_source = 11
ký tự / giây = 100 2
cờ = IPv4
)
Sau đó tôi bắt đầu các dịch vụ:
service xinetd start / Sbin / dịch vụ bắt đầu xinetd
Để tự động hóa những tôi nghĩ rằng bạn có thể làm:
chkconfig xinetd trên
chkconfig nfs ngày
Next i edited môi trường uboot. Sử dụng lệnh setenv để chỉnh sửa hoặc thêm các mục và savenev khi bạn đã hoàn tất. Tôi đã kết thúc với những điều sau đây:
bootdelay = 3
Baudrate = 115.200
: 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 (hạt nhân), - (root)
=0tb mini2440 = mini2440 = 0tb
=ttySAC0, 115200 noinitrd bootargs_base = console = ttySAC0, 115.200 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 = chạy setenv ifconfig ip = $ (ipaddr): $ (serverip):: $ (netmask): mini2440: eth0
ip =dhcp ifconfig_dhcp = chạy setenv ifconfig ip = 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 = chạy set_root_nfs; bootargs setenv 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, 115.200 noinitrd init = / sbin / init mini2440 = 0tb ip = 192.168.1.85 root = / dev / nfs rw nfsroot = 192.168.1.10: nhà / / Doug / mini2440 / root_fs
bootfile = "uImage"
Dung = 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
phân vùng = nand0, 0
mtddevnum = 0
mtddevname = u-boot
Lưu ý khi bạn setenv bạn phải bỏ đi dấu =. Hiển nhiên bạn sẽ muốn thay đổi một số thiết lập này cho phù hợp với mạng của bạn. Ở đây máy tính xách tay của tôi là 192.168.1.10 và 192.168.1.100 là hộp pfsense của tôi mà là giao 192.168.1.85 đến mini2440 bởi DHCP.
Khi bạn khởi động uboot hệ thống sẽ tải về hạt nhân trên TFTP và sau đó gắn kết chia sẻ NFS.
Nếu bạn có DHCP trên mạng Angstrom của bạn tự động sẽ nhận được một IP. Bạn có thể bỏ qua phần còn lại trong trường hợp này!
Nếu bạn muốn có một địa chỉ tĩnh bạn có thể thay đổi / etc / network / interfaces. Tôi chỉ đơn giản là thay đổi dhcp để tĩnh cho eth0:
Và sau này hệ thống khởi động tốt. Cuối cùng tôi có một lưu ý mà nói tôi đã xóa các liên kết mềm / etc / resolve.conf và thay thế nó bằng:
tìm kiếm địa phương
nameserver 192.168.1.100
Hãy cảnh báo rằng toàn bộ nhu cầu ở trên để được phù hợp với tường lửa và selinux của bạn, nó sẽ không làm việc khác!
Tôi thấy như sau Liên kết hữu ích:



Các bạn thân mến,
Tôi đã xây dựng một distrubition openembedded cho mini2440. Tôi đã sao chép
mini2440-base-image.tar.gz với pc máy chủ lưu trữ của tôi và tôi arrenged một NFS cho cross
xây dựng. Nó hoạt động OK, nhưng khi tôi sao chép và trích xuất
mini2440-console-image.tar.gz, NFS của tôi không trả lời. Bạn có bất cứ
tư vấn cho tôi không? Tôi sao chép minicom tôi tin nhắn và thuộc diện điều khiển nó.
Ngoài ra tôi đã cố gắng với rootfs cho NFS sistem dưới đây liên kết, nhưng nó vẫn không
đáp ứng.
http://mini2440.googlecode.com/files/Angstrom-mini2440-image-glibc-ipk-2009.X-test-20090405-mini2440.rootfs.tar.bz2
U-Boot 1.3.2-mini2440 (06 Tháng Mười 2009 - 12:51:09)
I2C: sẵn sàng
DRAM: 64 MB
Flash: 2 MB
NAND: Bad block không tìm thấy bảng cho chip 0
Tình trạng block không tìm thấy bảng cho chip 0
128 MiB
Môi trường bù đắp các mặt hàng tại OOB ..
USB: USB S3C2410 Deviced
Trong: serial
Nhà: nối tiếp
Err: serial
MAC: 08:08:11:18:12:27
Lượt phím bất kỳ để dừng lại tự khởi động: 0
dm9000 i / o: 0 × 20.000.300, id: 0 × 90000a46
DM9000: chạy ở chế độ 16 bit
MAC: 08:08:11:18:12:27
TFTP từ máy chủ 192.168.1.10; địa chỉ IP của chúng tôi là 192.168.1.85
Tên file 'uImage.bin'.
Địa chỉ tải: 0 × 32.000.000
Loading: checksum xấu
checksum xấu
T ################################################# ################
################################################## ###############
#########
thực hiện
Bytes chuyển = 2031220 (1efe74 hex)
# # Khởi động hạt nhân từ Legacy Image tại 32000000 ...
Hình ảnh Tên: Angstrom/2.6.31 + git/mini2440
Khởi tạo: 2009/10/30 09:06:09 UTC
Loại hình: ARM Linux Kernel Image (không nén)
Dữ liệu Kích thước: 2031156 Bytes = 1,9 MB
Load Địa chỉ: 30008000
Entry điểm: 30008000
Xác minh checksum ... OK
Tải hình ảnh hạt nhân ... OK
OK
Bắt đầu từ hạt nhân ...
Uncompressing Linux ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
Linux phiên bản 2.6.31.1 (Sven @ văn phòng) (gcc phiên bản 4.2.4) # 1 Th 6. ngày 30 tháng 10 17:04:01 CST 2009
CPU: ARM920T [41.129.200] sửa đổi 0 (ARMv4T), cr = c0007177
CPU: VIVT dữ liệu bộ nhớ cache, bộ nhớ cache VIVT hướng dẫn
Lắp máy: MINI2440
Bộ nhớ chính sách: ECC tàn tật, bộ nhớ cache dữ liệu writeback
CPU S3C2440A (id 0 × 32.440.001)
S3C24XX Clocks, (c) 2004 Simtec Điện tử
S3C244X: lõi 405,000 MHz, bộ nhớ 101,250 MHz, ngoại vi 50,625 MHz
CLOCK: Chậm thức (1,500 MHz), nhanh chóng, MPLL ngày, UPLL ngày
Được xây dựng 1 zonelists tại Khu tự, cơ động nhóm trên. Tổng số trang: 16.256
Kernel dòng lệnh: console = ttySAC0, 115.200 noinitrd init = / sbin / init mini2440 = 0tb ip = 192.168.1.85 root = / dev / nfs rw nfsroot = 192.168.1.10: / hd
PID bảng băm lưu bút: 256 (thứ tự: 8, 1024 bytes)
Dentry cache bảng băm lưu bút: 8.192 (thứ tự: 3, 32.768 bytes)
Inode-cache bảng băm lưu bút: 4.096 (đơn đặt hàng: 2, 16.384 bytes)
Bộ nhớ: 64MB = 64MB tổng số
Bộ nhớ: 60640KB sẵn (3568K mã, dữ liệu 417K, 132K init, 0K highmem)
Slub: Genslabs = 11, HWalign = 32, đặt hàng = 0-3, MinObjects = 0, CPU = 1, Nodes = 1
NR_IRQS: 85
irq: thanh toán bù trừ chưa giải quyết tình trạng 02000000
irq: thanh toán bù trừ tình trạng subpending 00000002
Console: màu dummy thiết bị 80 × 30
giao diện điều khiển [ttySAC0] kích hoạt
Đo đạc vòng chậm trễ ... 201,93 BogoMIPS (lpj = 504.832)
Mount-cache bảng băm lưu bút: 512
CPU: Kiểm tra viết sự liên lạc đệm: ok
NET: Đăng ký giao thức gia đình 16
MINI2440: Tùy chọn chuỗi mini2440 = 0tb
MINI2440: LCD [0:240 x320] 1:800 × 480 × 768 2:1024
S3C2440: Initialising kiến trúc
S3C2440: IRQ Hỗ trợ
S3C24XX DMA Driver, (c) 2003-2004,2006 Simtec Điện tử
DMA kênh 0 ở c4808000, irq 33
DMA kênh 1 tại c4808040, irq 34
DMA kênh 2 tại c4808080, irq 35
DMA kênh 3 tại c48080c0, irq 36
S3C244X: Hỗ trợ đồng hồ, DVS off
sinh học: tạo ra sàn lúc 0
usbcore: đăng ký mới giao diện điều khiển usbfs
usbcore: đăng ký mới giao diện điều khiển trung tâm
usbcore: đăng ký mới điều khiển thiết bị usb
s3c-I2C s3c2440-I2C: nô lệ địa chỉ 0 × 10
s3c-I2C s3c2440-I2C: xe buýt tần số thiết lập để 98 KHz
s3c-I2C s3c2440-I2C: I2C-0: S3C I2C adapter
NET: Đăng ký giao thức gia đình 2
IP route cache bảng băm lưu bút: 1024 (đặt hàng: 0, 4.096 bytes)
TCP được thành lập mục bảng băm: 2048 (thứ tự: 2, 16.384 bytes)
TCP ràng buộc bảng băm lưu bút: 2048 (đặt hàng: 1, 8.192 bytes)
TCP: Bàn Hash cấu hình (thành lập năm 2048 kết năm 2048)
TCP Reno đăng ký
NET: Đăng ký giao thức gia đình 1
JFFS2 phiên bản 2.2. (NAND) © 2001-2006 Red Hat, Inc
ROMFS MTD (C) 2007 Red Hat, Inc
msgmni đã được thiết lập để 118
ALG: Không có thử nghiệm cho stdrng (krng)
io lên lịch và đăng ký noop
io Scheduler làm trước đăng ký (mặc định)
io lên lịch và thời hạn đăng ký
io Scheduler cfq đăng ký
Console: chuyển sang màu thiết bị đệm khung 60 × 53
fb0: s3c2410fb khung đệm thiết bị
s3c2440-uart.0: ttySAC0 tại MMIO 0 × 50.000.000 (irq = 70) là một S3C2440
s3c2440-uart.1: ttySAC1 tại MMIO 0 × 50.004.000 (irq = 73) là một S3C2440
s3c2440-uart.2: ttySAC2 tại MMIO 0 × 50.008.000 (irq = 76) là một S3C2440
BRD: module được nạp
at24 0-0.050: 1.024 byte EEPROM 24c08 (ghi)
dm9000 Ethernet Driver, V1.31
eth0: dm9000e tại c486e300, c4872304 IRQ 51 MAC: 08:08:11:18:12:27 (chip)
S3C24XX NAND Driver, (c) 2004 Simtec Điện tử
s3c24xx-NAND s3c2440-NAND: Tacls = 1, 9ns Twrph0 = 3 29ns, Twrph1 = 2 19ns
s3c24xx-NAND s3c2440-NAND: NAND mềm ECC
NAND thiết bị: Nhà sản xuất ID: 0xec, Chip ID: 0xf1 (Samsung NAND 128MiB 3,3 V 8-bit)
Tạo 4 phân vùng MTD về "NAND 128MiB 3,3 V 8-bit":
0 × 000000000000-0 × 000000040000: "u-boot"
ftl_cs: FTL tiêu đề không tìm thấy.
0 × 000000040000-0 × 000000060000: "u-boot-env"
ftl_cs: FTL tiêu đề không tìm thấy.
0 × 000000060000-0 × 000000560000: "hạt nhân"
ftl_cs: FTL tiêu đề không tìm thấy.
0 × 000000560000-0 × 000008000000: "root"
ftl_cs: FTL tiêu đề không tìm thấy.
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
s3c2410-ohci s3c2410-ohci: S3C24XX OHCI
s3c2410-ohci s3c2410-ohci: USB bus mới đăng ký, được giao xe buýt số 1
s3c2410-ohci s3c2410-ohci: irq 42, io mem 0 × 49.000.000
usb usb1: cấu hình # 1 lựa chọn từ 1 sự lựa chọn
trung tâm 1-0:1.0: USB hub hàng
trung tâm 1-0:1.0: 2 cổng phát hiện
usbcore: đăng ký mới giao diện điều khiển libusual
s3c2440-usbgadget s3c2440-usbgadget: S3C2440: tăng đến 128 byte FIFO
chuột: PS / 2 thiết bị chuột thông thường cho tất cả các con chuột
đầu vào: gpio-phím như là / devices/platform/gpio-keys/input/input0
s3c2440-ts s3c2440-ts: Khởi
ts nhóm tạo bộ lọc len 12 độ sâu 2 gần 10 đập lúa 6
Tạo ts trung bình lọc len 20 độ sâu 2 ngày 24 tháng 12
Tạo ts bình lọc len 4 độ sâu 2 đập lúa 65.535
Tạo Linear ts lọc sâu 2
s3c2440-ts s3c2440-ts: 4 bộ lọc (s) khởi tạo
s3c2440-ts s3c2440-ts: nạp thành công
đầu vào: s3c2410 màn hình cảm ứng như là / devices/virtual/input/input1
S3C24XX RTC, (c) 2004,2006 Simtec Điện tử
s3c2410-RTC s3c2410-RTC: RTC tàn tật, lại cho phép
s3c2410-RTC s3c2410-RTC: RTC lõi: đăng ký s3c như rtc0
I2C / dev mục driver
S3C2410 Watchdog Timer, (c) 2004 Simtec Điện tử
s3c2410-wdt s3c2410-wdt: cơ quan giám sát hoạt động, thiết lập lại tàn tật, irq kích hoạt
cpuidle: sử dụng thang đốc
sdhci: Secure Digital Host Controller Interface driver
sdhci: Bản quyền (c) Pierre Ossman
ánh xạ kênh 0-0
s3c2440-SDI s3c2440-SDI: hỗ trợ xuống.
s3c2440-SDI s3c2440-SDI: Không khởi động được thực hiện.
Dẫn đăng ký thiết bị: led1
Dẫn đăng ký thiết bị: led2
Dẫn đăng ký thiết bị: led3
Dẫn đăng ký thiết bị: led4
Dẫn đăng ký thiết bị: đèn nền
usbcore: đăng ký mới giao diện điều khiển hiddev
usbcore: đăng ký mới giao diện điều khiển usbhid
usbhid: v2.6: USB HID driver lõi
Advanced Linux Sound Kiến trúc Driver Phiên bản 1.0.20.
Không có thiết bị cho ĐẠI UDA134X
Không có thiết bị cho s3c24xx DAI-i2s
S3C24XX_UDA134X SoC Audio driver
UDA134X SoC Audio Codec
asoc: UDA134X s3c24xx-i2s lập bản đồ ok
ALSA danh sách thiết bị:
# 0: S3C24XX_UDA134X (UDA134X)
TCP khối đăng ký
NET: Đăng ký giao thức gia đình 17
RPC: đăng ký vận tải UDP module.
RPC: đăng ký vận tải tcp module.
s3c2410-RTC s3c2410-RTC: thiết lập hệ thống đồng hồ để 2009/12/19 00:36:25 UTC (1261182985)
eth0: link down
IP-Config: đoán netmask 255.255.255.0
IP-Config: Hoàn thành:
thiết bị = eth0, addr = 192.168.1.85, mask = 255.255.255.0, gw = 255.255.255.255,
host = 192.168.1.85, miền =, NIS-miền = (không có),
bootserver = 255.255.255.255, rootserver = 192.168.1.10, rootpath =
Nhìn lên cảng RPC 100003/2 trên 192.168.1.10
eth0: kết nối, tốc độ 100Mbps, full-duplex, LPA 0xCDE1
Nhìn lên cảng RPC 100005 / 1 ngày 192.168.1.10
Vfs: Được đặt root (hệ thống tập tin nfs) trên thiết bị 00:14.
Giải phóng bộ nhớ init: 132K
Init: khởi động phiên bản 2,86
Xin vui lòng chờ đợi: khởi động ...
Bắt đầu từ udev
Populating cache dev
Remounting hệ thống tập tin gốc ...
Không biết giá trị HZ! (90) Giả sử 100.
ALSA: Khôi phục các cài đặt máy trộn ...
Cấu hình giao diện mạng ... Không có nhà nước là hiện tại cho thẻ S3C24XXUDA134X
/ Usr / sbin / alsactl: phân tích cú pháp: 1639: Không thể mở tập tin '/ usr/share/alsa/init/00main': Không có tập tin hoặc thư mục
nhà nước không có mặt cho thẻ S3C24XXUDA134X
nfs: server 192.168.1.10 không trả lời, vẫn cố gắng
Hi tất cả mọi người,
Tôi có chính xác cùng một hành vi sử dụng openembedded với NFS
Tôi giả sử rằng sau khi thông báo "nhà nước không có mặt cho thẻ S3C24XXUDA134X" openembedded cố gắng reconfig giao diện ethernet và không liên kết NFS nhưng tôi không biết phải làm gì để tránh điều này.
có ai tìm thấy một giải pháp?
nhờ giúp đỡ tôi
jmboy