Reklamë

Faqja kryesore > NFS , TFTP , UBOOT > Booting përdorur NFS dhe TFTP (updated)

Booting përdorur NFS dhe TFTP (updated)

Në vend se ngadalë veshur nga Nand flash tuaj ju mund të boot mini2440 në rrjet nga ngarkimit të kernelit përdorur TFTP dhe OS nga një pjesë NFS. Kjo gjithashtu e bën atë shumë më të shpejtë për të provuar ndryshimet. Përdorimi i Fedora 11 mund të përdorni për të instaluar Yum TFTP, TFTP-server dhe NFS-utils.

yum install TFTP TFTP-server NFS-utils

Kam krijuar një dosje / home/doug/mini2440/root_fs dhe shtuar rreshtin e mëposhtëm për të / etc / eksportet për të lejuar r / w qasje nga 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)

.. Dhe nxjerrë sistemit fotografi Angstrom si rrënjë të / home/doug/mini2440/root_fs

Ju do të duhet për të redaktuar / etc / xinetd.d / TFTP të setup TFTP. Minave është postuar më poshtë, për referencë, ju të paktën duhet për të vendosur disable = no.

# Default: off
# Përshkrimi: server TFTP shërben fotografi duke përdorur transfer parëndësishëm fotografi
# Protokoll. Protokolli TFTP është përdorur shpesh për të boot diskless
# Workstations, shkarko fotografi konfigurimit të rrjetit të vetëdijshëm printera,
# Dhe për të filluar procesin e instalimit për disa sistemeve operative.
shërbimit TFTP
{
disable = no
socket_type = dgram
protokoll = udp
prisni = 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
Flamujt = IPv4
}

Unë pastaj filloi shërbimet:

init.d / nfs start / Etc / init.d / NFS fillim

service xinetd start / Sbin / e shërbimit të fillojë xinetd

Të Automate këto unë mendoj se ju mund të bëni:

chkconfig TFTP në

chkconfig xinetd për

chkconfig NFS për

Tjetra i redaktuar mjedisin uboot. Përdor komandën setenv për të modifikuar ose shtuar shënimet dhe savenev kur të keni mbaruar. I përfunduar me sa vijon:

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-boot), 128K (env), 5 milion (kernel), - (root)
=0tb mini2440 = mini2440 = 0tb
=ttySAC0, 115200 noinitrd bootargs_base = konsol = 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 rrënjë root_nfs = / dev / nfs rw nfsroot = $ {serverip}: $ {root_nfs}
ip = ${ipaddr} : ${serverip} :: ${netmask} :mini2440:eth0 ifconfig_static = drejtuar ip setenv ifconfig = $ {ipaddr}: $ {serverip}:: $ {netmask}: mini2440: eth0
ip =dhcp ifconfig_dhcp = drejtuar ip setenv ifconfig = 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 = drejtuar 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 = konsol = ttySAC0, 115.200 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
ndarje = nand0, 0
mtddevnum = 0
mtddevname = u-boot

Shënim kur ju setenv ju duhet të heq shenjës =. Natyrisht ju do të doni të ndryshoni një pjesë të kësaj që të përputhet me setup tuaj rrjetit. Këtu laptop im është 192.168.1.10 dhe 192.168.1.100 është kutinë time pfsense e cila është caktuar 192.168.1.85 të mini2440 nga DHCP.

Kur ju boot uboot sistemi do të shkarkoni kernel mbi TFTP dhe pastaj malin pjesën NFS.

Nëse keni DHCP në rrjetin tuaj Angstrom duhet automatikisht të marrë një IP. Ju mund të kaloni pjesën tjetër në këtë rast!

Nëse doni një adresë statike ju mund të ndryshojë / etc / network / interfaces. Unë thjesht ndryshuar DHCP për statike për eth0:

inet iface eth0 statike

Dhe pas këtij sistemi booted gjobë. Së fundi unë kam një shënim që thotë se unë fshihet symlink / etc / resolve.conf dhe e zëvendësoi atë me:

domain lokale
kërko lokale
nameserver 192.168.1.100

Të paralajmëruar se të gjithë e nevojave më lart të jetë në përputhje me firewall tuaj dhe SELinux, ajo nuk do të funksionojë ndryshe!

Kam gjetur lidhjet e mëposhtme të dobishme:

TFTP

NFS

U-boot NFS / TFTP boot

Tags: , Temat: NFS , TFTP , UBOOT Tags: ,
  1. Anafor
    31 Dhj 2009 at 08:02 | # 1

    Të dashur Miq,
    Unë kam ndërtuar një distrubition openembedded për mini2440. Unë kam kopjuar
    mini2440-bazë-image.tar.gz për pc time presë dhe unë arrenged një NFS për ndër
    ndërtimit. Ajo punon në rregull, por kur kam kopjuar dhe nxjerrjen e
    mini2440-console-image.tar.gz, NFS ime nuk është përgjigjur. A keni ndonjë
    Këshilla për mua? I kopjuar mesazhet minicom mi tastierë dhe bashkangjitur atë.

    Gjithashtu unë u përpoq me të rootfs për NFS SISTEM poshtë lidhje, por ajo ende nuk është
    përgjigjej.

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

    I2C: gati
    DRAM: 64 MB
    Flash: 2 MB
    Nand: Tabela Bad bllok nuk u gjet për chip 0
    Tabela e keqe bllok nuk u gjet për chip 0
    128 MiB
    Mjedisi Found kompensuar në OOB ..
    USB: S3C2410 USB Deviced
    Në: serial
    Nga: serial
    Gaboj: serial
    MAC: 08:08:11:18:12:27
    Hit ndonjë kyç për të ndaluar autoboot: 0
    dm9000 i / o: 0 × 20000300, id: 0x90000a46
    DM9000: konkurrojnë në 16 mënyra pak
    MAC: 08:08:11:18:12:27
    TFTP nga serveri 192.168.1.10; adresën tonë të IP është 192.168.1.85
    'UImage.bin' Filename.
    Adresa Load: 0 × 32000000
    Loading: checksum të këqija
    checksum të këqija
    T ################################################# ################
    ################################################## ###############
    #########
    bërë
    Bytes transferuar = 2031220 (1efe74 magji)
    # # Booting kernel nga Paraparje Trashëgimia në 32000000 ...
    Image Name: Angstrom/2.6.31 + git/mini2440
    Krijuar: 2009/10/30 09:06:09 UTC
    Tipi Skedës: ARM Linux kernel Image (ngjeshur)
    Të dhënat e Size: 2031156 Bytes = 1,9 MB
    Adresa Load: 30008000
    Pika e hyrjes: 30008000
    Verifikimin Checksum ... OK
    Image Loading kernel ... OK
    Në rregull

    Duke filluar kernel ...

    Uncompressing
    Linux version 2.6.31.1 (Sven @ zyra) (gcc version 4.2.4) # 1 Fri 30 tetor 2009 17:04:01 CST
    CPU: ARM920T [41129200] rishikimi 0 (ARMv4T), cr = c0007177
    CPU: VIVT dhënat cache, cache VIVT udhëzim
    Machine: MINI2440
    Politika Memory: ECC me aftësi të kufizuara, writeback cache dhënave
    CPU S3C2440A (id 0 × 32440001)
    Clocks S3C24XX, (c) 2004 Elektronikë Simtec
    S3C244X: 405,000 core MHz, memorie 101,250 MHz, periferike 50,625 MHz
    ORA: mode Slow (1.500 MHz), të shpejtë, MPLL në, UPLL në
    Ndërtuar 1 zonelists në mënyrë Zona, grupim lëvizshmërinë. Gjithsej faqe: 16256
    Kernel komandën linjë: konsol = 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 entries hash table: 256 (që: 8, 1024 bytes)
    Cache Dentry hash tabela entries: 8192 (mënyrë: 3, 32768 bytes)
    Inode-cache entries hash table: 4096 (mënyrë: 2, 16384 bytes)
    Memory: 64MB = 64MB gjithsej
    Memory: 60640KB dispozicion (kodi 3568K, të dhëna 417K, 132K init, highmem 0K)
    Slub: Genslabs = 11, HWalign = 32, Rendi = 0-3, MinObjects = 0, CPU = 1, nyjet = 1
    NR_IRQS: 85
    IRQ: Statusi pastrimin pritje 02000000
    IRQ: pastrimin e statusit subpending 00000002
    Console: dummy ngjyra e pajisjes 80 × 30
    console [ttySAC0] aktivizuar
    Loop calibrating vonesë ... 201,93 BogoMIPS (LPJ = 504.832)
    Mount-cache entries hash table: 512
    CPU: Shkruani Testimi tampon koherencës: ok
    NET: familja e regjistruar protokollit 16
    MINI2440: Option string mini2440 = 0tb
    MINI2440: LCD [0:240 x320] 1:800 × 480 × 768 2:1024
    S3C2440: Arkitektura Initialising
    S3C2440: Mbështetje IRQ
    S3C24XX Shofer DMA, (c) 2003-2004,2006 Simtec Elektronikë
    DMA channel 0 në c4808000, IRQ 33
    DMA kanal 1 në c4808040, IRQ 34
    DMA kanali 2 në c4808080, IRQ 35
    DMA kanal 3 në c48080c0, IRQ 36
    S3C244X: Mbështetje Clock, DVS off
    bio: të krijojë pllakë në 0
    usbcore: regjistruar usbfs ri shofer ndërfaqe
    usbcore: regjistruar ri shofer ndërfaqe qendër
    usbcore: regjistruar ri shofer pajisje USB
    s3c-I2C s3c2440-I2C: Adresa robi 0 × 10
    s3c-I2C s3c2440-I2C: frekuencave autobus të vendosur në 98 KHz
    s3c-I2C s3c2440-I2C: I2C-0: S3C përshtatës I2C
    NET: familja Regjistruar protokollit 2
    IP cache rrugë tabela hash entries: 1024 (rendit: 0, 4096 bytes)
    TCP themeluar entries hash table: 2048 (mënyrë: 2, 16384 bytes)
    TCP entries lidhin hash table: 2048 (mënyrë: 1, 8192 bytes)
    TCP: tavolina Hash konfiguruar (themeluar 2048 lidhin 2048)
    TCP Reno e regjistruar
    NET: familja e regjistruar protokollit 1
    JFFS2 version 2.2. (Nand) © 2001-2006 Red Hat, Inc
    ROMFS MTD (C) 2007 Red Hat, Inc
    msgmni ka qenë e vendosur të 118
    ALG: Asnjë provë për stdrng (krng)
    io scheduler noop regjistruar
    io Scheduler regjistruar paraprak (default)
    Afati i fundit io scheduler regjistruar
    io scheduler cfq regjistruar
    Console: kalimi te ngjyrë neutrale pajisjen kornizë 60 × 53
    fb0: tampon s3c2410fb kornizë pajisje
    s3c2440-uart.0: ttySAC0 at MMIO 0 × 50000000 (IRQ = 70) është një S3C2440
    s3c2440-uart.1: ttySAC1 at MMIO 0 × 50004000 (IRQ = 73) është një S3C2440
    s3c2440-uart.2: ttySAC2 at MMIO 0 × 50008000 (IRQ = 76) është një S3C2440
    BRD: Moduli i ngarkuar
    0-0050 at24: 1024 byte 24c08 EEPROM (shkruhet)
    dm9000 Shofer Ethernet, V1.31
    eth0: dm9000e në c486e300, c4872304 51 IRQ MAC: 08:08:11:18:12:27 (chip)
    S3C24XX Shofer Nand, (c) 2004 Simtec Elektronikë
    s3c24xx-Nand s3c2440-Nand: Tacls = 1, 9ns Twrph0 = 3 29ns, Twrph1 = 2 19ns
    s3c24xx-Nand s3c2440-Nand: Nand butë ECC
    Pajisja Nand: ID Prodhuesi: 0xec, Chip ID: 0xf1 (Samsung Nand 128MiB 3,3 V 8-bit)
    Krijimi i 4 ndarëse MTD në "Nand ​​128MiB 3,3 V 8-bit":
    0 × × 000000000000-0 000000040000: "u-boot"
    ftl_cs: header FTL nuk u gjet.
    0 × × 000000040000-0 000000060000: "U-boot-env"
    ftl_cs: header FTL nuk u gjet.
    0 × × 000000060000-0 000000560000: "kernel"
    ftl_cs: header FTL nuk u gjet.
    0 × × 000000560000-0 000008000000: "root"
    ftl_cs: header FTL nuk u gjet.
    ohci_hcd: 'Open' USB 1.1 Controller Host (OHCI) Shofer
    s3c2410-ohci s3c2410-ohci: S3C24XX OHCI
    s3c2410-ohci s3c2410-ohci: ri USB autobus regjistruar, numrin rendor të caktuar autobus 1
    s3c2410-ohci s3c2410-ohci: IRQ 42, io mem 0 × 49000000
    usb USB1: konfigurim # 1 zgjedhur nga 1 zgjedhje
    Hub 1-0:1.0: USB Hub gjetur
    Hub 1-0:1.0: 2 portet zbuluar
    usbcore: regjistruar ri shofer ndërfaqe libusual
    s3c2440-usbgadget s3c2440-usbgadget: S3C2440: FIFO në rritje për 128 bytes
    minj: PS / 2 pajisje miun përbashkët për të gjitha minj
    input: gpio-çelësat si / devices/platform/gpio-keys/input/input0
    s3c2440-ts-ts s3c2440: Duke filluar
    Krijuar grup ts filter len 12 2 thellësi të ngushtë 10 shij 6
    Krijuar Mediana ts filter len 20 thellësinë 2 dhjetor 24
    Krijuar Mesatarja ts filter len 4 thellësinë 2 shij 65535
    Krijuar Linear ts thellësi filter 2
    s3c2440-ts-ts s3c2440: 4 filtër (s) initialized
    s3c2440-ts-ts s3c2440: ngarkuar me sukses
    input: s3c2410 prekje si / devices/virtual/input/input1
    S3C24XX RTC, (c) 2004,2006 Simtec Elektronikë
    s3c2410-RTC s3c2410-RTC: RTC me aftësi të kufizuara, duke bërë të mundur të ri-
    s3c2410-RTC s3c2410-RTC: RTC kryesore: s3c regjistruar si rtc0
    I2C / dev shënimet e shoferit
    S3C2410 Timer Mbikqyrja, (c) 2004 Elektronikë Simtec
    s3c2410-WDT s3c2410-WDT: mbikqyrëse joaktive, reset me aftësi të kufizuara, IRQ aktivizuar
    cpuidle: duke përdorur shkallë guvernatori
    sdhci: Secure Digital Interface Controller Host shofer
    sdhci: Copyright (c) Pierre Ossman
    kanal plotësisht 0 deri 0
    s3c2440-SDI s3c2440-sdi: powered poshtë.
    s3c2440-SDI s3c2440-sdi: againu.pas bërë.
    Pajisja e regjistruar udhëhequr: led1
    Pajisja e regjistruar udhëhequr: led2
    Pajisja e regjistruar udhëhequr: led3
    Pajisja e regjistruar udhëhequr: led4
    Pajisja e regjistruar udhëhequr: backlight
    usbcore: regjistruar ri shofer ndërfaqe hiddev
    usbcore: regjistruar ri shofer ndërfaqe usbhid
    usbhid: v2.6: USB shofer fshehėn kryesore
    Avancuar Arkitekturë Shofer Linux Sound Version 1.0.20.
    Nuk ka pajisje për DAI UDA134X
    Nuk ka pajisje për DAI s3c24xx-i2s
    S3C24XX_UDA134X shofer SoC Audio
    UDA134X SoC Audio Codec
    asoc: UDA134X s3c24xx-i2s mapping ok
    Lista e ALSA pajisje:
    # 0: S3C24XX_UDA134X (UDA134X)
    TCP kub regjistruar
    NET: familja e regjistruar protokollit 17
    RPC: Registered modul PZHU transportit.
    RPC: Registered modul TCP transportit.
    s3c2410-RTC s3c2410-RTC: Sistemi i përcaktimit orën për 2009/12/19 00:36:25 UTC (1261182985)
    eth0: Lidhje poshtë
    IP-Config: netmask guessing 255.255.255.0
    IP-Config: Complete:
    Pajisja = eth0, PE = 192.168.1.85, maskë = 255.255.255.0, gw = 255.255.255.255,
    host = 192.168.1.85, domain =, Nish-domain = (none),
    bootserver = 255.255.255.255, rootserver = 192.168.1.10, rootpath =
    Looking up portin e RPC 100003 / 2 mbi 192.168.1.10
    eth0: Lidhje up, 100Mbps, full-duplex, LPA 0xCDE1
    Looking up portin e RPC 100005 / 1 mbi 192.168.1.10
    VFS: root Kalorësisë (NFS filesystem) në 0:14 pajisje.
    Lirimi kujtesës init: 132K
    Init: version 2,86 booting
    Ju lutem prisni: booting ...
    Udev Duke filluar
    Popullim cache dev
    Remounting file sistemit root ...
    Vlera e panjohur HZ! (90) Supozojmë 100.
    ALSA: settings Rivendosja mikser ...
    Configuring ndërfaqe rrjeti ... Asnjë shtet nuk është i pranishëm për kartën S3C24XXUDA134X
    / Usr / sbin / alsactl: kuptoj: 1639: Në pamundësi për të hapur dosjen '/ usr/share/alsa/init/00main': Asnjë fotografi të tilla apo directory
    Asnjë shtet nuk është i pranishëm për kartën S3C24XXUDA134X
    NFS: 192.168.1.10 server nuk përgjigjej, ende duke u përpjekur

  2. jmboy
    Maj 27, 2010 at 08:49 | # 2

    Hi të gjithë,

    Unë kam pikërisht sjellje të njëjtë duke përdorur openembedded me NFS

    Unë mendoj se pas mesazhin: "Asnjë shtet nuk është i pranishëm për kartën S3C24XXUDA134X" openembedded të përpiqet të reconfig Ethernet interface dhe nuk lidhje NFS, por unë nuk e di se çfarë duhet të bëni për të shmangur këtë.
    ka dikush gjetur një zgjidhje?
    thanks for ndihmuar mua
    jmboy

  3. 8 gusht 2010 at 13:57 | # 3

    Hi
    I kishte të njëjtin problem, rrjeti u rikonfiguruar dhe lidhja NFS kishte humbur.
    Unë nuk mund të gjeni URL e zgjidhjes tek postimi këtu, por unë ende kanë ndryshuar fotografi në rootfs tim.
    edit skedarin / etc / init.d / networking në rootfs tuaj
    gjeni linjave që duken si kjo:
    echo-n "konfiguruar ndërfaqet e rrjetit ..."
    ifup-a
    echo "bërë."
    dhe koment me linjë të dytë që të ketë diçka si kjo:
    echo-n "konfiguruar ndërfaqet e rrjetit ..."
    # Ifup-a
    echo "bërë."
    Pas kësaj rootfs mbi NFS ka asnjë problem. Të paktën për mua.
    Kjo duket si zgjidhje të shëmtuar, por shpresoj se do të ju ndihmojë.

  4. 8 gusht 2010 at 14:18 | # 4

    Hi, vërtet, kur i erdhën të gjithë këtë problem i ndryshuar në një adresë IP fikse. Gjë e çuditshme ishte kur unë u përpoq të njëjtën gjë në një rrjet të ndryshme, i konfiguruar në shumë e shumë të njëjtën mënyrë, unë nuk kishte nevojë për të ndryshuar asgjë. Unë kurrë nuk artistikisht se çfarë dallimi ishte. Faleminderit për Irakli post.

  1. Jo ndjekëse ende.