Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!
Zadejte Vaši e-mailovou adresu:
Kamarád fotí rád?
Přihlas ho k odběru fotomagazínu!
Zadejte e-mailovou adresu kamaráda:
Software
Příkaz lsof a obsah sloupce NAME
10. dubna 2003, 00.00 | V minulém dílu jsme si podrobně vysvětlili, co vlastně zobrazuje příkaz lsof ve sloupci FD; zbývá nám tedy už jen poslední "restík", jímž je sloupec NAME.
V minulém dílu jsme si podrobně vysvětlili, co vlastně zobrazuje příkaz lsof ve sloupci FD; zbývá nám tedy už jen poslední "restík", jímž je sloupec NAME.
Podobně, jako sloupec FD, i NAME je poměrně komplikovaný jen proto, že příkaz lsof v příkrém kontrastu ke svému jménu (lsof — "LiSt Open Files") vypisuje seznam všech otevřených kanálů, a ty mohou být nejrůznějších typů; pokud jde o soubor, vypíše se docela prostě jeho jméno, tak, jak jej vidíme v systému souborů (a v zásadě i ve Finderu, samozřejmě až na jeho "švindly" s ukrýváním přípon a podobně).
Sloupec NAME tedy může obsahovat:
- jméno souboru, pokud jde o standardní soubor v rámci systému souborů;
- jméno speciálního zařízení, pokud mu kanál odpovídá;
- pro síťové kanály je zde dvojice IP adres (na to se ještě podíváme podrobněji);
- adresa či jméno socketu;
- pro sokety, jež nemají protokolový blok, zde může být "no PCB", následované případně ještě přepínači "CANTSENDMORE" či "CANTRCVMORE" pokud je další odesílání/příjem prostřednictvím socketu zakázáno;
- používáme-li sdílení NFS, bude zde jak lokální, tak i vzdálené jméno;
- pro pojmenované streamy "STR" nebo jméno zařízení a "->", následované jménem streamu;
- pro frontu zde budou pozice pro čtení i zápis ve formátu "rd=čtení wr=zápis"...
Musím se přiznat, že většinu variant jsem sám nikdy neviděl, a hanebně jsem je opsal z manu, a to jsem přeskakoval varianty pro jiné operační systémy ;)
Pro nás jsou kromě jmen souborů asi nejzajímavější internetová spojení; na ta se proto ještě podíváme trochu podrobněji:
174 /tmp> lsof
COMMAND PID ... NAME
...
telnet 479 ... 100.10.10.5:49198->cisco:telnet (ESTABLISHED)
...
Safari 4652 ... 100.10.10.5:53556->webhost.it.earthlink.net:http (ESTABLISHED)
...
TextEdit 18544 ... localhost:52780->localhost:ipp (CLOSE_WAIT)
...
Jak je vidět, pro síťové kanály je vždy nejdříve zobrazena lokální adresa, ať už jako čtveřice čísel formující IP adresu (vzhledem k tomu, že mám subsíť "za routerem" s překladem adres, mohu klidně používat adresy 100.10.10.x), nebo jako DNS jméno ("localhost"). Za dvojtečkou je číslo použitého portu.
Za oddělovačem "->" je uvedena vzdálená adresa a další atributy. Adresa sama může být opět buď číselná IP adresa nebo DNS jméno ("cisco" je v mé konfiguraci DNS jméno routeru). Jak je také vidět, lsof automaticky převádí standardní čísla portů známých služeb na odpovídající jména (23 na "telnet" apod.); chceme-li z nějakého důvodu raději vidět přímo čísla, můžeme tuto službu vyřadit přepínačem -P.
Obsah seriálu (více o seriálu):
- Obcování s ďáblem
- Obcování s ďáblem 2 - základy
- Obcování s ďáblem 3 - Práce se soubory
- Obcování s ďáblem 4 - Další práce se soubory
- Obcování s ďáblem 5 - Stále soubory, hlavně linky
- Obcování s ďáblem 6: Pár zbývajících drobností
- Obcování s ďáblem 7: Samá voda, přihořívá, hoří!
- Obcování s ďáblem 8: Jak se do shellu volá, tak se program ozývá
- Obcování s ďáblem 9: Nové finty na programy
- Obcování s ďáblem 10: Do fronty, pánové, do fronty!
- Obcování s ďáblem 11: Standardní vstup a výstup
- Obcování s ďáblem 13: Další triky
- Obcování s ďáblem 14: Vyšší škola hledání souborů
- Obcování s ďáblem 15: Příkaz find stokrát jinak
- Obcování s ďáblem 16: Co se ještě dá uvařit z příkazu find
- Obcování s ďáblem 17: Regulární výrazy
- Obcování s ďáblem 18: Speciální regulární výrazy
- Obcování s ďáblem 19: Skládání regulárních výrazů
- Obcování s ďáblem 20: Regulární výrazy se zpětnými odkazy
- Obcování s ďáblem 21:K čemu je dobrý grep...
- Zázraky ihned, nemožné na počkání: sed
- Obcování s ďáblem - další finty s příkazem sed
- Rozsáhlejší příklad se sedem
- Obcování s ďáblem: Další kouzla, aneb awk
- Awk a proměnné
- Obcování s ďáblem 27: Awk a výrazy
- Obcování s ďáblem: Awk a funkce
- Awk a příkazy
- Co je to vlastně "uživatel"?
- Vlastnictví objektů
- Přístupová práva
- Vlastník, skupina, ostatní...
- Jak je to se skupinami?
- Skupiny a uživatelé
- Scripty
- Komentáře, a volba shellu
- Pro skript může být shell cokoli!
- Shellové skripty a argumenty
- Skripty a proměnné: aritmetika
- Proměnné shellu, "dědění" hodnot
- Práce s proměnnými
- Práce se jmény souborů
- Pole hodnot
- Další triky kolem polí...
- Standardní proměnné shellu
- Základní příkazy pro skripty
- Příkaz if
- Speciální podmínkové příkazy
- Podmínky pro práci se soubory
- Jednoduchý cyklus
- Příkaz for a pomocné příkazy break a continue
- Příkaz case
- Příkazy exit a select
- Rejstřík a přehled
- Procesy
- Informace o procesech
- Další klíčová slova pro příkaz ps
- Příkaz ps: několik praktických přepínačů
- A k čemu že je "ps" dobré?
- Copak procesor, s pamětí je to horší
- Virtuální paměť
- A ještě jednou virtuální paměť
- Zpět k příkazu ps
- Skutečný žrout paměti
- Ještě jednou top
- Doplněk k topu: vm_stat
- Co to tedy všechno znamená?
- Nevychází nám dal a má dáti?
- Kam se stránky ukládají?
- Změna odkládacího disku
- Změna odkládacího disku / fstab
- Poslední poznámka k fstab
- A jak to je se soubory?
- Co vlastně příkaz lsof vypisuje?
- Příkaz lsof a obsah sloupce NAME
- SIPS - Terminál není jen pro nadšence UNIXu
- Tak nám zabili NetInfo, paní Müllerová