Luento 2. Timo Savola. 31. maaliskuuta 2006

Samankaltaiset tiedostot
Luento 4. Timo Savola. 21. huhtikuuta 2006

Luento 3. Timo Savola. 7. huhtikuuta 2006

Komentotulkki. Kysymyksiä

Metropolia Ammattikorkeakoulu

Luento 5. Timo Savola. 28. huhtikuuta 2006

Julkaiseminen verkossa

Hieman linkkejä: lyhyt ohje komentoriviohjelmointiin.

Unix-perusteet. Unix/Linux-käyttöjärjestelmä ja sen ominaisuudet

Unix. Markus Norrena

Kieliteknologian ATK-ympäristö Toinen luento

Komentotulkki (SHELL) C- "perhe" - csh, alkup. C shell. Komentokieli. kieltä. - tcsh - edellisen laajennettu versio

Kieliteknologian ATK-ympäristö Viides luento

Kieliteknologian ATK-ympäristö Viides luento

Unix-perusteet. Tulostaminen

Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 2: Linux

Korpusten käsittely clt131, P Luento 4

Hakemistojen sisällöt säilötään linkitetyille listalle.

Hellä ensikosketus. Tomi Kiviniemi

Julkaiseminen verkossa, esitysgrafiikkaa (laitteistosta, tietotekniikka ja tulevaisuus) H9T1: Tiedostojen vienti internetiin

YHTEYDEN OTTAMINEN CSC:N KONEELLE HIPPU

SCI- A0000: Tutustuminen Linuxiin, syksy 2015

SSH Secure Shell & SSH File Transfer

PRINCIPLES OF PROGRAMMING LANGUAGES - DEBUGGER

Kieliteknologian ATK-ympäristö Neljäs luento

[Jnix näyttökoe. o ei ole sallittua käyttää mitään verkkolevyjakoa tai mitään siihen rinnastettavaa järjestelmdä.

Sisällys. Johdatus Linux/Unixiin: Osa 2. Prosessin tilat. Prosessien hallinta. Prosessien monitorointi

Perusteet. Pasi Sarolahti Aalto University School of Electrical Engineering. C-ohjelmointi Kevät Pasi Sarolahti

IDL - proseduurit. ATK tähtitieteessä. IDL - proseduurit

ATK tähtitieteessä. Osa 3 - IDL proseduurit ja rakenteet. 18. syyskuuta 2014

UBUNTU. UBUNTU - Peruskäyttö. Työpöytä. GNU Free Documentation License. Sisäänkirjautuminen. Yläpaneelissa on kolme valikkoa. Paneelit ja valikot

ATK tähtitieteessä. Osa 1 - Linux. 11. syyskuuta 2014

SCI-A0000 Johdatus opiskeluun (2 op) IT-osuus Luento 2

Käyttöjärjestelmät: prosessit

Sekalaisia selvennyksiä

Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla

Perusteet. Pasi Sarolahti Aalto University School of Electrical Engineering. C-ohjelmointi Kevät Pasi Sarolahti

Terminaali tutuksi. Linux ja komentorivin hallinta. Lappeenrannan teknillinen yliopisto 2015 Annika Ikonen, Timo Hynninen ja Erno Vanhala

Edico Lite ja S Käyttöohje istunnon pitäjälle ja kutsutulle

Unix-perusteet. Tiedosto-oikeudet

Sanoma Pro -oppimisympäristön käyttäjätietojen päivitysohjelman (PSFTP) asennus ja käyttö

Käyttöohje. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Windows Server 2012 asentaminen ja käyttöönotto, Serverin pyörittämisen takia tarvitaan

Linux-virtuaalipalvelimen ylläpito

2 Konekieli, aliohjelmat, keskeytykset

Visma Avendon asennusohje

Linux ylläpitäjän opas. Tärkeimmät komennot, logit ja muuta hömppä *^_^* by Hannu Laitinen ETA14KT

Unix-kurssi, harjoitustehtävät

Solteq Tekso v Versiopäivitysohje.

Sisällys. Johdatus Linuxiin/Unixiin: Osa 4. Arkistointi ja pakkaus. Hakemistojen ja tiedostojen arkistointi ja pakkaus.

Invalidiliiton Järvenpään koulutuskeskus. KOMENTORIVI JA KOMENNOT Windows- ja Linux-ympäristöissä

Octave-opas. Mikä on Octave ja miksi? Asennus

Lupa opetuskäyttöön pyydettävä. Näppäimistö. Kohdistimen ohjausnäppäimistö. Funktionäppäimistö. Kirjoitusnäppäimistö

ATK tähtitieteessä. ATK-osuuden jälkeen alkaa varsinainen tutkimusprojekti. Lisätietoa myöhemmin.

ATK tähtitieteessä. Aikataulu. Käyttöjärjestelmistä. Varoitus!

8. Näppäimistöltä lukeminen 8.1

1.1 Käsiteltävät asiat:

Terminaali-ohjelman käyttö - 1

JAKELUPISTE KÄYTTÖOHJE 2/6

Unix-kurssi, harjoitustehtävät

1 PALKANLASKENTA, TYVI VUOSI-ILMOITUS

12. Näppäimistöltä lukeminen 12.1

MicroStation V8i-käyttöympäristö

SELVITYSRAPORTTI LABRA-VERKON MYSQL:n JA PHP:n KÄYTTÖÖNOTOSTA. Jarkko Kähkönen

Asteri Laskutus (Dos)

Sisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä

T Käyttöliittymäsuunnittelu. Tehtävä 1: Komentorivipohjainen käyttöliittymä

ARKIPÄIVÄN SUOMEA-ohjelma vaatii toimiakseen multimedia-pc:n, jossa on seuraavat tekniset ominaisuudet ja ohjelmat asennettuna.

Drupal-sivuston hallintaopas

AMIS-ohjelman käyttöohjeet

Linux - käyttöoikeudet

Ohjelmoinnin perusteet Y Python

Lääkärin Terveyskansio Lähettävän lääkärin ohje

Haka-palveluiden valvonta ja tilastointi AAIEye -työkalun avulla. Mika Suvanto, CSC

Selaimen ja Netikka-yhteyden asennus. Netikka.netin asennus

Ohjeistus yhdistysten internetpäivittäjille

ICT4TN Tehtävänanto

sivu 1 Verkkopäätteen muuttaminen Anvian uuteen tekniikkaan Ohje käy seuraaviin verkkopäätteisiin

Linux rakenne. Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat

Netti-Moppi oppimisympäristön oppilaan ohjekirja 0.1

Testitapaukset - Siirtoprotokolla

Määrittelydokumentti. Olutkortisto

Käyttäjän käsikirja. LIB 500 ja LIB 510 v Releasettelutyökalu Yleistä. ,NNXQDMRNDLOPRLWWDDHWWlNRKGHRQSlLYLWHWWlYl

Visma GATEWAY INSTALLER. asennusopas

TENNISVARAUSJÄRJESTELMÄ. OHJEKIRJA v.1.0

Korpusten käsittely clt131, P Luento 3

NAVITA BUDJETTIJÄRJESTELMÄN ENSIASENNUS PALVELIMELLE

1.1 Yleistä kurssista

TeleWell TW-LTE/4G/3G USB -modeemi Cat 4 150/50 Mbps

linux: Prosessit kill PID lopettaa prosessin PID, jos siihen on oikeudet Ctrl + c lopettaa aktiivisen prosessin L7: linux

IRC ja etäyhteydet IRC JA ETÄYHTEYDET

KÄYTTÖOHJE / Ver 1.0 / Huhtikuu Martat - KÄYTTÖOHJE Yhdistyksille 2017

Suvi Junes Tampereen yliopisto /Tietohallinto 2012

Ubuntu tunkkausta En US / Helsinki asennuksen jälkeen jotta loki5ac toimisi oikein Winen päällä.

Asteri Laskutus (Dos)

Simulaattorin asennus- ja käyttöohje

Käyttäjäistunnon poistaminen Pervasive.SQL:stä

5. HelloWorld-ohjelma 5.1

Kun tulostuksessa ilmenee muotoiluvirheitä

Visma Econet -ohjelmat ActiveX on epävakaa -virheilmoituksen korjausohjeet

Transkriptio:

UNIX-käyttöjärjestelmä Luento 2 Timo Savola <timo.savola@evtek.fi> 31. maaliskuuta 2006

Osa I Prosessit

Prosessien hierarkia Jokaisella prosessilla on numero (process ID, pid) Jokaisella prosessilla on vanhempi prosessi (parent process) init-prosessin numero on 1 ja se on kaikkien esi-isä Prosessit kuuluvat ryhmiin (process group) Ryhmän numero on sen johtajaprosessin numero Prosessiryhmä voi olla istunto (session) Istunnon numero on sen ryhmänjohtajan numero Sisäänkirjautuminen aloittaa uuden istunnon

Prosessin luonti Uusi prosessi luodaan kopioimalla vanha prosessi (fork) Prosessin omistamat resurssit kopioituvat (näennäisesti) Vanhasta prosessista tulee uuden prosessin parent-prosessi Molemmat prosessit jatkavat saman ohjelmakoodin suoritusta Ohjelma voi tunnistaa kumpi prosessi suorittaa sitä

Ohjelman suorittaminen Prosessi voi vaihtaa suoritettavaa ohjelmaa (exec) Vanha prosessi ei häviä, ainoastaan ohjelma muuttuu

Prosessin kuolema Mahdolliset syyt: Ohjelma loppuu (päättää lopettaa suorituksen) Ohjelma saa signaalin ja päättää loppettaa suorituksen Ohjelma saa tappavan signaalin Parent-prosessi saa tiedon kuolemasta Syy Paluukoodi Jos kuolevalla prosessilla on lapsiprosesseja, niiden uudeksi parentiksi tulee init-prosessi

Signaalit Yksinkertainen tapa viestiä prosessien välillä Mahdolliset kohteet: Prosessi Prosessiryhmä Kaikki prosessit paitsi init Mahdolliset lähettäjät/aiheuttajat: Prosessi Kerneli Mahdolliset seuraamukset kohdeprosessille: Ei huomioi signaalia Suoritaa signaalinkäsittelyfunktion Ohjelman suoritus keskeytyy toistaiseksi Ohjelman suoritus jatkuu (jos keskeytetty) Prosessi kuolee Muistin sisältö kirjoitetaan tiedostoon ja prosessi kuolee

Signaalit 28 standardia ennaltamääriteltyä signaalia HUP Hangup INT Interrupt KILL Kill (ehdoton) SEGV Segment violation PIPE Broken pipe TERM Terminate CHLD Child stopped or terminated CONT Continue STOP Stop (ehdoton)

Osa II Shell

Shell Shell on tavallinen ohjelma jolla on erityisasema UNIX-järjestelmän peruskäyttöliittymä: 1. Lue suoritettava komento 2. Suorita komento 3. Näytä lopputulos 4. Palaa kohtaan 1.

Shellit Jokainen käyttäjä voi valita mieleisensä shell-ohjelman Yleisiä shellejä: bash (Bourne Again Shell) zsh tcsh ksh (Korn Shell) POSIX määrittelee shellien perustoiminnallisuuden

Kirjautuminen Jokin ohjelma lukee käyttäjätunnuksen ja salasanan jostain: Konsoli Verkkoyhteys Selvitetään käyttäjän tiedot Käyttöoikeudet Shell-ohjelma Kotihakemisto Shell suoritetaan uudessa istunnossa

Terminaalit Mekanismi tiedon syöttämiseen ja tulostamiseen erilaisten resurssien avulla: Konsoli (monitori, näppäimistö) Sarjaportti Virtuaaliterminaalit Shell-istunto käyttää jonkinlaista terminaalia Konsolien tapauksessa shell käyttää sitä terminaalia miltä kirjautumisohjelma luki salasanan SSH-palvelimen tapauksessa ei ole fyysistä resurssia joten luodaan virtuaaliterminaali Ohjelmat käyttävät terminaaleja kuten avoimia tiedostoja Shellin käynnistämät ohjelmat perivät tiedostoviittaukset Standardit tulostusfunktiot kirjoittavat terminaaliin jne.

Komentorivi Shell tulostaa komentokehotteen ja odottaa komentoja Kehote voi sisältää kaikenlaista tietoa: Käyttäjän nimi (timos) Koneen nimi (shell) Työhakemisto (~ tarkoittaa kotihakemistoa) $ viittaa joissain shelleissä normaalikäyttäjään Käyttäjä syöttää ohjelman nimen ja mahdolliset parametrit Välilyönti toimii erottimena Shell luo lapsiprosessin ja suorittaa halutun ohjelman Shell tulostaa uuden komentokehotteen lapsiprosessin kuoltua

Komennot Komento voi olla: Nimi (ls) Polku (/bin/ls) Jos annetaan pelkkä nimi, ohjelmatiedosto etsitään järjestelmän ohjelmahakemistoista Ohjelman polun voi selvittää komennolla: which nimi

Polut / on hakemistoerotin Absoluuttiset polut alkavat /-merkillä Suhteelliset polut muutetaan absoluuttisiksi yhdistämällä ne työhakemistoon Poluissa voidaan käyttää erikoishakemistoja:. viittaa kyseiseen hakemistoon.. ylempään hakemistoon Esimerkkejä poluista (työhakemisto /users/hkunta/timos): tiedosto /users/hkunta/timos/tiedosto.. /users/hkunta../../.. / /bin/../etc /etc /.. / /bin/. /bin /./bin /bin Työhakemistossa oleva ohjelmatiedosto suoritetaan käyttämällä suhteellista polkua:./ohjelma

Hakemistokomentoja pwd kertoo nykyisen työhakemiston (Print Working Directory) ls listaa hakemiston sisällön (LiSt) ls ls polku... cd vaihtaa työhakemistoa (Change Directory) cd polku mkdir luo uuden hakemiston (MaKe DIRectory) mkdir polku... rmdir poistaa tyhjän hakemiston (ReMove DIRectory) rmdir polku...

Prosessien käsittely ps-komento listaa käynnissä olevia prosesseja ps u näyttää kyseisen istunnon prosessit ps ux näyttää kaikki käyttäjän prosessit ps aux näyttää kaikki koneen prosessit kill-komento lähettää prosessille signaalin Oletuksena lähetetään TERM-signaali Kohdeprosessi määritellään kirjoittamalla sen numero (pid) Signaalin voi valita kirjoittamalla sen symbolisen nimen tai numeron muodossa -signaali Esimerkkejä: kill 1000 kill -INT 1000 killall-komento lähettää signaalin kaikille samannimisille prosesseille killall -KILL bash

Komentorivin toimintoja (bash) Navigointi Liiku komentorivillä Home Ctrl-A Rivin alkuun End Ctrl-E Rivin loppuun Historia Selaa vanhoja komentorivejä Ctrl-R Etsi vanhaa komentoriviä hakusanalla Täydennys Tab Täydentää komennon nimen tai listaa vaihtoehdot

Istunnon lopetus Shellistä poistutaan exit-komennolla tai painamalla Ctrl-D tyhjällä komentorivillä Istunto voidaan lopettaa myös logout-komennolla