Reklama

Hlavní stránka > NFS , TFTP , UBOOT > Bootování pomocí TFTP a NFS (aktualizováno)

Zavedení pomocí NFS a TFTP (aktualizováno)

Spíše než na sobě pomalu si své NAND flash je možné zavést mini2440 přes síť zavedením jádra pomocí TFTP a OS z podílu NFS. Proto je také mnohem rychlejší testovat změny. Fedora 11 pomocí které můžete použít k instalaci YUM TFTP, tftp-server a nfs-utils.

yum install tftp tftp-server nfs-utils

Vytvořil jsem složku / home/doug/mini2440/root_fs a doplňuje tento řádek do souboru / etc / exports, aby R / W přístup z 192.168.1 .*:

doug / mini2440 / root_fs 192.168.1.1 / 24 ( rw, sync ,no_root_squash ) / Home / Doug / mini2440 / root_fs 192.168.1.1 / 24 (rw, sync, no_root_squash)

.. A extrahován soubor Angstrom systému jako root / home/doug/mini2440/root_fs

Budete muset upravit / etc / xinetd.d / tftp nastavit TFTP. Mine je vyslán z níže uvedeného, ​​měli byste předtím alespoň nastavit disable = no.

# Default: off
# Popis: TFTP server slouží k souborům s Trivial File Transfer
# Protokol. TFTP Protokol se často používá pro zavádění bezdiskových
# Stanic, stažení konfiguračních souborů síťových tiskáren-aware,
# A spusťte instalační proces pro některé operační systémy.
služba tftp
{
disable = no
socket_type = dgram
protocol = udp
čekat = 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
cps = 100 2
flags = IPv4
}

Pak jsem začala služeb:

init.d / nfs start / Etc / init.d / nfs start

service xinetd start / Sbin / service xinetd začít

Pro automatizaci těchto Myslím, že můžete dělat:

chkconfig TFTP na

chkconfig xinetd na

chkconfig NFS

Dále jsem upravil na životní prostředí uboot. Pomocí příkazu setenv upravit nebo přidat položky, a savenev, když budete hotovi. Skončil jsem s následujícím:

MINI2440 # printenv
BootDelay = 3
přenosová rychlost = 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), 5 m (jádro), - (root)
=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 = $ {} AdresaIPserveru: $ {} root_nfs
ip = ${ipaddr} : ${serverip} :: ${netmask} :mini2440:eth0 ifconfig_static = Spustit setenv ifconfig ip = $ {} ipaddr: $ {} AdresaIPserveru: $ {} maska: mini2440: eth0
ip =dhcp ifconfig_dhcp = Spustit 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 = Spustit 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"
Velikost = 1E9088
fileaddr = 32000000
gatewayip = 192.168.1.100
netmask = 255.255.255.0
ipaddr = 192.168.1.85
AdresaIPserveru = 192.168.1.10
bootcmd = TFTP, bootm 32000000
oddíl = nand0, 0
mtddevnum = 0
mtddevname = U-boot

Poznámka: Při setenv budete muset vynechat = sign. Zřejmě budete chtít změnit některé z těchto, aby vyhovoval vašim nastavení sítě. Tady můj notebook je 192.168.1.10 a 192.168.1.100 je můj pfSense box, který je přiřazení 192.168.1.85 na mini2440 od ​​DHCP.

Při spuštění systému uboot stáhne přes TFTP jádro a pak Mount podíl NFS.

Pokud máte v síti DHCP Angstrom by se měl automaticky dostat IP. Můžete přeskočit zbytek je v tomto případě!

Pokud chcete, statickou adresu můžete změnit / etc / network / interfaces. Prostě jsem změnil DHCP na statické pro eth0:

iface eth0 inet statické

A po této systém zaveden do pořádku. Nakonec jsem si poznámku, která říká, že jsem odstranil symbolický odkaz / etc / resolve.conf a nahradil to:

místní domény
hledat v místní
nameserver 192.168.1.100

Upozorněni, že celá výše musí být v souladu s bránou firewall a SELinux, nebude to fungovat jinak!

Našel jsem následující odkazy užitečné:

TFTP

NFS

U-boot NFS / TFTP

Tags: , Kategorie: NFS , TFTP , UBOOT Tagy: ,
  1. Anafor
    31.prosince 2009 v 08:02 | # 1

    Vážení přátelé,
    Mám stavět openembedded distrubition pro mini2440. Mám kopírovat
    mini2440-base-image.tar.gz k mému PC a já arrenged NFS pro přeshraniční
    budovy. Funguje to OK, ale když jsem kopíroval a výpis
    mini2440-console-image.tar.gz, můj NFS neodpovídá. Máte nějaké
    rada pro mě? Zkopíroval jsem můj minicom terminálové zprávy a připojeno.

    Také jsem se snažil s rootfs NFS Sistem níže odkaz, ale to stále ještě není
    reagovat.

    U-Boot 1.3.2-mini2440 (říjen 6. 2009 - 12:51:09)

    I2C: ready
    DRAM: 64 MB
    Flash: 2 MB
    NAND: Bad bloku tabulky nebyl nalezen pro čipové 0
    Bad bloku tabulky nebyl nalezen pro čipové 0
    128 MiB
    Nalezené prostředí offset v OOB ..
    USB: USB S3C2410 Deviced
    In: sériové
    Out: sériové
    Chyba: sériové
    MAC: 08:08:11:18:12:27
    Hit libovolného tlačítka ukončíte autoboot: 0
    dm9000 I / O: 0 × 20000300, IČ: 0x90000a46
    DM9000: běžící v režimu 16 bitů
    MAC: 08:08:11:18:12:27
    TFTP ze serveru 192.168.1.10, naše IP adresa je 192.168.1.85
    Název souboru "uImage.bin".
    Zatížení adrese: 0 × 32000000
    Zatížení: Kontrolní špatný
    Kontrolní špatný
    T ################################################# ################
    ################################################## ###############
    #########
    provedeno
    Přenesených dat = 2031220 (1efe74 hex)
    # # Zavedení jádra z Legacy obraz 32000000 ...
    Jméno obrázku: Angstrom/2.6.31 + git/mini2440
    Vytvořeno: 2009-10-30 09:06:09 UTC
    Typ obrázku: ARM Linux Kernel Image (bez komprese)
    Velikost dat: 2031156 Bytes = 1.9 MB
    Zatížení Adresa: 30008000
    Vstupní bod: 30008000
    Ověření kontrolního součtu ... OK
    Vkládání jader ... OK
    OK

    Spuštění jádra ...

    Dekompresi
    Linux verze 2.6.31.1 (Sven @ office) (gcc version 4.2.4) # 1 pát říj 30 17:04:01 CEST 2009
    CPU: ARM920T [41129200] revizi 0 (ARMv4T), ČR = c0007177
    CPU: VIVT data cache, VIVT cache paměti pro instrukce
    Stroj: MINI2440
    Paměti politika: ECC zdravotním postižením, zpětný zápis dat vyrovnávací paměti
    CPU S3C2440A (ID 0 × 32440001)
    S3C24XX hodiny, (c) 2004 Simtec Electronics
    S3C244X: 405,000 MHz jádro, paměti, 101,250 MHz, 50,625 MHz periferní
    CLOCK: pomalém režimu (1.500 MHz), rychlý, na MPLL, UPLL na
    Vestavěný 1 zonelists v zóně, aby, mobility sdružení na. Celkem stránek: 16256
    Jádro příkazový řádek: console = ttySAC0, 115200 noinitrd init = / sbin / init = mini2440 0tb ip = 192.168.1.85 root = / dev / nfs rw nfsroot = 192.168.1.10: / HD
    PID hash tabulce záznamů: 256 (pořadí: 8, 1024 bajtů)
    Dentry tabulky hash mezipaměti položek: 8192 (pořadí: 3, 32768 bajtů)
    Inode-cache hash tabulce záznamů: 4096 (pořadí: 2, 16384 bytes)
    Paměť: 64 MB = 64 MB. Celkovou
    Paměti: 60640 KB k dispozici (kód 3568K, 417K data, 132K init, 0K highmem)
    SLUB: Genslabs = 11, HWalign = 32, order = 0-3, MinObjects = 0, CPU = 1, nodes = 1
    NR_IRQS: 85
    irq: clearing až status 02000000
    irq: clearing subpending status 00000002
    Console: barva dummy zařízení, 80 × 30
    konzole [ttySAC0] enabled
    Kalibrace zpoždění smyčky ... 201,93 bogomips (lpj = 504832)
    Montáž-cache hash tabulky položek: 512
    CPU: testování napište vyrovnávací soudržnost: OK
    NET: Registrovaní rodina protokolů 16
    MINI2440: Možnost řetězec mini2440 = 0tb
    MINI2440: LCD [0:240 x320] 1:800 2:1024 × 480 × 768
    S3C2440: Inicializace architektura
    S3C2440: IRQ Podpora
    S3C24XX DMA Driver, (c) 2003-2004,2006 Simtec Electronics
    DMA kanál 0 na c4808000, IRQ 33
    DMA kanál 1 na c4808040, IRQ 34
    DMA kanál 2 na c4808080, IRQ 35
    DMA kanál 3 na c48080c0, IRQ 36
    S3C244X: Hodiny Support, DVS off
    bio: vytvořit desku na 0
    usbcore: usbfs registrované Nové rozhraní ovladače
    usbcore: registrované Nové rozhraní ovladače hub
    usbcore: registrované Nové ovladače zařízení USB
    S3C-i2c s3c2440-I2C: slave adresy 0 × 10
    S3C-i2c s3c2440-I2C bus frekvence nastavena na 98 kHz
    S3C-i2c s3c2440-I2C: i2c-0: S3C I2C adapter
    NET: Registrovaní protokol rodina 2
    IP trasa tabulky hash mezipaměti položek: 1024 (pořadí: 0, 4096 bajtů)
    TCP založena hash tabulce záznamů: 2048 (pořadí: 2, 16384 bytes)
    TCP váží hash tabulce záznamů: 2048 (pořadí: 1, 8192 bytes)
    TCP: Hash tabulky, nakonfigurovat (založena 2048 váží 2048)
    TCP Reno registrované
    NET: Registrovaní rodina protokolů 1
    JFFS2 verze 2.2. (NAND) © 2001-2006 Red Hat, Inc
    ROMFS MTD (C) 2007 Red Hat, Inc
    msgmni byl nastaven na 118
    ALG: žádný test na stdrng (krng)
    IO plánovač NOOP registrované
    IO plánovač předběžné registrován (výchozí)
    IO plánovač termínu registrované
    IO plánovač CFQ registrované
    Console: přechod na barevné zařízení framebufferu 60 × 53
    fb0: s3c2410fb vyrovnávací zařízení
    s3c2440-uart.0: ttySAC0 na MMIO 0 × 50000000 (irq = 70) je S3C2440
    s3c2440-uart.1: ttySAC1 na MMIO 0 × 50004000 (irq = 73) je S3C2440
    s3c2440-uart.2: ttySAC2 na MMIO 0 × 50008000 (irq = 76) je S3C2440
    BRD: načtení modulu
    at24 0-0050: 1024 byte EEPROM 24c08 (zapisovatelné)
    dm9000 Ethernet Driver, V1.31
    eth0: dm9000e na c486e300, c4872304 IRQ 51 MAC: 08:08:11:18:12:27 (chip)
    S3C24XX NAND Driver, (c) 2004 Simtec Electronics
    s3c24xx-NAND s3c2440-NAND: Tacls = 1, 9ns Twrph0 = 3 29ns, 19ns Twrph1 = 2
    s3c24xx-NAND s3c2440-NAND: NAND měkké ECC
    NAND zařízení: Výrobce ID: 0xec, Chip ID: 0xf1 (Samsung NAND 128MiB 3,3 V 8-bit)
    Vytvoření 4 MTD oddíly na "NAND 128MiB 3,3 V 8-bit":
    0 × 000000000000-0 × 000000040000: "U-boot"
    ftl_cs: FTL hlavička nebyla nalezena.
    0 × 000000040000-0 × 000000060000: "U-Boot-ENV"
    ftl_cs: FTL hlavička nebyla nalezena.
    0 × 000000060000-0 × 000000560000: "jádra"
    ftl_cs: FTL hlavička nebyla nalezena.
    0 × 000000560000-0 × 000008000000: "root"
    ftl_cs: FTL hlavička nebyla nalezena.
    ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
    s3c2410-OHCI s3c2410-OHCI: S3C24XX OHCI
    s3c2410-OHCI s3c2410-OHCI: nová USB sběrnici registrovaných, přiřazené autobus číslo 1
    s3c2410-OHCI s3c2410-OHCI: IRQ 42, io mem 0 × 49000000
    USB USB1: Konfigurace # 1 vybrané z 1 choice
    hub 1-0:1.0: USB hub našel
    hub 1-0:1.0: 2 porty zjištěn
    usbcore: registrované Nové rozhraní ovladače libusual
    s3c2440-usbgadget s3c2440-usbgadget: S3C2440: zvýšení na 128 bajtů FIFO
    myší: PS / 2 myš zařízení společné pro všechny myši
    Vstup: GPIO-klávesy / devices/platform/gpio-keys/input/input0
    s3c2440-ts-ts s3c2440: Zahájení
    Vytvořenou skupinu TS filtr len 12 hloubka 2 s 10 prahy 6
    Vytvořeno Medián TS filtr len 20 hloubka 2 prosinec 24
    Vytvořeno Střední TS filtr len 4 hloubka 2 prahy 65535
    Vytvořeno Lineární TS filtr hloubka 2
    s3c2440-ts-ts s3c2440: 4 filtr (y) inicializovány
    s3c2440-ts-ts s3c2440: úspěšně zaveden
    Vstup: dotykový s3c2410 as / devices/virtual/input/input1
    S3C24XX RTC, (c) 2004,2006 Simtec Electronics
    s3c2410-rtc s3c2410-rtc: RTC zdravotním postižením, znovu umožňující
    s3c2410-rtc s3c2410-rtc: RTC hlavní: registrované S3C as rtc0
    i2c / dev položky řidiče
    S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics
    s3c2410-WDT s3c2410-WDT: watchdog neaktivní, reset zakázáno, povoleno přerušení
    cpuidle: Použití guvernér žebříku
    sdhci: Secure Digital Host Controller Interface řidiče
    sdhci: Copyright (c) Pierre Ossman
    mapovány kanál 0 - 0
    s3c2440-SDI s3c2440-SDI: vypnutý.
    s3c2440-SDI s3c2440-SDI: inicializace udělat.
    Registrované LED zařízení: LED1
    Registrované LED zařízení: LED2
    Registrované LED zařízení: LED3
    Registrované LED zařízení: LED4
    Registrované LED zařízení: podsvícení
    usbcore: registrované Nové rozhraní ovladače hiddev
    usbcore: registrované Nové rozhraní ovladače usbhid
    usbhid: v2.6: USB HID jádro řidiče
    Advanced Linux Sound Architecture Driver verze 1.0.20.
    Žádné zařízení pro DAI UDA134X
    Žádné zařízení pro DAI s3c24xx-I2S
    S3C24XX_UDA134X SoC zvukový ovladač
    UDA134X SoC Audio Codec
    Asoc: UDA134X s3c24xx-I2S mapování ok
    ALSA seznamu zařízení:
    # 0: S3C24XX_UDA134X (UDA134X)
    TCP krychlových registrované
    NET: Registrovaní rodina protokolů 17
    RPC: Registrované UDP modulu.
    RPC: Registrované TCP dopravní modul.
    s3c2410-rtc s3c2410-rtc: Nastavení systémových hodin na 2009-12-19 00:36:25 UTC (1261182985)
    eth0: link dole
    Ip-config: hádání netmask 255.255.255.0
    Ip-config: Kompletní:
    device = eth0, addr = 192.168.1.85, maska ​​= 255.255.255.0, gw = 255.255.255.255,
    host = 192.168.1.85, domain = NIS-domain = (none),
    bootserver = 255.255.255.255, rootserver = 192.168.1.10, rootpath =
    Vyhledávání portu RPC 100003 / 2 na 192.168.1.10
    eth0: link up, 100Mbps, full-duplex, LPA 0xCDE1
    Vyhledávání portu RPC 100005 / 1 na 192.168.1.10
    VFS: Montáž root (NFS souborový systém) na přístroji 0:14.
    Uvolnění init paměť: 132K
    INIT: version 2.86 bootování
    Počkejte prosím: bootování ...
    Spuštění udev
    Dev naplnění vyrovnávací paměti
    Opětovné montáži kořenový souborový systém ...
    Neznámý HZ hodnotu! (90) Předpokládejme, že 100.
    ALSA: Obnovení nastavení směšovače ...
    Konfigurace síťových rozhraní ... Žádný stát je přítomný na kartu S3C24XXUDA134X
    / Usr / sbin / alsactl: parse: 1639: Nelze otevřít soubor '/ usr/share/alsa/init/00main ": Žádný takový soubor nebo adresář
    Žádný stát je přítomen na kartu S3C24XXUDA134X
    NFS: server 192.168.1.10 neodpovídá, stále se snaží

  2. jmboy
    27.května 2010 v 08:49 | # 2

    Ahoj všichni,

    Mám úplně stejný chování pomocí openembedded s NFS

    Domnívám se, že poté, co zpráva "Žádný stát je přítomen na kartu S3C24XXUDA134X" openembedded snaží reconfig ethernet rozhraní a nedokáže NFS link, ale já nevím, co dělat, aby se zabránilo to.
    má někdo našel řešení?
    Díky za pomoc
    jmboy

  3. 08.08.2010 v 13:57 | # 3

    Ahoj
    Měl jsem stejný problém, síť byla přebudována a NFS spojení přerušilo.
    Nemohl jsem najít URL řešení místo tady, ale stále mám změněný soubor na svém rootfs.
    upravit soubor / etc / init.d / networking na rootfs
    Hledat linie, které vypadají takto:
    echo-n "Konfigurace síťových rozhraní ..."
    ifup-
    echo "Hotovo."
    a komentář z druhé linii, že něco takového:
    echo-n "Konfigurace síťových rozhraní ..."
    # Ifup-
    echo "Hotovo."
    Po tomto rootfs přes NFS nemá žádné problémy. Alespoň pro mě.
    To vypadá jako ošklivé řešení, ale doufám, že to pomůže.

  4. 08.08.2010 v 14:18 | # 4

    Ahoj, jo, když jsem narazil na tento problém jsem změnil na pevnou IP adresu. Zvláštní bylo, když jsem se snažil stejnou věc v jiné síti, nastavit v podstatě stejným způsobem, jsem nemusel nic měnit. Nikdy jsem přišel na to, v čem je rozdíl. Díky za příspěvek Irakli.

  1. Žádné zpětné odkazy.