abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 03:55 | Nová verze

    Byla vydána Java 26 / JDK 26. Nových vlastností (JEP - JDK Enhancement Proposal) je 10. Odstraněno bylo Applet API.

    Ladislav Hagara | Komentářů: 0
    včera 23:55 | Nová verze

    Byla vydána nová verze 260 správce systému a služeb systemd (Wikipedie, GitHub). Odstraněna byla podpora skriptů System V. Aktualizovány byly závislosti. Minimální verze Linuxu z 5.4 na 5.10, OpenSSL z 1.1.0 na 3.0.0, Pythonu z 3.7.0 na 3.9.0…

    Ladislav Hagara | Komentářů: 3
    včera 18:11 | Nová verze

    Byla vydána nová verze 5.1 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v poznámkách k vydání. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 04:55 | Nová verze

    Bylo oznámeno vydání nové verze 8.1 "Hoare" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Doprovodný příspěvek na blogu Khronosu rozebírá kódování a dekódování videa pomocí Vulkan Compute Shaders v FFmpeg.

    Ladislav Hagara | Komentářů: 7
    včera 04:33 | Zajímavý projekt

    Byl představen open-source a open-hardware prototyp nízkonákladového raketometu kategorie MANPADS, který byl sestaven z běžně dostupné elektroniky a komponent vytištěných na 3D tiskárně. Raketa využívá skládací stabilizační křidélka a canardovou stabilizaci aktivně řízenou palubním letovým počítačem ESP32, vybaveným inerciální měřicí jednotkou MPU6050 (gyroskop a akcelerometr). Přenosné odpalovací zařízení obsahuje GPS,

    … více »
    NUKE GAZA! 🎆 | Komentářů: 35
    16.3. 14:22 | IT novinky

    Vědci z univerzity La Sapienza v Římě vyvinuli systém, který dokáže identifikovat jednotlivce pouze na základě toho, jak narušují signály Wi-Fi. Autoři tuto novou technologii nazvali WhoFi. Na rozdíl od tradičních biometrických systémů, jako jsou skenery otisků prstů a rozpoznávání obličeje, nevyžaduje tato metoda přímý fyzický kontakt ani vizuální vstupy. WhoFi může také sledovat jednotlivce na větší ploše než kamera s pevnou polohou; stačí, je-li k dispozici Wi-Fi síť.

    Ladislav Hagara | Komentářů: 11
    16.3. 04:22 | Nová verze

    SuperTux (Wikipedie), tj. klasická 2D plošinovka inspirovaná sérií Super Mario, byl vydán v nové verzi 0.7.0. Videoukázka na YouTube. Hrát lze i ve webovém prohlížeči.

    Ladislav Hagara | Komentářů: 7
    16.3. 03:11 | Zajímavý projekt

    Ageless Linux je linuxová distribuce vytvořená jako politický protest proti kalifornskému zákonu o věkovém ověřování uživatelů na úrovni OS (AB 1043). Kromě běžného instalačního obrazu je k dispozici i konverzní skript, který kompatibilní systém označí za Ageless Linux a levné jednodeskové počítače v ceně 12$ s předinstalovaným Ageless Linuxem, které se chystají autoři projektu dávat dětem. Ageless Linux je registrován jako operační

    … více »
    NUKE GAZA! 🎆 | Komentářů: 9
    15.3. 15:33 | Humor

    PimpMyGRC upravuje vzhled toolkitu GNU Radio a přidává alternativní barevná témata. Primárním cílem autora bylo pouze vytvořit tmavé prostředí vhodné pro noční práci, nicméně k dispozici je nakonec celá škála barevných schémat včetně možností různých animací a vizuálních efektů (plameny, matrix, bubliny...), které nepochybně posunou uživatelský zážitek na zcela jinou úroveň. Témata jsou skripty v jazyce Python, které nahrazují

    … více »
    NUKE GAZA! 🎆 | Komentářů: 4
    15.3. 14:33 | Nová verze Ladislav Hagara | Komentářů: 4
    Které desktopové prostředí na Linuxu používáte?
     (16%)
     (7%)
     (0%)
     (11%)
     (29%)
     (2%)
     (5%)
     (1%)
     (13%)
     (24%)
    Celkem 1098 hlasů
     Komentářů: 27, poslední včera 19:26
    Rozcestník

    Dotaz: BASH. Trosku slozitejsi skript.

    9.8.2007 10:39 OgeeN
    BASH. Trosku slozitejsi skript.
    Přečteno: 522×
    Zdravim, snazim se napsat skript, ktery by umel vypsat podle IRQ ke kteremu ethX patri sitova karta.

    Tedy:

    eth0 Realtek

    eth1 3com

    atd.

    Zatim jsem se dostal k tomu ze si pomoci lspci -v a sedu vyparsuji sitove karty:
    
    [root@fw-liberec ~]# lspci -v|sed -e '/./{H;$!d;}' -e 'x;/Ethernet/!d;'
    
    03:04.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5714 Gigabit Ethernet (rev a3)
            Subsystem: Hewlett-Packard Company NC324i PCIe Dual Port Gigabit Server Adapter
            Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 74
            Memory at fdef0000 (64-bit, non-prefetchable) [size=64K]
            Memory at fdee0000 (64-bit, non-prefetchable) [size=64K]
            Capabilities: [40] PCI-X non-bridge device
            Capabilities: [48] Power Management version 2
            Capabilities: [50] Vital Product Data
            Capabilities: [58] Message Signalled Interrupts: 64bit+ Queue=0/3 Enable+
    
    03:04.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5714 Gigabit Ethernet (rev a3)
            Subsystem: Hewlett-Packard Company NC324i PCIe Dual Port Gigabit Server Adapter
            Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 82
            Memory at fded0000 (64-bit, non-prefetchable) [size=64K]
            Memory at fdec0000 (64-bit, non-prefetchable) [size=64K]
            Capabilities: [40] PCI-X non-bridge device
            Capabilities: [48] Power Management version 2
            Capabilities: [50] Vital Product Data
            Capabilities: [58] Message Signalled Interrupts: 64bit+ Queue=0/3 Enable+
    
    07:00.0 Ethernet controller: Intel Corporation 82572EI Gigabit Ethernet Controller (Copper) (rev 06)
            Subsystem: Intel Corporation PRO/1000 PT Desktop Adapter
            Flags: bus master, fast devsel, latency 0, IRQ 66
            Memory at fdfe0000 (32-bit, non-prefetchable) [size=128K]
            Memory at fdfc0000 (32-bit, non-prefetchable) [size=128K]
            I/O ports at 4000 [size=32]
            [virtual] Expansion ROM at 50000000 [disabled] [size=128K]
            Capabilities: [c8] Power Management version 2
            Capabilities: [d0] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable+
            Capabilities: [e0] Express Endpoint IRQ 0
    
    Z tohoto uz se snadno vyparsuji jednotliva irq.

    Ze souboru /proc/interrupts zjistim, ktere irq patri ke ktere mu ethX:
    
    cat /proc/interrupts |grep eth
     66:     554805     674656         PCI-MSI  eth0
     74:   16674884   73688875         PCI-MSI  eth1
     82:   64585323   15132785         PCI-MSI  eth2
    
    Bohuzel dal si prilis nevim rady. Potrebuji podle irq priradit k ethX prislusnou sitovou kartu.

    Diky moc za nakopnuti spravnym smerem.

    Odpovědi

    wolf09 avatar 9.8.2007 10:49 wolf09 | skóre: 30
    Rozbalit Rozbalit vše Re: BASH. Trosku slozitejsi skript.
    mozan vam pomuze prikaz join : join - join lines of two files on a common field
    Zkusili jste to vypnout a znovu zapnout ?
    9.8.2007 11:11 jurasek
    Rozbalit Rozbalit vše Re: BASH. Trosku slozitejsi skript.
    Vzdyt v tom vypisu cat /proc/interrupts mate v prvnim sloupci IRQ a v poslednim sitovku. o co Vam tedy jde ?
    jurasek
    9.8.2007 11:25 OgeeN
    Rozbalit Rozbalit vše Re: BASH. Trosku slozitejsi skript.
    Jde mi o to, ze podle toho irq chci dosahnout takoveho vystupu:
    eth0 Intel Corporation 82572EI Gigabit Ethernet Controller (Copper) (rev 06)
    eth1 Broadcom Corporation NetXtreme BCM5714 Gigabit Ethernet (rev a3)
    eth2 Broadcom Corporation NetXtreme BCM5714 Gigabit Ethernet (rev a3)
    
    Problem je, ze nevim jak napsat skript ktery by tohle provedl. Vim ze eth0 ma irq 66 a toto irq odpovida sitove karte Intel Corporation 82572EI Gigabit Ethernet Controller (Copper) (rev 06).

    Ale proste nevim, jak z tech dvou vypisu udelat jeden, ktery potrebuju.

    Potrebuji nejspis do promenne pro eth0 ulozit cislo irq ziskane z /proc/interrupts, do promenne pro Intel Corporation 82572EI Gigabit Ethernet Controller (Copper) (rev 06) ulozit irq ziskane z lspci -v a tak dale pro vsechny eth a sitove karty. No a potom ty promenne nejak porovnat a kdyz si budou rovny tak provest vypis.

    Bohuzel me znalosti na napsani takoveho skriptu zatim nepostacuji a proto se obracim sem.

    Diky za reakci.
    9.8.2007 11:22 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: BASH. Trosku slozitejsi skript.
    Jenže stejné IRQ může mít více zařízení. Jak to chceš odlišit? A navíc například u mě se televizní karta hlásí jako "Network controller", což by pro skript bylo jistě matoucí.
    9.8.2007 11:28 OgeeN
    Rozbalit Rozbalit vše Re: BASH. Trosku slozitejsi skript.
    No, tenhle skript se bude pouzivat jen na serverch, kde televizni karta nehrozi. Ze, by dve sitove karty mely stejne irq podle mne nehrozi.

    Dik za reakci.
    9.8.2007 11:34 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: BASH. Trosku slozitejsi skript.
    Tak pak můžeš zkusit tohle
    #!/usr/bin/python
    import subprocess
    irqeth = {}
    for line in file('/proc/interrupts'):
        if 'eth' not in line: continue
        spl = line.strip().split()
        irq = int(spl[0].rstrip(':'))
        eth = spl[-1]
        irqeth[irq] = eth
    
    cmd = ['/sbin/lspci', '-v']
    pr = subprocess.Popen(cmd, stdout = subprocess.PIPE)
    ethdevs = {}
    chunk = []
    eth = None
    for line in pr.stdout:
        line = line.strip()
        if not line:
            if eth:
                ethdevs[eth] = (irq, chunk)
            chunk = []
        else:
            chunk.append(line)
            if 'IRQ' in line:
                spl = line.split()
                irq = int(spl[spl.index('IRQ') + 1])
                try:
                    eth = irqeth[irq]
                except KeyError:
                    pass
    
    for eth in ethdevs:
        print eth
        print 'IRQ', ethdevs[eth][0]
        print ethdevs[eth][1][0] #prvni radek
    
    kdyby základní myšlenka fungovala, třeba bych to ještě nějak učesal.
    9.8.2007 11:45 OgeeN
    Rozbalit Rozbalit vše Re: BASH. Trosku slozitejsi skript.
    Je to hezky, ale bohuzel ten skript bude spousten na velkym mnozstvi serveru(redhat7 nebo 9, centos 3-5,FC 2-5,Gentoo,Trustix) a na kazdym urcite python nebude.

    Cele by to meli byt maximalne prenositelne a tedy provedene pouze pomoci nastroju, ktere jsou dostupne na drtive vetsine linuxovych distribuci hned po instalaci.

    Kazdopadne, ale dekuji za odpoved.
    9.8.2007 12:35 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: BASH. Trosku slozitejsi skript.
    Nejstarší distribuce z těch jmenovaných je RH7 (jestli se nemýlím), a i tam je Python-1.5.2, což na skripty bohatě stačí. Takže pokud se někdo cíleně nepostaral o jeho smazání, Python budeš mít všude. A jestli opravdu chybí, piš to v Perlu.
    9.8.2007 12:43 OgeeN
    Rozbalit Rozbalit vše Re: BASH. Trosku slozitejsi skript.
    OK,vyzkousim.

    Mohl bys mi jeste poradit, jak to zakomponovat do bashoveho skriptu? Tenhle skript totiz bude jeho soucasti.
    9.8.2007 13:07 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: BASH. Trosku slozitejsi skript.
    Skript (ať už je napsaný v čemkoli) se chová jako jakýkoli jiný program a lze jej pustit z shellu a třeba prohnat jeho výstup rourou atd ... technicky vzato žádný problém.
    Nicméně, volat z shellového skriptu jazyky, které jsou daleko mocnější než je on sám je asi jako vozit po dálnici Porsche na trakaři.
    9.8.2007 13:12 OgeeN
    Rozbalit Rozbalit vše Re: BASH. Trosku slozitejsi skript.
    Jenze, ja potrebuju mit ten skript v jednom souboru, aby to bylo co nejjednodussi na deploy.

    Navic je problem, ze python vubec neovladam :(

    S posledni vetou souhlasim, ale jak sem psal vyse python neumim a skript musi byt napsany drive nez se python naucim :)

    Dik za reakci.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.