PIENI UNIX OPAS perustietoa unix j„rjestelm„st„: sen k„yt”st„, tietoliikenteest„ ja turvallisuudesta --------------------------------------------------------------------------- © Copyright Pekka Aakko 1995. Julkaiseminen ilman tekij„n lupaa kielletty. --------------------------------------------------------------------------- Sis„llys: * Saatesanat * Definitions of UNIX users * Unix? o Ty”kalut ja ohjelmat o Moniajo o Komentotulkki o Tiedostorakenne o Tietoturvallisuus - omat ja jaetut tiedostot o Elektroninen posti o UNIX j„rjestelm„n rajoitteet? * Login, mik„ se on? Salasana? * Komennot * Yleisimpi„ komentoja * K„ytt„jien v„linen kommunikointi * Tiedostojen suojaukset * Paniikki! Mit„ tapahtuu!? Apua! * Tietoliikenne * Yleist„ turvallisuudesta ja koneiden k„yt”st„ --------------------------------------------------------------------------- Saatesanat T„m„ pieni ohjekirjanen on tehty juuri Sinulle, uusi tai v„h„n kokenut unix k„ytt„j„. Teksti ei pureudu syv„llisesti unixin ajattelumaailmaan tai tee Sinusta "mestaria" viikossa, vaan on tarkoitettu nimenomaan ohjaamaan Sinut alkuun, tutustuttamaan unix filosofiaan sek„ tarjoamaan keinot selviyty„ mahdollisista ongelmatilanteista uutena k„ytt„j„n„. Aloittelevaa UNIX k„ytt„j„„ saattaa aluksi h„m„t„ suuri m„„r„ vaihtoehtoja, kun j„rjestelm„st„ l”ytyy suuri m„„r„ ohjelmia ja komentoja. Voit kuitenkin valita itsellesi miellytt„vimm„n n„iden joukosta. Lis„ksi erityyppisten j„rjestelmien (BSD, sysV) v„lill„ on pieni„ vivahde-eroja ja jokaiseen j„rjestelm„„n on tehty paikallisia virityksi„. My”s k„ytt„j„ll„ on vapaus tehd„ muutoksia oletusasetuksiin. Mink„„n tietokoneen k„ytt”„ ei varmaankaan opi vain kirjoja selaamalla tai mukavia (tai yli ymm„rryksen menevi„ :) juttuja kuuntelemalla - parhaiten k„yt”n oppii istumalla koneen „„ress„ ja kokeilemalla itse. Kirjanen on suunniteltu pit„en silm„ll„ Internet Finlandin UNIX laitteistoon asennettuja ohjelmia, mutta toimii my”s yleisen„ ohjeena tutustuttaessa toisiin UNIX ymp„rist”ihin. Kohdat, jotka toimivat Internet Finlandin koneissa mutta eiv„t v„ltt„m„tt„ toimi kaikissa j„rjestelmiss„, on merkitty erikseen kallistetulla tekstill„. Kohdat jotka vaativat erityist„ huomiota korostetaan paksunnetulla tekstill„. Esimerkit, joita k„yt„n erottuvat erilaisella kirjasinlajilla. Oppaan k„ytt”ymp„rist” on Linux (BSD pohjainen) ja komentotulkki tcsh. Tervetuloa Unixin maailmaan! Pekka Aakko Internet Finland „Image] --------------------------------------------------------------------------- DEFINITIONS FOR UNIX-USERS BEGINNER * insecure with the concept of a terminal * has yet to learn the basics of 'vi' * hasn't figured out yet how to get a directory * still has trouble with typing at the end of each line NOVICE * knows that 'ls' will produce a directory * uses the editor, but calls it 'vye' * has heard of 'C' but never used it * has had his first bad experience with 'rm' * is wongering how to read his mail * is wondering why the person next to him seem to like Unix so much USER * uses 'vi' and 'nroff', but inexpertly * has heard of 'regular-expression' but never seen one * uses 'egrep' to search for fixed strings * has figured out that '-' precedes options * is wondering how to move a directory * has attempted to write a 'C' program and decided to stick with pascal * thinks that 'dbx' is a brand of stereo component * knows how to read his mail and wonders how to read news KNOWLEDGEABLE USER * uses 'nroff' without trouble, and is beginning to learn 'tbl' and 'eqn' * thinks that 'fgrep' is fast grep * has figured out that 'mv' will move directories * has learned that 'learn' doesn't help * someone has shown him how to write 'C' programs * once used 'sed' to do some text substitution * has seen 'dbx' used but doesn't use it himself * thinks that 'make' is for wimps EXPERT * uses 'sed' when necessary * uses macros in 'vi', uses 'ex' when necessary * posts news at every possible opportunity * writes 'csh' scripts occasionally * writes 'C' programs with 'vi' and compiles them with 'cc' * has figured out what '&&' and '””' are for * thinks that human history started with '!h' HACKER * uses 'sed' and 'awk' with comfort * uses undocumented features of 'vi' * writes 'C' code with 'cat > ' and compiles with '!cc' * uses 'adb' because he doesn't trust source debuggers * can answer questions about the user environment * writes his own 'nroff' macros to supplement standard ones * writes scripts for Bourne shell GURU * uses 'm4' and 'lex' with comfort * writes assembly code with 'cat > ' * uses 'adb' on the kernel while the system is loaded * customizes utilities by patching the source * reads device driver source with his breakfast * can answer any Unix question after a litte thought * uses 'make' for anything requiring two or more distinct commands to achieve * has learned how to bread security, but no longer needs to try WIZARD * writes device drivers with 'cat > ' * fixes bugs by patching the binaries * can answer any question before you ask * writes his own 'troff' macro packages * is on a first-name basis with Dennis, Bill and Ken --------------------------------------------------------------------------- 1. UNIX? Unix on alunperin BELL laboratorioiden kehitt„m„ ositusk„ytt”j„rjestelm„ (mikrotietokoneille, ty”asemille, supertietokoneille). K„ytt”j„rjestelm„ on koneen "sielu" joka ohjaa koneen toimintaa ja antaa k„ytt„j„lle mahdollisuden ohjata itse konetta. UNIX j„rjestelm„ss„ on monia erikoisia piirteit„. Kuten kaikki muutkin k„ytt”j„rjestelm„t, UNIX on koneen "kontrollointiohjelma" tietokoneelle. Mutta se on my”s suuri m„„r„ valmiita tarveohjelmia ja ty”kaluja, jotka antavat mahdollisuuden k„ytt„j„lle muokata omaa ymp„rist”„„n ja tiedostojaan. Unix on rakenteeltaan hierarkinen, ja karkea jako voidaan toteuttaa kolmeen osioon: * LAITTEISTO tarjoaa ytimelle (kernel, itse k„ytt”j„rjestelm„"ohjelma") joukon palveluja. * YDIN unix k„ytt”j„rjestelm„n 'syd„n', joka erist„„ sovellukset laitteistosta. Hoitaa muistinhallinnan, prosessit ja tiedostoj„rjestelm„n. * KÄYTTÄJÄTASO (= UNIX-KJ:n tarjoamia palveluohjelmia), johon kuuluu komentotulkki, k„ytt„jien avustus, tiedostojen k„sittely ja suojaus, editorit, ohjelmankehitys, k„ytt„jien v„linen kommunikointi (esim elektroninen posti), tekstin muokkaus, t”iden ja prosessien kontrollointi jne. Omat sovellukset (ohjelmat) voidaan rakentaa peruskomentojen ymp„rille ja niiden avulla. Miksi UNIX on tullut yh„ suositummaksi nykyajan tietokonemaailmassa? Muutamia syit„ jotka varmasti vaikuttavat: * K„ytt”j„rjestelm„ on kirjoitettu korkeantason ohjelmointikielell„, josta seuraa siirrett„vyys (ei laiteriippuvuutta). * Unixin k„ytt”liittym„ on 'yksinkertainen' ja helposti muokattavissa oman mielen mukaan. * Hierarkinen tiedostoj„rjestelm„. * Kaikkien tiedostojen (my”s laitteiden, esim n„yt”n ja printterien) k„sittelytapa on samanlainen * Monen k„ytt„j„n moniprosessij„rjestelm„. * Piilottaa k„ytt„j„lt„ koneen arkkitehtuurin (rakenteen). 1.1 Ty”kalut ja ohjelmat UNIX systeemiss„ on muutama sata erilaista hy”tyohjelmaa, joita useasti nimitet„„n "k„skyiksi" (vrt. DOS). N„m„ ohjelmat suorittavat erilaisia t”it„ joita k„ytt„j„ haluaa koneen suorittavan. Esimerkiksi 'sort', joka j„rjest„„ listoja aakkoselliseen tai numeeriseen j„rjestykseen tai muihin k„ytt„j„n m„„rittelemiin muotoihin. Toiset ohjelmat antavat mahdollisuuden tulostaa ruudulle, kopioida, etsi„ tai tuhota tiedostoja. Tekstin editoimiseen on omat ohjelmansa (esim vi, pico) ja tekstin automaattiseen muokkaamiseen omansa. Man ohjelma (manual) ojentaa monesti auttavan k„tens„, jos jonkun ohjelman/k„skyn k„ytt” on ep„selv„„ tai outoa. Man on UNIX j„rjestelm„n ns. "on-line" k„ytt”opas (kokeile "man man"). 1.2 Moniajo Riippuen koneesta, UNIX k„ytt”j„rjestelm„ pystyy tarjoamaan palveluitaan samanaikaisesti suurelle m„„r„lle k„ytt„ji„, joista jokainen voi ajaa samanaikaisesti haluamiaan ohjelmia. Jokainen k„ytt„j„ voi ajaa my”s useampia ohjelmia kerralla, esimerkiksi tausta-ajona laskelmia ja samalla editoida ruudulla haluamaansa teksti„. Voit kesken kaiken vaihtaa prosessia (ohjelmaa) ja katsoa miten tausta-ajo edistyy. 1.3 Komentotulkki Komentotulkki (shell) on "tulkki" k„ytt„j„n ja k„ytt”j„rjestelm„n v„liss„, sek„ korkean tason ohjelmointikieli. Kun kirjoitat komennon terminaalillesi eli ruudulle, komentotulkki nappaa sen ja kutsuu ohjelmaa jota halusit. Erilaisia tulkkeja on olemassa useita, yleisimpin„ kuitenkin Bourne Shell (sh), C Shell (csh) tai Korn Shell (ksh). Tulkit ovat perusidealtaan samanlaisia, kuitenkin ominaisuudet vaihtelevat suuresti. Bourne Shell on yksinkertainen ja nopea (yleens„ k„ytet„„n komentotulkki scripteiss„), kun taas Tcsh on eritt„in monipuolinen tarjoten k„ytt„j„lleen paljon mukavia ominaisuuksia. Idealtaan toisenlaisia tulkkeja l”ytyy, sis„lt„en muun muassa erilaisia valikkorakenteisia, helppok„ytt”isi„ menuja. Vikana on, etteiv„t n„m„ ole erityisen joustavia, mutta uudelle k„ytt„j„lle ehk„ helpoin tapa suorittaa komentoja ja tutustua j„rjestelm„„n. Koska jokainen k„ytt„j„ voi ajaa omaa tulkkiaan halunsa ja makunsa mukaan, n„ytt„„ "kone" erilaiselta riippuen k„ytt„j„st„. T„m„ tulkkien suuri lukum„„r„ osoittaa er„„n UNIXin voiman: on mahdollista helposti rakentaa kustomoitu 'k„ytt”liittym„', jokaiselle makunsa ja tarpeidensa mukaan. Komentotulkkien komentoja voidaan my”s kirjoittaa tekstitiedostoon josta ne voidaan ajaa my”hemmin er„„nalisena korkean tason ohjelmointikielen„. Komentotulkki on sek„ ohjelmointikieli ett„ k„ytt”liittym„ koneen ja k„ytt„j„n v„liss„. 1.4 Tiedostorakenne Tiedosto on kokoelma tietoa, kuten esimerkiksi tekstimuotoisia muistiinpanoja, raportteja tai k„„nt„j„n tekem„ objektitiedosto. UNIX tiedostoj„rjestelm„ antaa mahdollisuuden hierarkiseen hakemistorakenteeseen, jossa tiedostot ovat jaoteltuna hakemistojen alle, ja hakemistot voivat itsess„„n olla toisten hakemistojen alla (vrt. DOS). Tiedostojen v„lille voidaan luoda linkkej„, jolloin ei tarvitse kopioida tietoja vaan voimme m„„ritell„ linkin osoittamaan haluamaamme alkuper„iseen tiedostoon: n„in esimerkiksi ko. tiedoston muuttuessa my”s linkkitiedostot muuttuvat. Linkkityypist„ riippuen (symbolinen tai hard linkki) itse linkki k„ytt„ytyy eri tavalla, k„yt”n opastan my”hemmin kappaleessa jossa k„sitell„„n yleisimpi„ UNIX komentoja. 1.5 Tietoturvallisuus - omat ja jaetut tiedostot Kuten useimmat monenk„ytt„j„n j„rjestelm„t, UNIX antaa k„ytt„jille mahdollisuuden suojata omat tiedostonsa muilta. UNIX antaa my”s k„ytt„j„n valikoida haluamiaan tietoja tai ohjelmia muiden k„ytt””n. T„st„ puhumme pian lis„„. 1.6 Elektroninen posti UNIX j„rjestelm„ liitettyn„ Internet tietoverkkoon mahdollistaa elektronisen postin l„hett„misen muille k„ytt„jille toisissa koneissa ymp„ri maailmaa. S„hk”postin nopeus esim. Yhdysvaltoihin on huikea, normaaliolosuhteissa postil„hetys kulkee tuon 12.000 kilometri„ noin parissa minuutissa. Koneesi ovat osa t„t„ maailmanlaajuista verkkoa, ja viimeisimm„n arvion mukaan olet yksi yli 20 MILJOONASTA Internet k„ytt„j„st„. Voit l„hett„„ henkil”kohtaisia terveisi„ tutuillesi ymp„ri maailmaa (usko pois, Internetist„ saat hyvinkin pian tuttuja) tai hyv„n aamun toivotukset naapurillesi, jolla on oma tunnus internetiin liittyneess„ koneessa. Mielikuvitus asettaa rajat. „Image] 1.7 UNIX j„rjestelm„n rajoitteet? Useimmat kuullut valitukset UNIX j„rjestelm„st„ sanovat sit„ karuksi, ep„yst„v„lliseksi, petolliseksi ja anteeksiantamattomaksi. N„ille valituksille l”ytyy hyv„t perustelut, mutta alunperin se johtuu itse unixin suunnittelusta: k„ytt”j„rjestelm„ oli tarkoitettu palvelemaan osaavia ohjelmoijia, joille k„ytt„misen helppous merkitsi v„hemm„n kuin teho ja joustavuus. UNIX j„rjestelm„n kasvattaessa k„ytt„j„kuntaansa monet pahimmat "ongelmat" korjattiin itse k„ytt”j„rjestelm„„n ja sovellusohjelmiin. Esimerkiksi aliasointi eli "korvike" toiminnot komentotulkeissa antavat mahdollisuuden uudelleenm„„ritell„ jo olemassaolevia komentoja, tehden niist„ k„ytt„j„yst„v„llisempi„ ja anteeksiantavaisempia. Vaikka nuo ominaisuudet tekev„t komentotulkeista helppok„ytt”isi„, ne eiv„t ole muuttaneet itse tulkkien toimintaperiaatteita. Suurin syy miksi UNIX k„ytt”ymp„rist”„ on usein kutsuttu karuksi ja vihamieliseksi johtuu UNIXin perusfilosofiasta "no news if good news". Esimerkiksi ed editori ei kysele sinulta "anna komento" tai cp (copy) k„sky ei vahvista tiedoston kopiointia k„ytt„j„lle, tai who komento ei tulosta neuvovaa otsikkorivi„ vaan kertoo pelk„st„„n koneen t„m„nhetkiset k„ytt„j„t. Se vain esitt„„ tietoa ilman selityksi„. Karuus on kuitenkin k„ytt”kelpoista koska se tekee mahdolliseksi "putkiajattelun", jossa yhden ohjelman tuloste k„ytet„„n toisen ohjelman sy”tteen„. Voit esimerkiksi saada tietoosi kuinka monta k„ytt„j„„ on koneella t„ll„ hetkell„ ohjaamalla who komennon tulosteen wc (word count) ohjelmalle joka laskee tiedostosta/sy”tteesta sen rivien lukum„„r„n. Jos who ohjelma tulostaisi otsikkorivin kertomaan eri sarakkeiden tarkoituksen, tuo putkiajattelu filosofia ei en„„ toimisi: wc laskisi k„ytt„j„t v„„rin. Komentotulkin k„ytt”liittym„ voi kuitenkin olla petollinen. Pieni kirjoitusvirhe komentoriviss„ saattaa tuhota peruuttamattomasti tiedostoja tai tahattomasti poistaa sinut systeemist„. Kannattaa muistaa varovaisuus toimittaessa voimakkaalla k„ytt”j„rjestelm„ll„. Jos etsit "foolproof" ymp„rist”„, k„yt„ UNIX j„rjestelm„n ty”kaluja oman komentotulkkisi oletusasetuksia. C Shell (tcsh) ja Korn Shell (ksh) tukevat sis„„nrakennettulla tukij„rjestelm„ll„ tuollaisia "pieni„ lipsahduksia". Siksi valitsimme omaan UNIX j„rjestelm„„mme juuri tcsh:n, jotta sinun olisi miellytt„v„mpi toimia ja opetella UNIXin k„ytt”. --------------------------------------------------------------------------- 2. LOGIN, MIKÄ SE ON? SALASANA? Aloittaessasi k„yt”n olet jo t”rm„nnyt j„rjestelm„n ensimm„iseen kehoitteeseen: Internet Finland UNIX services Welcome to Avalon - Linux 1.2.8 (POSIX) avalon login: Jokaisella k„ytt„j„ll„ on oma HENKILÖKOHTAINEN tunnus koneessa, sek„ t„h„n tunnukseen liittyv„ salasana. Salasanan valinnasta kerron lis„„ hieman my”hemmin. Kun k„ytt„j„ on kertonut koneelle tunnuksensa, sek„ oman salasanansa, k„ynnistyy komentotulkki. J„rjestelm„n t„rke„t tiedotteet ilmestyv„t ruudulle yleens„ ennen komentotulkin kehoitetta (prompt). Jatkamme edell„olevaa esimerkki„: avalon login: pehu Password: Last login: Thu May 11 18:01:07 on tty1 Linux (avalon) 1.2.8 #1 Thu May 20 13:55:03 EET DST 1995 i486 ********************************************************************* Internet Finland unix system, running linux on i486DX4-100 Ongelmatilanteissa ota yhteys yll„pitoon, postitse: root@icon.fi Lis„„ apua saat komennolla 'menu' ********************************************************************* 4:24pm up 12:33, 6 users, load average: 1.88, 1.86, 1.69 pehu@avalon:~> Salasanaa (password) kysytt„ess„ kirjoittamaasi salasanaa EI KAIUTETA ruudulle (turvallisuus syist„). Jos vahingossa kirjoitat salasanasi v„„rin, kone kysyy uudelleen k„ytt„j„tunnusta ja salasanaa. Salasanan vaihto k„y komennolla "passwd". Ensin kysyt„„n vanhaa salasanaa, ja sitten varmistutaan ettei kukaan muu voi sit„ vaihtaa kuin sin„ itse. T„m„n j„lkeen annat uuden salasanan, jonka kone kysyy viel„ varmuudeksi uudelleen, ja palaa komentotulkin kehoitteeseen. Onnistunut salasanan vaihto n„ytt„„ siis t„lt„: pehu@avalon:~> passwd Changing password for pehu. Old password: (vanha salasana) New password: (uusi salasana) Retype new password: (viel„ kerran) Password changed. pehu@avalon:~> T„ss„ 'pehu@avalon:~>' on komentotulkin kehoite (prompt). 'pehu' on k„ytt„j„tunnus ja 'avalon' on koneen nimi. Jos sinulla on erilainen, ei kannata huolestua, mik„„n ei ole v„„rin. T„ss„ on ollut vain toisenlainen kehoitteen m„„ritelm„. Huomaa ettei salasanan vaihto kaiuta merkkej„ ruudulle. Lis„„ tietoa saat komentotulkin kehoitteesta oman komentotulkkisi manuaalisivulta. Internet Finlandin koneissa kaikilla k„ytt„jill„ aloittaessa "tcsh", eli infoa saat lis„„ komennolla "man tcsh". J„rjestelm„st„ poistuminen k„y 'exit' komennolla. Muista AINA poistua sill„. --------------------------------------------------------------------------- 3. KOMENNOT Komentoja voi antaa interaktiivisesti komentorivein„ tai ne voi kirjoittaa komentotiedostoiksi (shell script). Oman tulkkisi k„ytt”oppaasta (esim. man tcsh) opit, miten komentotiedostoja tehd„„n sek„ miten niit„ ajetaan. En pureudu juurikaan t„h„n, vaan pyrin k„sittelem„„n asiat yksinkertaisemmalla tasolla. Komentorivi muodostuu komentosanasta (ohjelman nimi, k„sky) ja sen mahdollisista argumenteista. Seuraavissa esimerkeiss„ komentotulkin kehoitteeksi on merkitty '%' merkki. %komento „argumentti1] „argumentti2] ... „argumentti n] Argumentti voi olla joko olio johon komento kohdistuu %man man (opastusta komennosta man) %cp file1 file1.bak (tiedoston kopiointi) tai optio, jolla komentoa muutetaan tai tarkennetaan (sijaitsee yleens„ heti komentosanan j„lkeen) %ls -C (hakemisto sarakemuodossa) Komentorivill„ voi luetella useita komentoja k„ytt„m„ll„ erottimena puolipistett„ (;): %echo hakemistossa; ls -r (kaiutus, k„„nteinen aakkostus) Komentoja voi ryhmitell„: %(cd ..; ls) ; ls (lis„hakemiston/oletushakemiston hakemistolistaus) Komennon voi suorittaa my”s taustaprosessina, esim %gcc ohjelma.c & (c-ohjelman k„„nn”s) Ohjelman tulosteet voi ohjata toisen ohjelman sy”tteeksi putkella (pipe): %who ” wc -l ; date (k„ytt„jien m„„r„ ja p„iv„ys) JÄRJESTELMÄN YLEISET HAKEMISTOT: * / (root) Juurihakemisto * /usr (user file system) K„ytt”tiedostoja ja hakemistoja * /home/users (home) K„ytt„jien kotihakemistot * /bin * /usr/bin (binaries) Bin„„riset versiot UNIX palveluohjelmista * /dev (devices) Laitetiedostot * /etc (et cetera) Hallinnolliset, koneen yll„pitoon liittyv„t tiedostot * /tmp (temporaries) Tilap„isille tiedostoille (kaikilla oikeudet) * /lib * /usr/lib (library) K„„nt„j„n osia, arkistokirjasto * /scratch (scratch) Tied. tilap„iseen s„ilytykseen, kaikilla oikeudet --------------------------------------------------------------------------- 4. YLEISIMPIÄ KOMENTOJA Kokoelma yleisimpi„ komentoja, joita tavallinen k„ytt„j„ saattaa tarvita: LS - List files Tulostaa hakemiston sis„ll”n. Argumenttina voidaan antaa hakemiston nimi tai ilman argumenttia ls tulostaa nykyisen hakemiston sis„ll”n (voit tarkistaa nykyisen hakemiston komennolla pwd). Ls:n eri optioita on useita, ja muutamia niist„ k„ytet„„n toisissa esimerkeiss„ t„ss„ oppaassa. Kannattaa lukaista manuaalisivu jo etuk„teen. pehu@avalon:~> pwd /home/staff/pehu pehu@avalon:~> ls Mail/ asetus.net harjoitus txt/ README bin/ teksti1.txt Tilde ~ merkki kehoitteessa on lyhennys k„ytt„j„n kotihakemistosta. Voit viitata omaan kotihakemistoosi aina tuolla merkill„, esim k„skyn„ voisi olla: 'ls ~'. CAT - Cat (catenate) Tulostaa tekstitiedoston sis„ll”n ruudulle tai yhdist„„ jo olemassa olevia yhdeksi kokonaiseksi. Huomioi ett„ cat tulostaa tiedostot ilman taukoja, joten jos kysymyksess„ on pidempi tekstitiedosto, kannattaa k„ytt„„ 'more' tai 'less' komentoa, jotka tulostavat ruudullisen kerrallaan. Seuraavassa esimerkki cat:n k„yt”st„ ja hakemistolistauksen tulostuksesta. Huomaat my”s eron cat ja ls komennoille: cat tulostaa tiedoston sis„ll”n, ls tiedostolistauksen. pehu@avalon:~> ls harjoitus teksti1 teksti2 pehu@avalon:~> cat harjoitus T„m„ tiedosto on testisellainen. Erin„ist„ teksti„... pehu@avalon:~> RM - Remove file Poistaa tiedoston. Vastaa DOSsin del komentoa. Huomioi ett„ hakemistoille on oma komentonsa 'rmdir', joten et saa poistettua suoraan hakemistoja rm:ll„. pehu@avalon:~> ls harjoitus teksti1 teksti2 pehu@avalon:~> rm harjoitus pehu@avalon:~> ls teksti1 teksti2 pehu@avalon:~> cat harjoitus cat: harjoitus: No such file or directory Kun k„ytimme 'cat' komentoa, se ilmoitti virheen "No such file or directory" - "harjoitus" nimist„ tiedostoa ei siis l”ytynyt. Huomioi: rm k„sky ei kysele sinulta haluatko todella tuhota tiedoston, vaan sinun on oltava varma asiastasi. Vakio UNIX ei tunne undelete komentoa, joten tuhottu tiedosto on menetetty, sit„ ei voida palauttaa takaisin. 'man rm' kertoo mit„ optioita 'rm' k„sky hyv„ksyy komentoriville. Voit esimerkiksi tehd„ aliaksena 'rm' k„skyn uudestaan: 'alias rm rm -i': nyt 'rm' k„sky kysyy aina haluatko todella tuhota jonkun tiedoston, ja vain jos vastataan "y" tiedosto poistetaan. Internet Finlandin UNIX koneissa rm on aliasoitu 'rm -i':ksi vakioasetuksena, joten tuhottaessa tiedostoja kone kysyy sinulta aina haluatko todella tehd„ sen. Suuria m„„ri„ tuhottaessa kyselyt saattavat tuntua kiusallisilta, mutta rm k„skyn aliasointi saattaa pelastaa sinun tiedostosi n„pp„ilyvirheelt„. Saat kyseisen option pois p„„lt„ lis„„m„ll„ tcsh komentotulkin aloitustiedostoon (.cshrc) rivin "unalias rm". RMDIR - Remove Directory Tuhoaa hakemiston. Huomioi, ett„ ko. hakemiston tulee olla tyhj„, muutoin tuhoamista ei tehd„. CP - Copy files or directories Kopioi tiedosto tai hakemisto. pehu@avalon:~> ls teksti1 teksti2 pehu@avalon:~> cp teksti1 kopio1 pehu@avalon:~> ls kopio1 teksti1 teksti2 Huomio edelleen, ett„ 'cp' komento tuhoaa tiedoston jonka p„„lle kopioidaan. Interaktiivisessa moodissa 'cp -i' copy kyselyy jos se aikoo kirjoittaa olemassa olevan tiedoston p„„lle. Internet Finlandin UNIX koneissa cp on aliasoitu 'cp -i':ksi vakioasetuksena, joten kopioitaessa tiedostoja kone kysyy sinulta aina, haluatko todella tehd„, jos se kopioi jo olemassa olevan tiedoston p„„lle. Saat kyseisen option pois p„„lt„ lis„„m„ll„ tcsh komentotulkin aloitustiedostoon (.cshrc) rivin "unalias cp". MV - Move files or directories UNIX ei tunne 'rename' komentoa, vaan nimenmuutos tehd„„n siirt„m„ll„ tiedosto toiselle nimelle. pehu@avalon:~> mv kopio1 lahete1 pehu@avalon:~> ls lahete1 teksti1 teksti2 pehu@avalon:~> mkdir kansio1 pehu@avalon:~> ls kansio1 lahete1 teksti1 teksti2 pehu@avalon:~> mv lahete1 kansio1 pehu@avalon:~> ls kansio1 lahete1 MKDIR - Make directory Luo uuden hakemiston. WHO - Who is logged in Kertoo t„m„n hetkisen k„ytt„j„listan: k„ytt„j„t jotka ovat koneessa sis„ll„. pehu@avalon:~> who pehu ttyp0 May 20 15:54 (reality:0.0) tjouhki ttyp1 May 20 20:48 (bbs.icon.fi) jukkah ttyp4 May 20 17:54 (bbs.icon.fi) amigo ttyp6 May 20 16:44 (bbs:S.0) tjouhki ttyp9 May 20 16:45 (bbs.icon.fi) mjm ttypc May 20 19:24 (bbs.icon.fi) pehu@avalon:~> who am i avalon!pehu ttyp0 May 20 15:54 (reality:0.0) pehu@avalon:~> Lyhyesti selostettuna: who kertoo k„ytt„j„n, terminaalin jossa ko. henkil” on, koneeseen tuloajan ja jos mahdollista, koneen josta ko. henkil” tulee j„rjestelm„„n ja/tai muuta informaatiota. Sivuutan t„m„n komennon tarkemman tarkastelun, lis„„ tietoa saat 'man who' komennolla. CD - Change directory Vaihda ty”hakemistoa. Pelkk„ cd komento ilman argumentteja vaihtaa nykyisen ty”hakemiston omaksi kotihakemistoksesi. HEAD - Head file Listaa tiedoston alkua. Default asetuksena 10 ensimm„ist„ rivi„. MORE / LESS - Print file Listaa tiedoston n„yt”lle sivu kerrallaan. Suositeltavaa pitkiss„ tekstitiedostoissa. DU - Disk Usage Tietoja hakemiston viem„st„ levytilasta. DF - Disk Free Tietoja vapaasta levytilasta. Eri hakemistoja on voitu ottaa eri levypartitioilta, ja df komento n„ytt„„ kaikkien k„ytett„viss„ olevien partitioiden (hakemistojen) vapaan tilan sek„ nykyisen t„ytt”asteen. GREP - Global Regular Expression Print Etsint„ tiedostoista. grep komento hakee annettua merkkijonoa parametri tiedostoista, ja loyt„ess„„n tulostaa sen rivin jolla kyseinen tieto l”ytyi. Eritt„in vahva komento, manuaalisivulla lis„„ grepin hyv„ksymist„ optioista ja muotoilu mahdollisuuksista. Katso my”s 'man fgrep'. pehu@avalon:~/temp> cat testifile Hei kaikki. T„ss„ on toinen rivi T„m„ taasen on kolmas rivi Tiedosto loppuu nelj„nteen riviin. pehu@avalon:~/temp> grep toinen testifile T„ss„ on toinen rivi pehu@avalon:~/temp> grep -n rivi testifile 2:T„ss„ on toinen rivi 3:T„m„ taasen on kolmas rivi 4:Tiedosto loppuu nelj„nteen riviin. pehu@avalon:~/temp> grep -c rivi testifile pehu@avalon:~/temp> who ” grep pehu pehu tty1 Feb 23 19:41 pehu@avalon:~/temp> DATE - Show datum Tulostaa p„iv„yksen ja kellonajan. Date komennon tulostusmuotoa saa muutettua l„hes rajattomasti, manuaalisivuilta lis„tietoa. UUDECODE - decode file Pura uuencode komennolla koodatut tiedostot normaaliin muotoon. Uuencode muotoa k„ytet„„n useasti l„hetett„essa tiedostoja usenet news alueille tai postina toisille k„ytt„jille. Uuencode tekee tiedostosta 7-bittist„ tietoa (voit esim lukea tuota tiedostoa more tai less komennoilla) jolloin sen voi laittaa eteenp„in melkein mit„ tiet„ tahansa. Esim elm postiohjelma ei osaa l„hett„„ puhtaita binaaritiedostoja eteenp„in (pine osaa, katso manuaalisivulta tietoa pinen attachment optiosta). pehu@avalon:~> ls tiedosto.uue pehu@avalon:~> uudecode tiedosto.uue pehu@avalon:~> ls kukkanen.gif tiedosto.uue Esimerkiss„ oli l„hetetty k„ytt„j„lle gif kuva uuenkoodatussa muodossa, joka purettiin lopuksi hakemistoon uudecode komennolla. --------------------------------------------------------------------------- 5. KÄYTTÄJIEN VÄLINEN KOMMUNIKOINTI Jokaisella k„ytt„j„ll„ on siis henkil”kohtainen k„ytt„j„tunnus, ja koneilla on yksik„sitteinen uniikki nimi. N„inollen voidaan m„„ritell„ tarkasti k„ytt„j„ sek„ omassa koneessa ett„ toisessa vieraassa koneessa. Osoite rakentuu nimiosasta ja koneosasta, erotettuna '@' merkill„. Oheisena esimerkkej„ kelvollisista tunnuksista ja postiosoitteista: pehu pehu@reality aakko@kruuna.helsinki.fi Osoite "aakko@kruuna.helsinki.fi" kertoo meille k„ytt„j„st„ aakko joka on koneessa nimelt„„n kruuna.helsinki.fi (kruuna niminen kone Helsingin Yliopistossa). Koneen nimi rakentuu kolmesta osasta: koneen nimi (kruuna), domain eli alue (helsinki) ja maa (fi = finland). Paikallisessa verkossa riitt„„ mainiosti viittaus koneeseen reality.icon.fi pelk„ll„ koneen nimell„ reality. Mutta emme voi viitata icon alueen alla kruuna nimiseen koneeseen Helsingin Yliopistolla pelk„st„„n notaatiolla "@kruuna": t„m„ ymm„rrett„isiin koneeksi "kruuna.icon.fi" ja t„llaista konetta ei ole olemassa. Joskus n„kee pidempi„ aluenimi„, esim "pallo.cs.hut.fi". Koneen nimi on pallo, domainina "cs.hut" (cs = computer science) eli kone on teknisen korkeakoulun (hut = helsinki University of Technology) tietokonetekniikan laitoksen kone. Useasti koneen nimi kertoo jo paljon sen sijainnista ja omistajasta. Internet Finlandin koneiden domain nimi on siis ICON.FI, ja t„ll„ hetkell„ on vain yksi asiakaspalvelussa oleva UNIX kone jonka nimi on avalon. Kokonaisuudessaan koneen nimi on avalon.icon.fi. Oman s„hk”postitunnuksesi saat laittamalla oman k„ytt„j„tunnuksen koneen nimen eteen ja eroittamalla ne at-merkill„ (@). whoami : kertoo mill„ k„ytt„j„tunnuksella ty”skentelet who : kertoo kenell„ on istunto koneessa w : n„ytt„„ kenell„ on istunto koneessa ja mik„ ohjelma on suorituksessa FINGER - Finger user account Kun tiedet„„n k„ytt„j„tunnus, voidaan koneelta "kysell„" tunnuksesta. Finger antaa tarkempia tietoja k„ytt„jist„ (nimell„ tai k„ytt„j„tunnuksella) esim joutenoloaika (idle), onko lukematonta postia jne. Finger tulostaa my”s k„ytt„j„n kotihakemistossa olevan tiedoston .plan (siihen on oltava lukuoikeudet, palaamme oikeuksiin seuraavassa kappaleessa). finger aakko@kruuna.helsinki.fi (k„ytt„j„ aakko kruunassa) finger pehu (k„ytt„j„ pehu t„ss„ koneessa) finger @reality.icon.fi (kuka on koneessa reality.icon.fi) WRITE - Write message to tty Yht„aikaa koneessa olevien k„ytt„jien v„linen keskustelu, jossa l„hetys tapahtuu riveitt„in. P„„ttyy painamalla ^D (ctrl d, sy”tteen loppu, EOF). H„irint„yritykset voi kielt„„ komentamalla mesg n (peruminen mesg y). RMSG - Remote Message L„hett„„ viestin toiselle k„ytt„j„lle, joko omaan tai toiseen koneeseen. L„het„mme terveisi„ Torpalle koneeseen cute.cute.fi: pehu@avalon:~> rmsg torppa@cute.cute.fi hei.. kuis kulkee? ^D pehu@avalon:~> Message from Jarkko Torppa : Oi kuule t„„ll„ on kaikki oikeen ihanasti pehu@avalon:~> Kokeillaan viestitt„„ Mokulle omassa koneessa: pehu@avalon:~> rmsg moku Huuhaa? Hirvet sy” sumua ^D pehu@avalon:~> Sy”tteen loppumerkkin„ on CTRL-D. L„hes kaikista n„pp„imist”„ lukevista UNIX ohjelmista p„„see ulos antamalla sy”tteeksi tuon ctrl-D merkin (EOF, End-Of-File). Rmsg lukee siis n„pp„imist”„, kunnes se kohtaa EOF merkin ja sen j„lkeen l„hett„„ kirjoitetun tekstin viestin„ toiselle k„ytt„j„lle. Rmsg osaa l„hett„„ my”s viestej„ k„ytt„jille toisilla koneilla. T„m„ vaatii kuitenkin niin sanotun "rmsg daemonin" vastaanottop„„ss„. Daemon on ohjelma, joka kuuntelee verkkoa ja huomaa koneelle tulevat rmsg viestit. Internet Finlandin kaikki UNIX koneet ajavat t„t„ ko. daemonia. Esim: rmsg pehu@reality l„hett„isi pehulle viestin koneeseen nimelt„„n reality (reality.icon.fi) („lk„„ kuitenkaan testailko juuri minulle! :). TALK - Realtime talk to users Avaa yhteyden toiseen k„ytt„j„„n reaaliaikaista keskustelua varten. T„m„ toimii my”s muihin koneisiin. Jos k„ytt„j„, jonka kanssa haluat keskustella, on samassa koneessa kuin sin„, et tarvitse "@koneen.nimi" muotoa, vaan pelkk„ k„ytt„j„tunnus riitt„„. Jos sin„ saat talk yrityksen joltain toiselt„ k„ytt„j„lt„, se n„ytt„„ suunnilleen t„llaiselta: Message from Talk_Daemon@avalon.icon.fi at 18:43 ... talk: connection requested by aakko@plootu.Helsinki.FI. talk: respond with: talk aakko@plootu.Helsinki.FI K„ytt„j„ 'aakko' halusi talk yhteyteen koneesta plootu.Helsinki.FI. Talk kertoi my”s miten ko. yhteyteen vastataan. Esimerkkin„: talk aakko@karhu.helsinki.fi talk pehu MESG - Messages Jos et halua saada toisten viestej„ (ei koske postia) voit kirjoittaa: pehu@avalon:~> mesg n jolloin tavallinen k„ytt„j„ ei voi l„hett„„ viestej„ sinun ruudullesi. Takaisin viestitilaan p„„set komennolla 'mesg y'. T„m„ esto koskee talk/write/rmsg komentoja (Yleisesti ottaen kaikkia komentoja joilla toiset k„ytt„j„t voivat l„hett„„ sinun ruudullesi viestej„). ELM - Electronic Mail S„hk”postin vastaanotto ja lukeminen. Elm on toinen Internet Finlandin UNIX j„rjestelm„ss„ oleva postinluku ohjelma. Pine on elmist„ hieman eroava vaihtoehto. Lis„„ apua saat k„ynnist„m„ll„ ohjelman ja lukemalla elmin/pinen sis„ist„ help-sivua. Yleist„ s„k”postiosoitteista: s„hk”postiosoitteenasi k„ytet„„n "tunnus@kone.alue.maa" muotoa, ja Internet Finlandin tapauksessa se on Tunnus@icon.fi tai Tunnus@avalon.icon.fi. Monissa koneissa ja j„rjestelmiss„ muoto "Etunimi.Sukunimi@alue.maa" on tuettuna, ja Internet Finlandin koneissa sinulle voi l„hett„„ postia osoitteelle Etunimi.Sukunimi@icon.fi (esim t„m„n oppaan tekij„n saa kiinni s„hk”postiosoitteesta Pekka.Aakko@icon.fi). --------------------------------------------------------------------------- 6. TIEDOSTOJEN SUOJAUKSET CHMOD - Change access Mode of a file Muuttaa hakemiston/tiedoston luku/kirjoitus/haku oikeuksia. Tiedostojen ja hakemistojen suojaus perustuu: * k„ytt„j„ryhmiin o omistaja (user u) o omistajan ryhm„ (group g) o muut (others o) * erillisiin oikeuksiin o luku (read r) o kirjoitus (write w) o suoritus (execute x) o x:n sijasta voi olla erikoisoikeus suid (s), sgid (S), sticky (t). J„rjestelm„ erottaa k„ytt„j„t ja ryhm„t toisistaan k„ytt„j„- (UID = User identification) ja ryhm„numerolla (GID = Group identification). K„ytt„j„numerot ovat uniikkeja, ryhm„„n voi kuulua useampikin k„ytt„j„, yksi k„ytt„j„ voi kuulua useisiin ryhmiin. Oman UID ja GID numerosi n„et komennolla id, samalla n„et my”s ryhm„t joihin kuulut. pehu@avalon:~> id uid=501(pehu) gid=100(users) groups=100(users),200(staff),202(asm) Chmod saa informaatiota k„ytt„j„ryhmien sek„ tiedosto-oikeuksien mukaan: U - (user) tiedoston omistaja G - (group) tiedoston omistajan ryhm„ O - (other) muut k„ytt„j„t A - (all) tarkoittaa kaikkia (u, g ja o) Operaatioita: + - (add permission) lis„„ oikeuksia - - (remove permission) poista oikeuksia = - (set permissions) aseta kaikki oikeudet halutulla tavalla. Oikeuksia: R - (read) lukuoikeudet W - (write) kirjoitusoikeudet X - (execute) ajooikeus (hakemistoilla kauttakulkuoikeus). S - (set user id) ajettavan tiedoston UID oikeudet m„„r„ytyv„t tiedoston omistajan mukaan. T - (sticky) ajettava ohjelma s„ilyy swap levyll„. T„m„n saa asettaa vain j„rjestelm„n yll„pit„j„. Tiedoston suojaustiedot voi tarkistaa komentamalla esim: ls -lg tiedoston_nimi tai ls -lg hakemisto pehu@avalon:~> ls -lg omajuttu.exe - rwx --- r-- 1 pehu users 566 Apr 17 05:01 omajuttu.exe* jossa vasemmalta oikealle kent„t ovat: - Tiedoston tyyppi rwx Omistajan oikeudet --- Ryhm„n oikeudet r-- Muiden oikeudet 1 Linkkien lukum„„r„ tiedostoon pehu Omistaja users Omistajan ryhm„ 566 Koko tavuina Apr 17 05:01 Viimeisin muutosaika omajuttu.exe tiedoston nimi Ensimm„inen "paikka" kertoo tiedoston tyypin: - tavallinen tiedosto, d hakemisto b lohkolaite c merkkilaite s socket l symbolinen linkki '*' merkki kertoo sinulla olevasta oikeudesta ajaa tiedosto (execute). Huomio: vain omistaja voi muuttaa omia suojauksiaan. Poikkeuksena etuoikeutettu k„ytt„j„ eli ns. superuser. Kolme seuraavaa paikkaa kertoo k„ytt„j„n (user) oikeudet ko. tiedostoon; t„ss„ tapauksessa k„ytt„j„ll„ olisi read (r), write (w) ja execute (x) eli luku-, kirjoitus- ja ajo-oikeudet. Kolme siit„ seuraavaa ryhm„n (group) oikeudet, ja taas seuraavat kolme muiden (other) oikeudet. Nyt haluaisimme kuitenkin, ett„ muutkin voisivat "ajaa" eli suorittaa tuon ohjelman (oletetaan, ett„ ko. tiedosto on ajettava ohjelma... tekstitiedostoa ei voi ajaa, ellei kyseess„ ole komentotiedosto (shell script)). Haluamme antaa tiedostolle execute oikeudet: pehu@avalon:~> chmod o+x omajuttu.exe pehu@avalon:~> ls -l omajuttu.exe - rwx --- r-x 1 pehu 566 Apr 17 05:04 omajuttu.exe* Huomioi, ett„ vaikka ryhm„ll„ ei olekaan oikeus ajaa ohjelmaa ryhm„oikeuksien mukaan, muilla on. Ja "muut" k„ytt„jiin luetaan aina KAIKKI k„ytt„j„t. Eli my”s sinun ryhm„ss„si olevat voivat silti ajaa tuon ohjelman. Jos taas haluaisimme poistaa kaikki oikeudet muille, menettelemme seuraavasti: pehu@avalon:~> chmod o-rx omajuttu.exe pehu@avalon:~> ls -l omajuttu.exe -rwx------ 1 pehu 566 Apr 17 05:05 omajuttu.exe* Muutamme mielemme viel„ kerran, ja haluamme antaa oikeudet jokaiselle k„ytt„j„lle ja ryhm„lle: pehu@avalon:~> chmod a+rwx omajuttu.exe tai pidemmin: pehu@avalon:~> chmod u+rwx g+rwx o+rwx omajuttu.exe Seurauksena tiedoston oikeudet muuttuivat: pehu@avalon:~> ls -l omajuttu.exe -rwxrwxrwx 1 pehu 566 Apr 17 05:07 omajuttu.exe* Kokeilemme '=' operaattoria: pehu@avalon:~> chmod a=rx omajuttu.exe pehu@avalon:~> ls -l omajuttu.exe -r-xr-xr-x 1 pehu 566 Apr 17 05:09 omajuttu.exe* Ent„ riitt„„k” aina yhden tiedoston oikeuksien muutos? Ei v„ltt„m„tt„. Oletetaan tilanne, jossa sinulla on kotihakemistossasi alihakemisto "duunit", jossa ohjelma "omajuttu.exe": pehu@avalon:~> ls -l ... drwx------ 2 pehu users 1024 Feb 21 15:51 duunit/ ... (tulosteesta poistettu kaikkien muiden tiedostojen ja hakemistojen infomaatio.) pehu@avalon:~> cd duunit pehu@avalon:~/duunit> ls -l omajuttu.exe -rwxr-xr-x 1 pehu users 3456 Feb 21 15:51 omajuttu.exe* Tiedoston oikeudet n„ytt„isiv„t olevan kunnossa, mutta jos toinen k„ytt„j„ kokeilisi ajaa tuota tiedostoa, h„n ei siin„ onnistuisi. Hakemiston "duunit" oikeudet eiv„t ole kunnossa, ja ne pit„„ muuttaa kohdalleen: pehu@avalon:~/duunit> chmod o+rx . pehu@avalon:~/duunit> ls -la drwx---r-x 2 pehu users 1024 Feb 21 15:51 ./ drwxr-xr-x 21 pehu users 2048 Feb 21 15:51 ../ -rwxr-xr-x 1 pehu users 3456 Feb 21 15:51 omajuttu.exe* Muutettu kohta on lihavoitu. Piste tarkoittaa unixissa nykyhakemistoa. Muutimme oikeuksia siit„ hakemistossa, jossa parhaillaan olemme. '../' on edellinen hakemisto, eli t„ss„ tapauksessa oma kotihakemistomme. Sen oikeudet n„yttiv„tkin olevan kunnossa, "muille" on annettu oikeus lukea ja ajaa ohjelmia omassa kotihakemistossamme. Kotihakemistot ovat m„„r„tty Internet Finlandin koneissa oletukselle luku/kirjoitus/ajo - oikeudet vain k„ytt„j„lle. Jos haluat muuttaa oletusarvoja, k„yt„ chmod komentoa. Muista kuitenkin ettei kannata antaa omaan kotihakemistoon muille kirjoitusoikeuksia. T„ll”in muut k„ytt„j„t eiv„t voi tuhota sinun tiedostojasi tai k„ytt„„ sinun kotihakemistoasi omana tiedostojen s„ilytyspaikkanaan. Hakemistosta voi suorittaa ohjelman ajon, jos x-lippu on ylh„„ll„. Jos hakemistoa halutaan selata, pit„„ olla my”s r-lippu ylh„„ll„. Teet esimerkiksi hakemiston, mutta 'cd' k„sky„ k„ytt„ess„si kone ilmoittaa, ettei se voi vaihtaa hakemistoa. T„ll”in on todenn„k”isimmin kyseess„ oikeuksien puuttuminen: omiin hakemistoihin voi siis jostain syyst„ olla my”s k„ytt„j„n omat oikeudet pieless„. Tilanteesta selvi„„ antamalla komennon 'chmod u+rwx hakemisto', jolloin k„ytt„j„lle tulee kaikki oikeudet ko. hakemistoon. Enemm„n tietoa komennolla 'man chmod' ja 'man ls', jolla saat tietoa ls ohjelman parametreist„. Chmod ohjelmalle voi antaa tietoja tiedostojen oikeuksista my”s numeerisena, mutta suosittelen manuaalisivun lukemista ja asian sis„ist„mist„ sit„ kautta. Kyseess„ on t„rke„ UNIXin tiedostojen suojauksia koskeva asia. --------------------------------------------------------------------------- 7. PANIIKKI! MITÄ TAPAHTUU!? APUA! Jos uutena k„ytt„j„n„ sinulle sattuu ongelmatilanne, jossa kone tuntuu lukkiutuvan eik„ ota k„skyj„ vastaan, kannattaa kokeilla seuraavia kontrollimerkkej„: ctrl-D (jo edell„ mainittu sy”tteen lopetus, EOF), ctrl-Z tai ctrl-C. Ctrl-C on yleinen "stop" (break) ohjelmille. Se kertoo komentotulkille k„ytt„j„n haluavan keskeytt„„ ohjelman suorituksen. T„m„ ei kuitenkaan ole yleisp„tev„ ohje, ctrl-C ei pure aina ja joka paikassa. Ctrl-Z laittaa prosessin eli ohjelman suorituksen "j„ihin" (suspend). Komentotulkin ty”njako (job control) hoitaa t„m„n, ja jos halutaan, ajoa voidaan jatkaa tai odottamassa oleva ohjelma voidaan tappaa. T„ss„ esimerkki: pehu@avalon:~> ls kirje huuhaa include aloitteleva.txt ^Z „1] + Suspended ls Taustalle laitetun ty”n saat uudestaan suoritukseen komennolla 'fg %numero' tai lyhyemmin '%numero'. pehu@avalon:~> fg %1 ls perjantai.txt dead.letter koe.txt sumu.conffi pehu@avalon:~> Omia prosessejasi n„et komennoilla 'ps -xg' ja 'ps -uxg'. pehu@avalon:~> ps -xg PID TT STAT TIME COMMAND 22927 p0 S 0:19 -tcsh (tcsh) 23458 p0 R 0:00 ps -xg 17188 ? S 0:09 xload -hl grey50 -geometry 100x100+210+1 17563 ? S 0:04 xterm -ls -name xterm-avalon -T avalon 17566 q2 S 0:04 -tcsh 17632 q3 S 0:05 -tcsh Lyhenteiden selitykset: PID Process ID (prosessin tunnistenumero) TT TTY (terminaali) STAT STATUS (S = Sleep, R = Running) TIME Kulutettu cpu aika COMMAND Mist„ komennosta on kyse Jos haluat tappaa jonkun OMAN prosessisi, k„yt„t komentoa 'kill'. J„tet„„n yksi ls prosessi taustalle ja katsotaan koneen antamaa prosessilistausta: pehu@avalon:~> ls Mail/ bin/ ruotti/ README blaa swedish-chef* aloitteleva.txt cuteinfo.html term112/ ^Z „1] + Suspended ls -F pehu@avalon:~> ps -uxg USER PID %CPU %MEM SZ RSS TT STAT START TIME COMMAND pehu 23484 19.0 1.0 194 103 p0 R 15:18 0:00 ps -uxg pehu 22927 1.5 1.8 390 195 p0 S 13:48 0:20 -tcsh (tcsh) pehu 23482 1.0 0.4 89 40 p0 T 15:17 0:00 ls Nyt haluamme tappaa tuon 'ls' prosessin. N„emme ett„ sen tunnus on 23482: pehu@avalon:~> kill -9 23482 „1] Killed ls pehu@avalon:~> 'Kill -9' tarkoittaa, ettei prosessilta kysell„ saako sen tappaa vaan se kuolee automaattisesti. 'man kill' kertoo lis„„. Kill ottaa argumentikseen my”s ty”n numeron, eli voimme esim sanoa: 'kill -9 %1'. Jos haluamme n„hd„ taustalla olevat ty”t, se onnistuu 'jobs' komennolla: pehu@avalon:~> jobs „1] + Suspended ls Jossa: „ty”n numero], + ty”n tila, ty”n nimi --------------------------------------------------------------------------- 5. TIETOLIIKENNE Internet Finland tarjoaa TCP/IP yhteydet kaikkialle maailmaan. Maalikolle: yhteydet toisiin koneisiin. T„t„ varten on k„yt”ss„ 'telnet' ja 'rlogin' komennot, jotka ottavat yhteyden haluttuun koneeseen. Telnet on "yleinen" yhteydenottotapa, rlogin taas kertoo vastaanootokoneelle my”s k„ytt„j„tunnuksen, jolla halutaan yhteys. TELNET „kone „portti]] Yhteydenotto TELNET-protokollaa k„ytt„en. Jos kohdekonetta ei anneta, joudutaan telnet-komentotilaan (opastus: ?) Kun yhteys on avattu, kysyy kone k„ytt„j„tunnuksen ja salasanan. Telnet toimittaa kirjoitetut merkit et„koneelle joko rivi tai merkki kerrallaan (line-by-line ja character-at-a-time). Joillekkin sovelluksille on t„rke„„ niiden saaman informaation 'muoto' joten jos sinulla on ongelmia et„yhteydess„ toiseen sovellukseen (esim. mud :) kokeile vaihtaa telnet-yhteyden parametreja. Telnet yhteyden saa yleisimmin komentotilaan 'ctrl-]' n„pp„inyhdistelm„ll„, apua '?'. Telnet-yhteys p„„ttyy kun istunto p„„tet„„n et„koneessa. pehu@avalon:~> telnet hetero.cute.fi Trying... Connected to hetero.cute.fi. Escape character is '^]'. HP-UX hetero A.08.00 B 9000/835 (ttys1) login: password: ... RLOGIN „-8] „-l k„ytt„j„tunnus] kone Remote login. Luo et„istunnon (remote session) toiseen paikallisverkon koneeseen (mahdollisesti yhteiset tunnukset). Jos tunnusta ei anneta, oletetaan sen olevan sama kuin nykyisess„ istunnossa (local session). pehu@avalon:~> rlogin reality Last login: Tue May 12 00:59:49 from tty1 Linux reality 1.2.8 **** REALITY.ICON.FI - K„ytt” rajoitettu vain henkil”kunnalle **** pehu@reality:~> Rlogin yhteys on 7 tai 8 bittinen. Yhteys muodostui t„ss„ tapauksessa k„ytt„j„tunnuksella "pehu". Jos haluaisin rlogin yhteyden yliopiston koneelle omalle tunnukselleni "aakko", komentaisin pehu@avalon:~> rlogin -l aakko kruuna.helsinki.fi IRC Internet Relay Chat. Monenk„ytt„j„n keskustelufoorumi, jossa ihmisi„ ymp„ri maailmaa, ja aiheina kaikkea maan ja taivaan v„lill„. En kommentoi t„t„ enemp„„. Kannattaa kysy„ kaverilt„ neuvoa, tai kokeilla irc help sivuja. FTP File Transfer Protocol. Voidaan siirt„„ tiedostoja kahden koneen v„lill„. Maailmalla toimii monia julkisia tiedostopalvelimia, joista yksi suurimmista on suomalainen ftp.funet.fi. N„ihin voidaan kokeilla antaa k„ytt„j„tunnukseksi 'anonymous' ja koneen kysyess„ salasanaa, annetaan oma s„hk”postiosoite (esim pehu@icon.fi). Voitkin kokeilla: ftp ftp.funet.fi K„ytt„j„tunnukseksi anonymous, ja salasanaksi oma email osoitteesi. HUOMIO: Internet Finlandin koneista on yhteydet koko maailmaan, mutta tiedostoja hakiessasi muista suosia kotimaista. On turha rasittaa ulkomaan linkki„ jos tavara l”ytyy kotimaisistakin paikoista. Ulkomailta haku on huomattavasti kalliimpaa ja yleens„ paljon hitaampaa. --------------------------------------------------------------------------- 6. YLEISTÄ TURVALLISUUDESTA JA KONEIDEN KÄYTÖSTÄ. Kaikille k„ytt„jille muistutetaan, ett„ huono salasana tarkoittaa samaa, kuin ett„ kuka tahansa voi lukea tiedostosi niin halutessaan. Pid„ siis itsell„si kunnollinen SALAsana. Pid„ salasanasi SALASSA. Vain SINUN tarvitsee tiet„„ oma salasanasi, ei kenenk„„n muun. Vaikka itse et v„litt„isi omista tiedostoistasi, toiset voivat v„litt„„ omistaan. Tunnuksesi voi avata p„„syn koneeseen ep„asiallisille k„ytt„jille, ja mahdollistaa uusien salasanojen arvaamisen tai murtamisen. Salasanasi arvannut k„ytt„j„ voi tehd„ koneessa kaikkea "kivaa" nimiss„si, vaikkapa tuhota tiedostosi, h„irit„ muita k„ytt„ji„ tai vaikkapa l„hett„„ nimiss„si haukkumakirjeen ties kenelle. Hyv„ll„ salasanalla on merkityst„ SINULLE, mutta ei muille. Salasanan ei ole tarkoitus olla joukko satunnaisesti valittuja kirjaimia, sill„ silloin kiusauksesta kirjoittaa se yl”s tulee aivan liian suuri. Hyv„n salasanan vaatimuksia: * Ei miss„„n kieless„ esiintyv„ sana, ts. ei l”ydy sanakirjoista. * Ei nimi (ihmisen/el„imen/koneen/tytt”-/poikayst„v„n) * Ei liity omaan ty”h”n/harrastuksiin * Ei ole muuten helposti arvattavissa omista toimista/olemuksesta * V„hint„„n 5 merkki„, 6 jos vain pieni„ kirjaimia. Esimerkkej„ kelvollisista salasanoista: pallo7katto kaksi toisiinsa liittym„t”nt„ sanaa, ja niiden v„liin jotain muuta IlTapUrU pieni„ ja isoja kirjaimia sekaisin atsEvumAa satunnainen? Ehei, "aamuvesta" takaperin ja isoilla kirjaimilla sotkettuna. koPri12 satunnainen? Ehei, korpi12 sotkettuna kirjoitusvirheell„. mmdagajn Make My Day And Go Away Just Now kOmkkhs K„ytt„k„„ omaa mielikuvitustanne, kun keksitte hyvi„ salasanoja!! ÄLÄ k„yt„ seuraavanlaisia: Pekka, Pekka1, akkep, 1akkep, pekkaaakko, Pehu, Pehu1 What is your name? Nakit Miss„s olit eilen illalla? 040771 Kuinkakohan vanha olet? HOT-843 Kato, autonomistaja!! Salasanan vaihto k„y komennolla Passwd TÄRKEÄÄ TIETOA: Tunnus ja siihen liittyv„ salasana ovat henkil”kohtaisia. Suomen lain mukaan k„site 'luvaton k„ytt”' on rangaistava teko. Äl„ siis yrit„ hakkeroida toisiin systeemeihin, joissa sinulla EI ole luvallista k„ytt„j„tunnusta. Äl„ my”sk„„n luovuta omaa tunnustasi ja siihen liittyv„„ salasanaa toiselle. --------------------------------------------------------------------------- Kiitokset Jyrki Havialle turvallisuusohjeista sek„ Auvo H„kkiselle yleisinformaatiosta sek„ yleens„ motivaatiosta tehd„ moinen opas :) --------------------------------------------------------------------------- Pekka Aakko / Internet Finland - Pehu@ICON.FI ÿÿ