Moderní operační systémy typu Unix jsou dobře přizpůsobeny ke komunikaci s ostatními počítači, což znamená, že jsou vybaveny prostředky pro práci v síti. Dva různé počítače s operačním systémem Unix si mohou vyměňovat informace mnoha způsoby. Tato kapitola je věnována metodám, pomocí kterých budete moci komunikovat prostřednictvím sítě s ostatními počítači.
Budeme se zabývat elektronickou poštou, zájmovými skupinami a některými základními programy pro komunikaci.
Mezi nejpopulárnější vlastnosti operačního systému Unix patří možnost odesílat a přijímat zprávy elektronické pošty. Máte-li k dispozici elektronickou poštu, nepotřebujete papír, inkoust a pero, obálky, známky a nesrovnatelně pomalejší poštovní službu.
Potřebujete-li odeslat zprávu elektronickou poštou, stačí zadat příkaz mail username a pak zapsat vaši zprávu.
Předpokládejme například, že chcete odeslat zprávu elektronickou poštou uživateli jménem sam:
/home/larry# mail sam
Subject: The user documentation
Just testin out the mail system.
EOT
/home/larry#
Program mail je velmi jednoduchý. Podobně jako program cat čte text ze standardního vstupu řádek po řádku, dokud nenarazí na znak “konec textu” jenž je reprezentován klávesou C-D. To znamená, že po dokončení textu zprávy stisknete Enter a pak C-D.
Příkaz mail představuje nejrychlejší způsob, jak odeslat zprávu elektronické pošty, a je užitečný zejména ve spojení s prostředky pro přesměrování vstupu/výstupu či rourami. Jestliže chcete například odeslat soubor report1 uživateli jménem “Sam” můžete použít příkaz mail sam < report1 nebo dokonce “sort report1 | mail sam” Používání příkazu mail je však spojeno s velkou nevýhodou. Jestliže uděláte v nějakém řádku chybu, pak ji již nemůžete opravit. Proto vám doporučuji (pokud nepoužijete možnost s přesměrováním vstupu/výstupu) k odesílání elektronické pošty používat editor Emacs. Postup jsme popsali v oddílu 8.10.
mail [user]
Program mail poskytuje poněkud těžkopádnou možnost číst zprávy elektronické pošty. Zadáte-li příkaz mail bez jakýchkoliv parametrů, objeví se vám následující hlášení:
/home/larry# mail
No mail for larry
/home/larry#
Předpokládejme, že chcete odeslat zprávu elektronickou poštou sami sobě, abyste si mohli vyzkoušet způsoby jejího čtení:
/home/larry# mail larry
Subject: Frogs!
and toads!
EOT
/home/larry# echo "snakes" | mail larry
/home/larry# mail
Mail version 5.5. 6/1/90 Type ? for help.
"/usr/spool/mail/larry" 2 messages new
Příručka uživatele
>N 1 larry Tue Aug 30 18:11 10/211 "Frogs!"
N 2 larry Tue Aug 30 18:12 10/211
&
Příkazový řádek uvnitř programu pro čtení elektronické pošty je uvozen znakem ampersand (“&”). Umožňuje specifikovat spoustu jednoduchých příkazů a po zadání znaku ? a enter zobrazuje stručnou nápovědu.
Základními příkazy pro práci s programem mail jsou:
t message-list Na obrazovce se zobrazí zprávy uvedené v seznamu message-list.
d message-list Zprávy uvedené v seznamu message-list se zruší.
s message-list file Zprávy uvedené v seznamu message-list se uloží do souboru file.
r message-list Odpověď na zprávy - program mail zahájí proces sestavování nových zpráv, které budou odeslány každému, kdo vám odeslal zprávu uvedenou v seznamu message-list.
q Program mail se ukončí a uloží každou zprávu, která nebyla zrušena příkazem d do souboru mbox ve vašem domovském adresáři.
Jak vypadá seznam message-list? Skládá se ze seznamu čísel oddělených mezerami, nebo může být vyjádřen ve formě intervalu, tedy například 2-4 (což znamená “2 3 4”). Také můžete uvést uživatelské jméno odesílatele. Například t sam zobrazí všechny zprávy odeslané uživatelem sam. Jestliže se seznam message-list neuvede, zobrazí se vždy poslední zpráva.
Se čtením zpráv elektronické pošty je spojeno několik problémů. Především platí, že pokud má zpráva více řádků, než se vejde na obrazovku, program mail se nezastaví! Takou zprávu budete muset uložit do souboru a pak si ji prohlédnout prostřednictvím příkazu more. Dále program mail nemá dobré prostředky pro čtení starých zpráv, tedy zpráv uložených do souborů.
Editor Emacs má prostředek pro čtení zpráv elektronické pošty, jenž se jmenuje rmail. V této knize se však programem rmail nebudeme zabývat. V operačním systému Linux jsou navíc k dispozici další programy pro čtení elektronické pošty, jako je elm nebo pine
Příkaz finger vám umožní získat informace o ostatních uživatelích vašeho systému nebo o uživatelích sítě Internet. Jméno příkazu nepochybně vzniklo jako zkratka s reklamním podtextem ve firmě AT&T.
finger [-slpm] [user][@machine]
Volitelné parametry v příkazu finger mohou být mírně matoucí. Pomocí příkazu finger můžete získat informace o lokálním uživateli (například “sam”), o jiném počítači (například “@lionsden”), informace o uživateli vzdáleného počítače (například “sam@liondsen”) nebo informace o lokálním počítači (neuvede se žádný parametr).
Příkaz finger má další zajímavou vlastnost. Pokud se pokusíte získat informace o uživateli, jehož jméno přesně neznáte, pokusí se příkaz finger najít jméno sám (zkouší různé kombinace založené na původně zadaném jménu). To znamená, že když například zadám příkaz finger Greenfield, obdržím zprávu, že účet sam existuje pro jméno Sam Greenfield.
/home/larry# finger sam
Login: sam Name: Sam Greenfield
Directory: /home/sam Shell: /bin/tcsh
Last login Sun Dec 25 14:47 (EST) on tty2
No Plan.
/home/larry# finger greenfie@gauss.rutgers.edu
[gauss.rudgers.edu]
Login name: greenfie In real life: Greenfie
Directory: /gauss/u1/greefie Shell: /bin/tcsh
On since Dec 25 15:19:41 on ttyp0 from tiptop-slip-6439
13 minutes Idle Time
No unread mail
Project: You must be joking!
No Plan.
/home/larry# finger
Login Name Tty Idle Login Time Office Office Phone
larry Larry Greenfield 1 3:51 Dec 25 12:50
larry Larry Greenfield p0 Dec 25 12:51
/home/larry#
Použijete-li u příkazu finger volbu -s, pak se vám vždy zobrazí stručný výpis (stejný, který obdržíte, když program finger použijete k získání informací o počítači) a pokud použijete volbu -l, zobrazí se vám vždy kompletní výpis (i tehdy, když program finger použijete k získání informací o počítači). Po zadání volby -p se nezobrazí informace ze souborů .forward, .plan a .project. Zadáte-li volbu -m a žádáte-li pouze informace o uživateli, pak se vám zobrazí pouze přihlaýovací jméno.
Nyní bychom měli vysvětlit, jaký je význam souborů .plan a .project. Jedná se o soubory, které jsou uloženy v domovském adresáři uživatele a jejichž obsah se zobrazí pokaždé, když je na daného uživatele aplikován program finger. Soubory .plan a .project si můžete vytvořit sami - jediné omezení spočívá v tom, že ze souboru .project se zobrazuje pouze první řádek.
Dále platí, že každý, kdo chce aplikovat program finger musí mít možnost procházet vaším domovským adresářem (chmod aCtrl+x ~/) a každý musí být schopen číst soubory .plan a .project (chmod aCtrl+r ~/.plan ~/.project).
telnet vzdálený systém
Hlavní prostředek pro využívání vzdálených systémů založených na operačním systému Unix představuje program Telnet. (V současné době se spíše používá program ssh, který na rozdíl od příkazu telnet umožňuje šifrovanou komunikaci se vzdáleným systémem.) Používání programu telnet je velmi jednoduché:
/home/larry# telnet lionsden
Trying 128.2.36.41...
Connected to lionsden
Escape character is '^]'.
lionsden login:
Jak vidíte z následujícího příkladu, po zadání příkazu telnet budete vyzváni k přihlášení se ke vzdálenému systému. Uživatelské jméno lze zadat jakékoliv (ovšem heslo musíte znát správné) a pak je vám vzdálený systém k dispozici téměř stejně jako váš lokální systém.
Normální způsob ukončení programu Telnet spočívá v odhlášení se, ale dat znak Escape, kterým je zpravidla C-]. Tak obdržíte nový příkazový řádek uvozený řetězcem telnet>. Nyní stačí napsat quit a pak stisknout klávesu e- spojení se přeruší a program Telnet se ukončí. Pokud si to rozmyslíte a nechcete relaci ukončit, stiskněte pouze klávesu Enter.
Pokud jste uživateli systému X Window, pak si pro komunikaci se vzdáleným uživatelem otevřete nové terminálové okno - například prostřednictvím příkazu “xterm -title "lionsden" -e telnet lionsden &”. Uvedený příkaz otevře nové terminálové okno, ve kterém automaticky poběží program Telnet. Jestliže takový příkaz budete používat častěji, pak doporučujeme, abyste si pro něj vytvořili alias.
ftp vzdálený systém
Normální způsob přenášení souborů zprostředkovává v operačním systému Unix program ftp, což je zkratka pro “file transfer protocol”. Po zadání příkazu ftp budete vyzváni, abyste se přihlásili ke vzdálenému systému téměř stejným způsobem, jako v případě programu telnet. Pak se vám zobrazí speciální příkazový řádek.
Nyní máte k dispozici několik příkazů běžných v operačním systému Unix, jež můžete aplikovat v příkazovém řádku programu ftp. Například příkaz cd i zde slouží k přepínání se mezi adresáři a příkaz ls slouží k zobrazení seznamu souborů uložených v aktuálním adresáři.
Navíc máte k dispozici dva důležité příkazy: get a put. Příkaz get je určen k přenosu souborů ze vzdáleného počítače do vašeho lokálního počítače a příkaz put slouží k opačnému úkolu. Oba příkazy jako implicitní používají váš domovský adresář a lokální adresář na vzdáleném počítači (který můžete měnit prostřednictvím příkazu cd).
S používáním programu ftp je spojen jeden problém. Spočívá v rozlišení mezi znakovými a binárními soubory. Protokol pro přenos dat programem ftp je velmi starý a implicitně předpokládá, že přenášené soubory jsou textové. Aplikuje-li se tento implicitní přenos na binární soubory, pak budou s největší pravděpodobností po přenosu poýkozeny. Před přenosem binárního souboru proto používejte příkaz binary.
Program ftp ukončíte příkazem bye.
WWW, neboli World Wide Web (doslova “celosvětová pavučina”) zřejmě představuje nejpopulárnější způsob využívání Internetu. Skládá se ze stránek, z nichž každá je spojena s tzv. lokátorem URL (uniform resource locator). Lokátory URL jsou komické řetězce následujícího tvaru: http://www.rutgers.edu/. Stránky jsou vytvořeny v jazyku HTML (hypertext markup language).
Jazyk HTML umožňuje autorům stránek WWW začlenit do dokumentů odkazy na kterékoliv jiné stránky WWW (nebo obrázky) lokalizované kdekoliv jinde v celosvětovém systému WWW. Když uživatel čte nějaký dokument, pak se pouhým klepnutím na odkaz (prezentovaný klíčovým slovem nebo tlačítkem) přenese na jinou stránku WWW, která může být uložena v počítači na druhém konci světa.
netscape [url]
Nejpopulárnějším programem pro prohlížení stránek WWW je v operačním systému Linux program Netscape od firmy Netscape Corporation. Program Netscape může běžet pouze pod systémem X Window.
Program Netscape je velmi jednoduchý, pokud jde o ovládání. Je založen na knihovně Motif a připomíná program napsaný pro Microsoft Windows (samozřejmě, že pro Microsoft Windows také existuje verze programu Netscape). Odkazy na další stránky WWW jsou v programu Netscape zobrazeny modře. Stačí na odkaz klepnout levým tlačítkem myši a vzápětí se vám zobrazí nová stránka WWW.
Operační systém Linux podporuje i jiné programy pro prohlížení stránek WWW, například program lynx, což je textově orientovaný program, proto není schopen zobrazovat obrázky a jiné grafické prvky dokumentů WWW. Je ovšem schopen pracovat pod systémem X Window.
lynx [url]
Naučit se pracovat s programem lynx je poněkud obtížnějií, než naučit se pracovat s programem Netscape. Při práci si budete muset zvyknout na používání kurzorových kláves. Klávesy “šipka nahoru” a “šipka dolů” jsou určeny k přepínání mezi odkazy na dané stránce WWW, klávesa “šipka doprava” zobrazí novou stránku (na kterou odkazuje zvýrazněný odkaz) a klávesa “šipka doleva” je určena k zobrazení předcházející stránky. K ukončení programu lynx použijte klávesu Q. Program lynx má mnohem více příkazů, jejichž kompletní popis najdete v manuálových stránkách.