Реклама

Начало > NFS , TFTP , UBOOT > зареждане с помощта на NFS и TFTP ( актуализиран)

Обувка използване на NFS и TFTP (актуализиран)

Вместо да се бавно износване флаш NAND можете да стартирате mini2440 по мрежа от зареждане на ядрото, използвайки TFTP и операционната система от дела на NFS. Това прави много по-бързо да тествате промени. Използването на Fedora 11, можете да използвате Yum да инсталирате TFTP, TFTP сървър и NFS-UTILS.

Yum инсталирате TFTP TFTP сървър NFS-UTILS

Създаде папка / home/doug/mini2440/root_fs и добави следния ред към / и т.н. / на износа, за да позволи на R / W достъп от 192.168.1 .*:

doug / mini2440 / root_fs 192.168.1.1 / 24 ( rw, sync ,no_root_squash ) / Начало / Дъг / mini2440 / root_fs 192.168.1.1 / 24 (RW, синхронизация, no_root_squash)

.. И извлича файла Angstrom система като корен / home/doug/mini2440/root_fs

Вие ще трябва да редактирате / и т.н. / xinetd.d / TFTP настройка на TFTP. Моята е публикуван по-долу за справка, най-малко трябва да изключите = не.

# По подразбиране: OFF
# Описание: TFTP сървър служи файлове с помощта на тривиалната прехвърляне на файлове
# Протокол. TFTP протокол често се използва за зареждане на бездискови
# Работни станции, изтегляне на файлове конфигурацията на мрежата наясно принтери,
# И да започне процеса на инсталация за някои операционни системи .
услуга TFTP
{
изключите = не
socket_type = dgram
Протокол = UDP
изчакайте = да
потребител = корен
sbin / in.tftpd сървър = / ЮЕсАр / sbin / in.tftpd
home / doug / mini2440 / kernel server_args = / Начало / Дъг / mini2440 / ядро
per_source = 11
CPS = 100 2
знамена = IPv4
}

След това започва услуги:

init.d / nfs start / И т.н. / init.d / NFS започне

service xinetd start / Sbin / услуга Xinetd началото

За да автоматизираме тези мисля, че можете да направите:

chkconfig TFTP за

chkconfig Xinetd

chkconfig NFS относно

След това редактор на околната среда uboot. Използвайте командата setenv да се променят или добавяне на записи и savenev, когато сте готови. Аз в крайна сметка със следното:

MINI2440 # printenv
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 операционни), 128k (ENV),(ядро), (корен)
=0tb mini2440 = mini2440 = 0tb
=ttySAC0, 115200 noinitrd bootargs_base = конзола = ttySAC0, 115200 noinitrd
= / sbin / init bootargs_init = InIt = / sbin / Init
= / dev / mtdblock3 rootfstype =jffs2 root_nand = корен = / Dev / mtdblock3 rootfstype = jffs2
= / dev / mmcblk0p2 rootdelay = 2 root_mmc = корен = / Dev / mmcblk0p2 rootdelay = 2
mnt / nfs root_nfs = / MNT / NFS
= / dev / nfs rw nfsroot = ${serverip} : ${root_nfs} set_root_nfs = setenv root_nfs корен = / Dev / NFS RW nfsroot = $ {serverip}: $ {root_nfs}
ip = ${ipaddr} : ${serverip} :: ${netmask} :mini2440:eth0 ifconfig_static = бягане setenv фоп IP = $ {ipaddr}: $ {serverip}: $ {мрежова маска}: mini2440: eth0
ip =dhcp ifconfig_dhcp = бягане setenv фоп IP = DHCP
=dhcp фоп = ПР ​​= 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 = бягане set_root_nfs; setenv bootargs $ {bootargs_base} $ {bootargs_init} $ {mini2440} $ {root_nfs} $ {фоп}
=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 = конзола = ttySAC0, 115200 noinitrd Init = / sbin / Init mini2440 = 0tb ПР = 192.168.1.85 корен = / Dev / NFS RW nfsroot = 192.168.1.10: / Начало / Дъг / mini2440 / root_fs
bootfile = "uImage"
Големина: 1E9088
fileaddr = 32000000
gatewayip = 192.168.1.100
Мрежовата маска = 255.255.255.0
ipaddr = 192.168.1.85
serverip = 192.168.1.10
bootcmd = TFTP; bootm 32000000
дял = nand0, 0
mtddevnum = 0
mtddevname = U-Boot

Имайте предвид, когато ви setenv трябва да пропусне знака =. Очевидно е, че ще искате да промените някои от това, за да отговарят на вашите настройка на мрежата. Ето моя лаптоп е 192.168.1.10 и 192.168.1.100 ми е pfsense кутия, която е възлагане на 192.168.1.85 mini2440 от DHCP.

Когато зареждате uboot система ще изтегли ядрото над TFTP и след това се монтира дял NFS.

Ако имате DHCP в мрежата ви Angstrom трябва автоматично да получи IP. Можете да пропуснете останалите в този случай!

Ако искате статичен адрес, можете да промените / и т.н. / мрежа / интерфейси. Аз просто промени DHCP статична за eth0:

iface eth0 инертен статични

И след това системата обувка горе глоба. Накрая аз имам бележка, която казва, че Изтрих символна връзка / и т.н. / resolve.conf, и го заменя с:

домейн местните
търсене местните
сървър 192.168.1.100

Трябва да знаете, че цялата на по-горе нужди да бъдат съвместими с вашата защитна стена и SELinux, тя няма да работи по друг начин!

Открих следните линкове полезни:

TFTP

NFS

U-Boot NFS / TFTP обувка

Tags: , Категории: NFS , TFTP , UBOOT Tags: ,
  1. Anafor
    31 декември 2009 г. в 08:02 | # 1

    Скъпи приятели,
    Имам изгради openembedded distrubition за mini2440. Аз сте копирали
    mini2440 база image.tar.gz моя хост компютър и arrenged NFS за кръст
    сградата. Тя работи добре, но когато се копира и екстракт
    mini2440-конзола image.tar.gz, ми NFS не отговаря. Имате ли някакви
    съвети за мен? Аз копирани Миником конзола си съобщения и приложени.

    Също така аз се опитах с rootfs за NFS SISTEM по-долу връзка, но тя все още не е
    отговаря.

    U-Boot 1.3.2 mini2440 (Oct 6 2009 - 12:51:09)

    Готови за I2C:
    DRAM памет: 64 MB
    Flash: 2 MB
    NAND: Bad блок маса, които не са открити за чип 0
    Bad блок маса, не е открит за чип 0
    128 MiB
    Намерени околната среда, компенсирани в OOB ..
    USB: S3C2410 USB Deviced
    In: сериен
    Out: сериен
    Err: сериен
    MAC: 08:08:11:18:12:27
    Хит произволен клавиш, за да спре autoboot: 0
    dm9000 I / O: 0 × 20000300, ID: 0x90000a46
    DM9000: бягане в 16 битов режим
    MAC: 08:08:11:18:12:27
    TFTP сървъра 192.168.1.10; нашия IP адрес е 192.168.1.85
    Filename "uImage.bin".
    Зареждане на адрес: 0 × 32000000
    Loading: контролна лошо
    контролна лошо
    T ################################################# ################
    ################################################## ###############
    #########
    направи
    Bytes прехвърлени = 2031220 (1efe74 шестнадесетичен)
    # # Зареждане на ядрото от Legacy Image 32000000 ...
    Име на снимката: Angstrom/2.6.31 + git/mini2440
    Добавено на: 10/30/2009 9:06:09 UTC
    Тип снимка: ARM Linux Kernel снимка (некомпресирани)
    Размер на данни: 2031156 Bytes = 1,9 MB
    Заредете Адрес: 30008000
    Входна точка: 30008000
    Проверка на Контролната ... OK
    Зареждане на ядрото изображение ... OK
    OK

    От ядрото ...

    Uncompressing
    Linux версия 2.6.31.1 (Sven @ офис) (GCC версия 4.2.4) # 1 Пет Окт 30 17:04:01 CST 2009
    CPU: ARM920T [41129200] ревизия 0 (ARMv4T), CR = c0007177
    CPU: VIVT данни кеш, VIVT инструкция кеш
    Машина: MINI2440
    Memory политика: ECC увреждания, Data кеш writeback
    CPU S3C2440A (ID 0 × 32440001)
    S3C24XX Часовници, (в) 2004 Simtec Електроника
    S3C244X: 405,000 MHz ядро, паметта 101,250 MHz, периферни 50.625 MHz
    CLOCK: бавен режим (1.500 MHz), бързо, MPLL, UPLL на
    Вградена 1 zonelists в Зона ред, групиране мобилност. Общо страници: 16 256
    Kernel команда линия: конзола = ttySAC0, 115200 noinitrd Init = / sbin / Init mini2440 = 0tb ПР = 192.168.1.85 корен = / Dev / NFS RW nfsroot = 192.168.1.10: / HD
    PID хеш записите в таблицата: 256 (ред: 8, 1024 байта)
    Dentry кеш хеш записите в таблицата: 8192 (ред: 3, 32768 байта)
    -Възел кеш хеш записите в таблицата с: 4096 (ред: 2, 16 384 байта)
    Памет: 64MB = 64MB общо
    Памет: 60640KB код на разположение (3568K, 417K данни, 132K Init, 0K highmem)
    SLUB: = 11 Genslabs HWalign = 32, Ред = 0-3, MinObjects = 0, процесорите = 1, Nodes = 1
    NR_IRQS: 85
    IRQ: клиринг в очакване на статута 02000000
    IRQ: клиринг subpending статус 00000002
    Console: цвят сляпо устройство 80 × 30
    конзола [ttySAC0] поддръжка
    Калибриране забавяне контур ... 201.93 BogoMIPS (lpj = 504832)
    Mount кеш хеш записите в таблицата: 512
    CPU: Тестване на съгласуваност напишете буфер: OK
    NET: Регистрирани семейство протокол 16
    MINI2440: низ Възможност mini2440 = 0tb
    MINI2440: LCD [0:240 x320] 1:800 × 480 2:1024 × 768
    S3C2440: Започва архитектура
    S3C2440: IRQ Поддръжка
    S3C24XX DMA драйвера, (в) 2003-2004,2006 Simtec Electronics
    DMA канал 0 c4808000, IRQ 33
    DMA канал 1 в c4808040, IRQ 34
    DMA канал 2 c4808080, IRQ 35
    DMA канал 3 c48080c0, IRQ 36
    S3C244X: часовник подкрепа, DVS изключен
    био: създаване на плоча на 0
    usbcore: регистриран нов драйвер интерфейс usbfs
    usbcore: регистриран нов драйвер интерфейс хъб
    usbcore: регистриран нов драйвер USB устройство
    s3c i2c s3c2440 i2c: адрес роб 0 × 10
    s3c i2c s3c2440 i2c: набор автобус честотата до 98 KHz
    s3c-i2c s3c2440 i2c: i2c-0: S3C I2C адаптер
    NET: Регистрирани семейство протокол 2
    IP маршрут кеш хеш записите в таблицата: 1024 (за: 0, 4096 байта)
    TCP създаде хеш записите в таблицата: 2048 (ред: 2, 16 384 байта)
    TCP обвърже хеш записите в таблицата: 2048 (ред: 1, 8192 байта)
    TCP: Hash конфигурирани таблици (създаден 2048 вържем 2048)
    TCP Reno регистрирани
    NET: Регистрирани семейство протокол 1
    JFFS2 версия 2.2. (NAND) © 2001-2006 Red Hat, Inc.
    ROMFS MTD (C) 2007 Red Hat, Inc.
    MSGMNI е до 118
    ALG: Нито един тест за stdrng (krng)
    IO Scheduler noop регистрирани
    IO Scheduler очакване регистрирани (по подразбиране)
    IO Scheduler крайния срок регистрирани
    IO Scheduler cfq регистрирани
    Console: преминаване на цвят устройство буфер 60 × 53
    fb0: s3c2410fb рамка устройство буфер
    s3c2440-uart.0: ttySAC0 на MMIO 0 × 50000000 (IRQ = 70) е един милион S3C2440
    s3c2440-uart.1: ttySAC1 на MMIO 0 × 50004000 (IRQ = 73) е един милион S3C2440
    s3c2440-uart.2: ttySAC2 на MMIO 0 × 50008000 (IRQ = 76) е един милион S3C2440
    BRD: модул зареден
    at24 0-0050: 1024 байт 24c08 EEPROM (записваеми)
    dm9000 Ethernet Driver, V1.31
    eth0: dm9000e c486e300 c4872304 IRQ 51 MAC: 08:08:11:18:12:27 (чип)
    S3C24XX NAND Driver (C) 2004 Simtec Electronics
    s3c24xx-NAND s3c2440 NAND: Tacls = 1, 9ns Twrph0 = 3 29ns, Twrph1 = 2 19ns
    s3c24xx NAND s3c2440-NAND: NAND меки ECC
    NAND устройство: Производител ID: 0xec, Chip ID: 0xf1 (Samsung NAND 128MiB 3,3 V 8-битов)
    Създаване на 4 MTD дялове на "NAND 128MiB 3,3 V 8-битов":
    0 × 000000000000-0 × 000 000 040 000: "U-обувка"
    ftl_cs: FTL заглавието не е намерен.
    0 × 000000040000-0 × 000000060000: "U-Boot-" Околна среда ""
    ftl_cs: FTL заглавието не е намерен.
    0 × 000000060000-0 × 000000560000: "ядрото"
    ftl_cs: FTL заглавието не е намерен.
    0 × 000000560000-0 × 000008000000: "корен"
    ftl_cs: FTL заглавието не е намерен.
    ohci_hcd: USB 1.1 'Open Host Controller (OHCI) Driver
    s3c2410 OHCI s3c2410 OHCI: S3C24XX OHCI
    s3c2410 OHCI s3c2410 OHCI: нов USB автобус регистрирани, възложени автобус номер 1
    s3c2410 OHCI s3c2410 OHCI: IRQ 42, Йо MEM 0 × 49000000
    USB usb1: конфигурация # 1 избрания от 1 избор
    хъб 1-0:1.0: USB хъб намерени
    хъб 1-0:1.0: откриване на 2 порта
    usbcore: регистриран нов драйвер интерфейс libusual
    s3c2440 usbgadget s3c2440 usbgadget: S3C2440: увеличаване FIFO до 128 байта
    мишки: PS / 2 мишката, който е общ за всички мишки
    вход: GPIO ключове / devices/platform/gpio-keys/input/input0
    s3c2440 TS s3c2440-ТС: Стартиране
    Създаден група TS филтър LEN 12 дълбочина 2 близо 10 вършееш 6
    Създаден Медиана TS филтър LEN 20 дълбочина 2 24 декември
    Създаден Mean TS филтър LEN 4 дълбочина 2 вършееш 65535
    Създаден Linear TS филтър дълбочина 2
    s3c2440 TS s3c2440-TS: 4 филтър (и) инициализира
    s3c2440 TS s3c2440-ТС: зареден успешно
    вход: s3c2410 сензорен екран / devices/virtual/input/input1
    S3C24XX RTC, (в) 2004,2006 Simtec Electronics
    s3c2410 РТК s3c2410 РТК: RTC увреждания, отново дава възможност
    s3c2410-РТК s3c2410-РТК: RTC ядро: регистриран s3c като rtc0
    i2c / Dev вписванията шофьор
    S3C2410 Watchdog таймер, (в) 2004 Simtec Електроника
    s3c2410-wdt s3c2410 wdt: пазител неактивни, нулиране с увреждания, IRQ позволи
    cpuidle: управител стълба
    sdhci: Secure Digital Host Controller Interface водача
    sdhci: Copyright (в) Pierre Ossman
    картирани канал 0 до 0
    s3c2440-SDI s3c2440-SDI: изключен.
    s3c2440-SDI s3c2440-SDI: инициализиране направено.
    Регистрирани доведе устройство: LED1
    Регистрирани доведе устройство: LED2
    Регистрирани доведе устройство: LED3
    Регистрирани доведе устройство: led4
    Регистрирани доведе устройство: подсветка
    usbcore: регистриран нов драйвер интерфейс hiddev
    usbcore: регистриран нов драйвер интерфейс usbhid
    usbhid: v2.6: USB HID основният двигател
    Advanced Linux Sound Architecture Driver Version 1.0.20.
    Не устройство за DAI UDA134X
    Не устройство за DAI s3c24xx i2s
    S3C24XX_UDA134X SoC Audio драйвер
    UDA134X SoC Audio Codec
    ASOC: UDA134X s3c24xx i2s картографиране OK
    ALSA устройство списък:
    # 0: S3C24XX_UDA134X (UDA134X)
    TCP кубически регистрирани
    NET: Регистрирани семейство протокол 17
    RPC: Регистрирани UDP транспорт модул.
    RPC: Регистрирани TCP транспорт модул.
    s3c2410 РТК s3c2410-РТК: настройка на системния часовник до 19/12/2009 00:36:25 UTC (1261182985)
    eth0: връзка надолу
    IP Config: Отгатване мрежова маска 255.255.255.0
    IP Config: Complete:
    устройството = eth0, адр = 192.168.1.85, маска = 255.255.255.0, GW = 255.255.255.255,
    домакин = 192.168.1.85, домейн = Ниш-домейн = (няма),
    bootserver = 255.255.255.255, rootserver = 192.168.1.10, rootpath =
    Търсене на пристанището 100003/2 RPC, на 192.168.1.10
    eth0: връзка до 100Mbps, пълен дуплекс, LPA 0xCDE1
    Търсене на пристанището 100005/1 RPC, на 192.168.1.10
    VFS: Монтирани корен (NFS файлова система) на устройството 0:14.
    Освобождаване Init памет: 132K
    Init: версия 2.86 обувка
    Моля, изчакайте зареждането ...
    От udev
    Населяващи Dev кеш
    Remounting коренова система файл ...
    Неизвестен HZ стойност! (90) Да приемем, 100.
    ALSA: Възстановяване на миксер настройки ...
    Конфигуриране на мрежови интерфейси ... Никоя държава не е за карта S3C24XXUDA134X
    / ЮЕсАр / sbin / alsactl: разбор: 1639: Не може да отворите файла "/ usr/share/alsa/init/00main": Няма такъв файл или директория
    Никоя държава не е за карта S3C24XXUDA134X
    NFS: сървъра 192.168.1.10 не отговаря, все още се опитва

  2. jmboy
    27 май, 2010 в 08:49 | # 2

    Здравейте всички,

    Имам абсолютно същото поведение, използвайки openembedded с NFS

    Предполагам, че след съобщението "Никоя държава не е налице за карта S3C24XXUDA134X" openembedded се опитват да reconfig Ethernet интерфейс и не NFS връзка, но аз не знам какво да направя, за да се избегне това.
    Някой намери решение?
    благодаря, че ми помагат
    jmboy

  3. 8-ми август, 2010 в 13:57 | # 3

    Здрасти
    Имах същия проблем, мрежа е преконфигурира и NFS връзка е загубен.
    Не можах да намеря URL на решение, за да публикувате тук, но аз все още имам файл се промени в моя rootfs.
    редактирате файла / и т.н. / init.d / работа в мрежа на вашия rootfs
    Намери линии, които изглеждат така:
    ехо-н "Конфигуриране на мрежови интерфейси ..."
    ifup-
    ехо "."
    и коментар втора линия, за да получите нещо подобно:
    ехо-н "Конфигуриране на мрежови интерфейси ..."
    # Ifup-а
    ехо "."
    , след това rootfs над NFS няма проблеми. Поне за мен.
    Това изглежда като грозна заобикаляне на проблема, но се надявам, че ще ви помогне.

  4. 8-ми август, 2010 в 14:18 | # 4

    Здравейте, да, когато се натъкнах на този проблем смених с фиксиран IP адрес. Странното беше, когато аз се опитах на едно и също нещо по различен мрежа, конфигурирани в голяма степен по същия начин, аз не трябва да се промени нищо. Аз никога не разбрали каква е разликата. Благодаря за поста Иракли.

  1. Няма проследявания все още.