Linux- järjestelmät 206101312
Yhteystiedot E-mail: tomi.pahula@kyamk.fi Puhelin: 044-7028249 Työhuone: BK0129, ICT-laboratorio
Luennot Harjoitukset Harjoitustyö Seminaarityö Koe Kurssin toteutustapa
Asennus Fedora Käyttö Fedora Yleinen ylläpito Fedora Debian Opiskelijoiden omat toiveet Kurssin sisältö
Kurssin materiaalia LPI Linux Certification in a Nutshell http://my.safaribooksonline.com/0596005288 LINUX: Rute User's Tutorial and Exposition 1.0 http://rute.2038bug.com/index.html.gz Wikibooks http://en.wikibooks.org/wiki/lpi_linux_certification Linux Wiki suomenkielinen http://linux.fi/wiki/etusivu Learn Linux, 101: A roadmap for LPIC-1 https://www.ibm.com/developerworks/library/l-lpic1-map/ index.html The Linux Documentation Project http://www.tldp.org löytyy paikallisesti tai linkattuna osoitteesta: http://linux.ictlab.kyamk.fi
Linuxin historia Ensimmäinen versio lokakuussa -91 Tarvittiin kuitenkin Minixiä asennusvaiheessa Versio 1.0 maaliskuu 1994 Versio 2.4 tammikuu 2001 Versio 2.6 joukukuu 2003 Versio 3.0 heinäkuu 2011 Versio 4.0 huhtikuu 2015 Linkkejä http://www.cs.helsinki.fi/u/kerola/tkhist/k2002/alustukset/opensource/seminaari.pdf http://www.computerhope.com/history/unix.htm http://en.wikipedia.org/wiki/history_of_linux
Linuxin rakenne Kernel (ydin) Linuxin runko http://www.kernel.org https://en.wikipedia.org/wiki/linux_kernel Kernelin ympärille rakennettu jakelupaketti eli distribuutio Distribuutiota esim. Redhat EL, CentOS, Fedora, Debian, Ubuntu, Suse, Mint, Archlinux Distribuutiot: http://www.distrowatch.com Tällä hetkellä Linuxin graafinen käyttöliittymä on toteutettu X:n päälle (xorg/xfree86) Ikkunointimanageri Esim. fvwm Työpöytäohjelmisto Esim. Gnome ja KDE
Lisenssit Yleisin Linuxin lisenssi GPL http://www.pcuf.fi/~rak/dl/gpl2/gpl_fi.html Muita lisenssejä LGPL (Lesser GPL) http://www.gnu.org/copyleft/lesser.html BSD, MPL, NPL... http://www.gnu.org/licenses/license-list.html
Linuxin komentorivin tehokas käyttö Esimerkkikomentoja ls -la Listaa kaikki tiedostot cd Vaihtaa hakemistoa (tässä tapauksessa kotihakemistoon) Ympäristömuuttujat voimaan esim. export muuttuja Komentorivillä voidaan liikkua nuolinäppäimillä LPI-kirja: GNU and Unix Commands (Topic 1.3) obj 1 RUTE: Luvut 2.6, 4 ja 9
Linuxin tekstivirtojen käsittely Voidaan muuttaa, yhdistellä, poistaa tekstiä Esimerkkikomentoja cut Tulostaa halutut kohdat tekstitiedostosta nl Numeroi rivit tekstitiedostosta The Stream Editor, sed Monipuolinen tekstivirtojen muokkaaja Esim. Poistetaan rivit 3-5 tiedostosta: sed '3,5d' tiedosto LPI-kirja: GNU and Unix Commands (Topic 1.3) obj 2 RUTE: Luku 8
Linuxin tiedostonkäsittely Voidaan kopioida, siirtää, luoda ja poistaa tiedostoja sekä hakemistoja Esimerkkikomentoja cp -r /etc. Kopioi etc-hakemiston paikalliseen hakemistoon mv tiedosto ~/ Siirtää tiedoston käyttäjän kotihakemistoon rm -r hakemisto Poistaa hakemiston ja sen alla olevat hakemistot sekä tiedostot rmdir hakemisto Poistaa hakemiston LPI-kirja: GNU and Unix Commands (Topic 1.3) obj 3 RUTE: Luku 4
Linuxin tiedostonkäsittely Villikortit * kaikki käyvät? merkin tilalla voi olla mikä tahansa merkki [a-z] kaikki kirjaimet välillä a-z [!a-z] kaikki kirjaimet, jotka eivät ole välillä a-z LPI-kirja: GNU and Unix Commands (Topic 1.3) obj 3 RUTE: Luku 4
Linuxin virtojen, putkitusten ja uudelleenohjausten käyttö Putkitus ls -la less Listaa tiedostot ja putkittaa ne less-komennolle Uudelleenohjaus cmd > file (stdout tiedostoon) cmd 1> file (stdout tiedostoon) cmd 2> file (stderr tiedostoon) cmd > file 2>&1 (stdout ja stderr tiedostoon) cmd >> file (stdout tiedostoon edellisen tiedoston perään) LPI-kirja: GNU and Unix Commands (Topic 1.3) obj 4 RUTE: Luku 8
Linuxin prosessien luonti, seuranta ja lopettaminen Esimerkkikomentoja ps aux Näyttää kaikki prosessit top Reaaliaikainen prosessilistaus kill -9 101 Lopettaa prosessin 101 välittömästi (vahvin komento) bg Laittaa ohjelman taustaprosessiksi LPI-kirja: GNU and Unix Commands (To Pic 1.3) obj 5 RUTE: Luku 9
Linuxin prosessien prioriteettien muokkaus Esimerkkikomentoja nice komento & Käynnistää ohjelman taustalle oletusprioriteetilla (10) nice --10 komento Käynnistää ohjelman -10 prioriteetilla (vain root) renice 19 101 Muuttaa käynnissä olevan 101 prosessin prioriteetiksi 19 LPI-kirja: GNU and Unix Commands (Topic 1.3) obj 6 RUTE: Luku 9.7
Linuxin regular expressionit Esimerkkikomentoja grep '^Linux' tiedosto1 Näyttää tiedostosta kaikki alkavat rivit, joissa on merkkijono Linux grep '[0-9] [0-9] [0-9]' tiedosto1 Näyttää kaikki rivit tiedostosta, joissa on kolme numeroa grep 'abc*' tiedosto1 Näyttää kaikki rivit, joissa on abc, abcc, abcd, abccc jne LPI-kirja: GNU and Unix Commands (Topic 1.3) obj 7 RUTE: Luvut 5 ja 8
Fedoran asennus Asennus on nykyään helppo toimenpide Asennus voidaan tehdä Windowsin rinnalle Asennusohjeita löytyy useita http://docs.fedoraproject.org/install-guide/ http://linux.fi/wiki/fedora/asennus http://linux.fi/wiki/fedora/asennus/viimeistely
Linuxin levyosiot ja tiedostojärjestelmät Kaikki levyosiot löytyvät /dev-hakemiston alta Esimerkkejä Ensimmäinen kovalevy (IDE/SATA/SCSI) /dev/sda Aikaisemmin myös hdx-tunnukset IDE-laitteilla Ensimmäinen primaariosio on /dev/sda1 Levyosiot tehdään fdisk-ohjelmalla Levyosiot formatoidaan esim. mkfs -t ext2 /dev/sda6 SWAP-osio tehdään esim. komennolla: mkswap /dev/sda10 LPI-kirja: Devices, Linux FS... (Topic 2.4), Obj. 1 RUTE: luku 19
Linuxin tiedostojärjestelmien tarkkailu Linuxin tiedostojärjestelmä on yleensä ext2/ext3 Esimerkkikomentoja df Nähdään osioiden vapaa tila du Nähdään hakemistojen ja tiedostojen käyttämä tila fsck /dev/sda6 Tarkistetaan /dev/sda6 osio LPI-kirja: Devices, Linux FS... (Topic 2.4) Obj. 2 RUTE: luku 19
Linuxin tiedostojärjestelmien mounttaus Käynnistyksen yhteydessä mountattavat osiot määritellään /etc/fstab-tiedostossa Tiedostojärjestelmän sisältävät osiot mountataan Esimerkkikomentoja mount /dev/sda2 /tmp Mountataan /dev/sda2 osio /tmp-hakemistoon umount /dev/cdrom Poistetaan mounttaus cd-asemasta (tarvitaan levyä poistettaessa) LPI-kirja: Devices, Linux FS... (Topic 2.4) Obj. 3 RUTE: luku 19
Linuxin tiedostojärjestelmien quota Quotaa käytetään rajoittamaan käyttäjän levytilaa Esimerkkikomentoja quota -uv kayttaja Näyttää kayttajan quota-tilanteen quotaon Laittaa quotan päälle edquota -u kayttaja Editoidaan kayttaja quota-tietoja LPI-kirja: Devices, Linux FS... (Topic 2.4) Obj. 4 RUTE: ei käsittele, katso Quota mini-howto
Linuxin tiedosto-oikeudet Linuxin tiedosto-oikeudet määritellään 3:lla tasolla Käyttäjä, ryhmä ja muut Esimerkkikomento chmod a+x tiedosto Määrittää tiedoston kaikille ajettavaksi LPI-kirja: Devices, Linux FS... (Topic 2.4) obj. 5 RUTE: luku 14
Linuxin tiedoston omistusoikeudet Linuxin tiedoston omistusoikeudet määritellään käyttäjä ja ryhmätasolla Esimerkkikomento chown kayttaja:ryhma tiedosto Määrittää tiedoston omistusoikeudet kayttaja nimiselle käyttäjälle ja ryhma nimisellä ryhmälle LPI-kirja: Devices, Linux FS... (Topic 2.4) obj. 6 RUTE: luku 11
Linuxin tiedostojen linkkaus Linuxin tiedostojen linkkaus Käytetään kovia ja symbolisia linkkejä Kovia linkkejä voidaan käyttää vain tiedostojärjestelmän sisällä Esimerkkikomento ln -s tiedosto file Tekee symbolisen linkin nimeltä file, joka osoittaa tiedostonimiseen tiedostoon tai hakemistoon LPI-kirja: Devices, Linux FS... (Topic 2.4) obj. 7 RUTE: luku 15
Linuxin tiedostojen paikat Linuxin juurihakemisto on / Sen alla on kaikki muut hakemistot Voi olla vain yksi osio, joka on / Yleensä tehdään kuitenkin hakemistoille omat osiot Esim. /usr, /home, /var ja /tmp Swapilla myös oma osio (tyyppi 82) Tiedostoja voi etsiä komennoilla which, find ja locate LPI-kirja: Devices, Linux FS... (Topic 2.4) obj. 8 RUTE: luvut 4.14, 17 ja 35
Linuxin käynnistys Linuxin käynnistys lilo tai grub Fedora ja muut nykyiset distribuutiot käyttävät oletuksena grubia Esimerkkikomento LILO: linux root=/dev/sda5 Käynnistää Linuxin käyttäen /dev/sda5-root-osiona Käynnistysvaiheessa voidaan määrittää useita muitakin parametreja LPI-kirja: Boot, Initilization... (Topic 2.6), Obj 1 RUTE: luvut 21.48, 42.5.1, 31 ja 32 BootPrompt-HOWTO
Linuxin runlevelit ja sammutus Linuxin runlevelit Numeroina 0-6 Normaalisti 3 (multiuser) Oletus-runlevel määritellään /etc/inittab-tiedostossa Poistumassa systemd-palvelun myötä Esimerkkikomentoja init 1 Linux menee yhden käyttäjän tilaan shutdown -r now Uudelleen käynnistää koneen välittömästi LPI-kirja: Boot, Initilization... (Topic 2.6), Obj 2 RUTE: luku 32
Linuxin paikallinen dokumentaatio Linuxissa on kolmenlaista dokumentaatiota Man-sivut /usr/doc (Fedora: /usr/share/doc) Info-sivut Esimerkkikomentoja man emacs Näyttää emacs-editorin man-dokumentaation info emacs Näyttää emacs-editorin info-dokumentaation LPI-kirja: Dokumentation (Topic 1.8), Obj 1 RUTE: luvut 4.7 ja 16
Linuxin Internet-dokumentaatio Suurin osa Linuxin dokumentaatiota on saatavilla Internetistä Ohjelmistojen kotisivut http://www.tldp.org Usenet Newsgroups http://www.google.com (groups) Postituslistat LPI-kirja: Dokumentation (Topic 1.8), Obj 2 RUTE: luku 13
Linuxin dokumentaation kirjoittaminen Voidaan tehdä omalle ohjelmalle man-sivu Helpointa on kopioida jokin valmis man-sivu ja editoida siitä oma LPI-kirja: Dokumentation (Topic 1.8), Obj 3 RUTE: -
Linuxin käyttäjätuki Vaatii tietoa ja hyviä hermoja :) LPI-kirja: Dokumentation (Topic 1.8), Obj 4 RUTE: -
Linuxin käyttäjien hallinta Linuxin käyttäjätiedot Tunnukset: /etc/passwd Salasanat: /etc/shadow Esimerkkikomentoja useradd kayttaja Tekee kayttaja-nimisen käyttäjän passwd kayttaja Määrittää kayttajan salasanan (vain root) LPI-kirja: Administrative Tasks (Topic 2.11), Obj. 1 RUTE: luku 11
Linuxin käyttöympäristön muokkaaminen Linuxin käyttöympäristön asetukset kaikille käyttäjille sijaitsevat /etc/profile-tiedostossa Vastaavat Bash-shell-asetukset /etc/bashrctiedostossa Uuden käyttäjän oletusasetukset (tiedostot) sijaitsevat /etc/skel-hakemistossa LPI-kirja: Administrative Tasks (Topic 2.11), Obj. 2 RUTE: luvut 11 ja 20.8
Linuxin lokitiedostot Linux käyttää (r)syslog-palvelua lokien muodostamiseen Asetukset /etc/syslog.conf- tai /etc/rsyslog.conf tiedostossa Tärkein lokitiedosto on /var/log/messages Lokitiedostot voivat kasvaa suuriksi Kannattaa käyttää logrotate-ominaisuutta Tallentaa yleensä neljän viikon lokit Asetukset /etc/logrotate.conf LPI-kirja: Administrative Tasks (Topic 2.11), Obj. 3 RUTE: luvut 21.4.8 ja 21.4.9
Linuxin ylläpitotoimintojen automatisointi Linux ylläpitotoimien automatisointiin käytetään pääasiassa cron-palvelua Asetukset /etc/crontab-tiedostossa Lisäksi /etc/cron.d, /etc/cron.daily jne. Voidaan määrittää ajettavia ohjelmia tiettyyn aikaa Esimerkiksi varmistukset Ajastukseen löytyy myös at-komento LPI-kirja: Administrative Tasks (Topic 2.11), Obj. 4 RUTE: luku 37
Linuxin varmistukset Varmistuksia kolmea tyyppiä Täysi-, differentiaali- ja inkrementaalivarmistus Linuxissa varmistukseen voidaan käyttää mm. nauha-, levyke-, zip-, tai kovelevyasemaa Laitetunnuksia /dev/st0, /dev/ft0, /dev/fd0 ja /dev/hdd Varmistukseen käytetään yleensä tar- ja nauhoilla mt-komentoja Esim. tar cvf /dev/st0 /var LPI-kirja: Administrative Tasks (Topic 2.11), Obj. 5 RUTE: luvut 4.17 ja 18
Kellonajan hallinta Linuxin kellonajan hallintaan käytetään NTPprotokollaa (Network Time Protocol) NTP-palvelin on ntpd, jolle määritellään ylemmäntason palvelin ja verkot, joihin jaetaan kellonaikaa Ntpdate-komennolla voidaan hakea kellonaika manuaalisesti Hwclock-komennolla voidaan tallentaa kellonaika RTC-piirille.
Linux ja hardware Linuxia käytettäessä pitää yleensä tuntea kohtuullisen hyvin PC-laitetekniikka Linuxin kannalta tärkeitä BIOS-asioita Päiväys ja kellonaika Boottaavat laitteet Kovalevyn asetukset Kokorajoitusten, kuten sylinterin rajan rikkominen IDE/ACHI/RAID-moodin vaikutus Muutamia Linux-laitenimiä ja DOS-vastineet /dev/ttys0 (COM1, I/O 3f8h, IRQ 4) /dev/lp0 (LPT1, I/O 378h, IRQ 7) LPI-kirja: Hardware Architecture (Topic 1.1), Obj. 1 RUTE: luvut 3 ja 42
Linux ja verkkokortit Verkkokorttien asennus Vanhoissa ISA-korteissa jumpperit tai NVRAMasetukset Määriteltävä BIOS-asetuksista vapaiksi keskeytys ja mahdollinen muistialue PCI- ja PCIe-kortit varaavat automaattisesti resurssit Vapaat järjestelmäresurssit voi katsoa komennoilla cat /proc/interupts cat /proc/dma cat /proc/ioports lspci lsusb LPI-kirja: Hardware Architecture (Topic 1.1), Obj. 2 RUTE: luku 42.6.3
Linux ja SCSI SCSI-laitteita käytetään yleisesti palvelimissa ja siten niiden tunteminen on tärkeää Linuxjärjestelmää asennettaessa ja ylläpidettäessä Nykyisissä Linux-versioissa IDE/SATA laitteet näkyvät SCSI-laitteina SCSI-laitteita on eri nopeuksia ja erilaisilla kaapeloinneilla toteutettuja Esimerkki Linux SCSI-laitenimiä /dev/sda (ID0), /dev/sdb (ID1), /dev/st0 (ID6) LPI-kirja: Hardware Architecture (Topic 1.1), Obj. 2 RUTE: luku 42.6.9
Linux, modeemit ja äänikortit Linuxissa modeemin liittäminen tapahtuu sarjaliitännän kautta Helpoimpia tapauksia ovat ns. rautamodeemit Windows-modeemien kanssa voi tulla ongelmia Linuxissa tuetut Win-modeemit http://www.linmodems.org Linuxissa toimivat yleisimmät äänikortit Voidaan joutua lisäämään /etc/modules.conf-tiedostoon äänikortin vaatimia asetuksia LPI-kirja: Hardware Architecture (Topic 1.1), Obj. 3 RUTE: luvut 42.6.1, 46.2.12, 42.7, 34 ja 41
Linuxin levyosioinnin suunnittelu Suunnittelussa otettava huomioon monia asioita Käytettävä levytila, systeemin koko ja käyttötarkoitus sekä varmuuskopioiden tekeminen Rajoitetun tilan systeemeissä vähemmän osioita Suuremmissa systeemeissä useita osioita Boot-osio pitäisi pyrkiä pitämään alle 1024 sylinterin SWAP-osio koko 1-3 muistinmäärä Voidaan käyttää myös SWAP-tiedostoa lisänä LPI-kirja: Linux Installation and... (Topic 2.2), Obj. 1 RUTE: luku 19
Linuxin boot managerin asennus Linuxin käynnistyksessä käytetään lilo (Linux Loader) tai GRUB (GRand Unified Bootloader) ohjelmaa Voivat käynnistää eri käyttöjärjestelmiä Boot manager voi sijaita useammassa eri paikassa MBR:ssä eli boottilohkolla tai root-osion alussa Asetukset /etc/lilo.conf- tai /etc/grub.conf-tiedostossa Esimerkkikomentoja lilo -v Asentaa lilon ja antaa asennuksesta enemmän tietoa LPI-kirja: Linux Installation and... (Topic 2.2), Obj. 2 RUTE: luku 31
Linux-ohjelmien asennus sorsista Linuxin ohjelmien sorsapaketit tar.gz tai tar.bz2 muodossa Pakettien purkaminen tar zxfv paketti.tar.gz tar jxfv paketti.tar.bz2 Kääntäminen configure Voidaan antaa myös parametreja make Varsinainen kääntäminen alkaa esim. make all komennolla LPI-kirja: Linux Installation and... (Topic 2.2), Obj. 3 RUTE: luku 24
Linuxin jaettujen kirjastojen hallinta Linuxissa käytetään jaettuja kirjastoja muistin ja levytilan säästämiseksi Jaettuihin kirjastoihin liittyvät komennot ldd ohjelma Kertoo ohjelman käyttämät kirjastot ldconfig Päivittää /etc/ld.so.cache-tiedostoa Asetukset /etc/ld.so.conf-tiedostossa LPI-kirja: Linux Installation and... (Topic 2.2), Obj. 4 RUTE: luku 23
Linuxin pakettienhallinta: Debian Dpkg on Debian Linuxin käyttämä pakettienhallinta Esimerkkikomentoja dpkg -i paketti_4.3-2.deb Asentaa paketti-nimisen paketin apt-get install paketti Asentaa paketti-nimisen paketin Hakee verkosta uusimman paketin dselect Menupohjainen pakettien asennustyökalu LPI-kirja: Linux Installation and... (Topic 2.2), Obj. 5 RUTE: luku 24
Linuxin pakettienhallinta: RPM Fedoran käyttämä pakettienhallinta Käyttää myös mm. RHL, RHEL ja Mandrake Linux Esimerkkikomentoja rpm -Uvh paketti-4.3-2.i386.rpm Asentaa paketti-nimisen paketin rpm -e paketti-4.3-2 Poistaa paketti-nimisen paketin Fedoraan on saatavissa myös ohjelmat Graafinen työkalu Package Manager Yum (Yellow dog Updater, Modified) Apt-get DNF (Korvannut yum-ohjelman Fedora 22:ssa) LPI-kirja: Linux Installation and... (Topic 2.2), Obj. 6 RUTE: luku 24
Linuxin kernel-moduulien hallinta Linuxin moduulit ovat objektitiedostoja (.o) tai (.ko) Ne sijaitsevat esim. hakemistossa /lib/modules/2.6.35 Moduulit jaotellaan tyypeittäin (block, net, scsi...) Esimerkkikomentoja lsmod Listaa muistissa olevat modulit insmod moduuli Asentaa moduuli-nimisen moduulin modprobe moduuli Asentaa moduuli-nimisen moduulin rmmod moduuli Poistaa moduuli-nimisen moduulin muistista LPI-kirja: Linux Installation and... (Topic 1.5), Obj. 1 RUTE: luku 42
Linuxin kernelin kääntäminen Linuxin kernelin kääntäminen nykyään harvinaisempi toimenpide Distribuutioissa käytetään modulaarisia kerneleitä Nykyisillä koneilla nopea toimenpide Versionumerot Parilliset tuotantoversioita, parittomat kehitysversioita Esimerkkikomentoja Make menuconfig Käynnistää menupohjaisen konfigurointityökalun make all; make modules_install LPI-kirja: Kernel (Topic 1.5), Obj. 2 RUTE: luku 42
Linuxin tekstieditori vi Löytyy lähes jokaisesta Linux-distribuutiosta Hankala käyttää :) Komento- ja editointitila Suositeltavaa käyttää muita editoireita (nano, pico, joe) Esimerkkikomentoja vi tiedosto Käynnistää vi:n ja avaa tiedoston :q! Poistuu vi:stä ilman kysymyksiä LPI-kirja: Text-Editing, Processing... (Topic 1.7), Obj. 1 RUTE: luku 6
Linuxin tulostuksen hallinta Linuxin tulostukset hoitaa yleensä lpd tai CUPS Käytetään PostScript-kieltä Esimerkkikomentoja lpq Näyttää tulostusjonon tilanteen lprm Poistaa tulostustyön jonosta lpc Hallitsee tulostusjonojen toimintaa LPI-kirja: Text-Editing, Processing... (Topic 1.7), Obj. 2 RUTE: luku 21
Linuxissa tulostaminen Linuxissa tulostamiseen käytetään lpr-komentoa Voidaan tulostaa teksti- ja PostScript-tiedostoja Esimerkkikomentoja lpr /etc/profile Tulostaa profile-tiedoston man -t fdisk lpr Tulostaa fdisk-ohjelman man-sivun LPI-kirja: Text-Editing, Processing... (Topic 1.7), Obj. 3 RUTE: luku 21.6
Linuxin tulostimien asennus Linuxin tulostimet määritellään lpd:tä käytettäessä /etc/printcap-tiedostossa (Fedoran oletus CUPS) Määritellään mm. suodatin, tulostinlaite (esim. /dev/lp0) Fedorassa kannattaa käyttää system-config-printer-ohjelmaa asetusten tekemiseen Tulostin asetukset CUPS:ia käytettäessä /etc/cups/printer.conf Suodattimet (filter) Tulostus voidaan käsitellä filter-ohjelmalla Voidaan käyttää myös Ghostscript-ohjelmaa tulostustiedoston muodostamiseen LPI-kirja: Text-Editing, Processing... (Topic 1.7), Obj. 4 RUTE: luku 21.9.2
Linuxin shellin mukautus Linuxin shelleissä voidaan antaa mm. komentoja ja tehdä ohjelmiakin Shellit jakautuvat kahteen lohkoon Bourne-johdannaiset (sh ja bash) C-shellit (csh, tcsh, zsh ja ksh) Shellien ominaisuuksia Muuttujat Esim. kurssi=a275022 Aliakset Esim. alias rm='rm -f' Funktiot Esim. lsps () { ls -l; ps; } LPI-kirja: Shells, Scripting... (Topic 1.9), Obj. 1 RUTE: luku 21.9.2
Linuxin skriptien kirjoittaminen Linuxin skriptien kirjoittaminen tapahtuu tekstieditorilla Sisältää tarvittavat komennot Skriptien ajaminen sh skriptin_nimi Laitetaan scripti ajettavaksi chmod a+x skriptin_nimi./skriptin_nimi Määritellään skriptin käsittelemä ohjelma skriptin alkuun Esim. #!/bin/bash LPI-kirja: Shells, Scripting... (Topic 1.9), Obj. 2 RUTE: luvut 20, 33.2 ja 36.2.10
Linuxin skriptien kirjoittaminen Linuxin skripteille voidaan antaa myös erilaisia oikeuksia Mahdollisuus SUID- tai GUID-skripteihin Esim. Rootin oikeudet skriptille Esimerkki bash-komentoja break Keskeyttää skriptin ajon echo Tulostaa merkkijonon if Ehtolause LPI-kirja: Shells, Scripting... (Topic 1.9), Obj. 2 RUTE: luvut 20, 33.2 ja 36.2.10
Linux ja Xfree86/xorg:n asennus X toteutettu asiakas/palvelin mallin pohjalta Mahdollisuus X:n käyttöön verkon kautta X asennettaessa tarvitaan tietää seuraavia asioita Näytönohjaimen tyyppi Asennusohjelmat tunnistavat automaattisestikin Monitorin tyyppi Sama kuin edellä X voidaan asentaa erilaisista paketeista LPI-kirja: X (Topic 1.9), Obj. 1 RUTE: luku 43
Linux ja Xfree86/xorg:n asennus XFee86:n konfigurointiin useita työkaluja Oletustyökalut: xf86config, XF86Setup ja xf86cfg Fedorassa on ollut myös system-config-display Nvidian ja AMD/ATI:n näytönohjaimilla omat ohjelmat Xfree86 asetukset /etc/x11/xf86config-tiedossa Sisältää mm. näppäimistön, hiiren, monitorin, näytönohjaimen ja fonttien asetukset Xorg-palvelinta käytettäessä /etc/x11/xorg.conf-tiedosto Nykyisissä Linux-distribuutioissa ei oletuksena asetustiedostoa LPI-kirja: X (Topic 1.9), Obj. 1 RUTE: luku 43
Linux ja xdm/gdm XDM/GDM-palvelua käytetään paikallisten ja verkosta tapahtuvien yhteydenottojen käsittelyyn Asetustiedostot hakemistossa /etc/x11/xdm tai gdm Käynnistetään komennoilla: xdm tai gdm Voidaan käynnistää myös automaattisesti vaihtamalla runleveliä. Laitetaan runleveliksi 5 LPI-kirja: X (Topic 1.9), Obj. 2 RUTE: -, katso man xdm
Linux ja X:n sekä X-ohjelmien lopetus Mikäli X kaatuu voidaan mennä virtuaalikonsoliin Näppäinyhdistelmä Ctrl-Alt-Fx (x=2 6) Paluu näppäinyhdistelmällä Ctrl-Alt-F7 Voidaan lopettaa X näppäinyhdistelmällä Ctrl-Alt- Back_space X-Ohjelman lopettaminen (tyypillisesti netscape) Katsotaan prosessinumero ps- tai top-komennolla Lopetaan prosessi kill-komennolla LPI-kirja: X (Topic 1.9), Obj. 3 RUTE: -
Linux ja X:n muokkaus X:n käynnistys tapahtuu startx-skiptillä Kutsuu xinit-komentoa Sen asetukset /etc/x11/xinit/xinitrc-tiedostossa Xinitrc-tiedossa määritellään käynnistyvät ohjelmat kuten ikkunamanageri Linuxin X:n perusikkunointimanageri on twm Sen asetukset /etc/x11/twm/system.twmrc-tiedostossa X:n Etäyhteydet DISPLAY-muuttujalla Esim. export DISPLAY=koneen_nimi:0.0 Suositeltavampaa käyttää ssh:ta LPI-kirja: X (Topic 1.9), Obj. 4 RUTE: -, katso xinit-, startx- ja xdm-ohjelmien man-sivut
Linux ja verkot Linuxin kuten muidenkin unixien verkkoyhteydet perustuvat TCP/IP:n Olennaista ymmärtää protokollat (TCP, IP, UDP jne.) Palvelut porttinumeroiden takana Esim. telnet tcp/23 ja http 80/tcp Esimerkkikomentoja dig www.kyamk.fi Antaa www.kyamk.fi koneen DNS-tiedot traceroute www.kotka.fi Jäljittää reitin www.kotka.fi koneelle LPI-kirja: Networking Funda... (Topic 1.12), Obj. 1 RUTE: luvut 25 ja 26
Linux ja verkon konfigurointi Muutamia asetustiedostoja /etc/hosts (nimi ja IP-numeroparit) /etc/resolv.conf (nimipalvelin asetukset) /etc/nsswitch.conf (nimen selvityksen asetukset) Esimerkkikomentoja host www.kyamk.fi Antaa www.kyamk.fi koneen IP-osoitteen ifconfig eth0 down Sulkee eth0-liitännän route add default gw 192.168.0.1 eth0 Määrittää oletusreitin, joka löytyy eth0 liitetystä verkosta LPI-kirja: Networking Funda... (Topic 1.12), Obj. 3 RUTE: luvut 25 ja 27
Linux ja PPP Linuxin PPP-palvelu toteutetaan pppd-ohjelmalla Käytetään modeemi- ja sarjakaapeliyhteyksillä Soittoon käytetään yleensä chat-skriptejä Asetustiedostot /etc/ppp-hakemistossa options (asetukset) chap-secrets ja pap-secrets (authentikointiasetukset) Esimerkkikomentoja pppd /dev/ttys0 115200 Käynnistää PPP-yhteyden COM1-porttiin LPI-kirja: Networking Funda... (Topic 1.12), Obj. 4 RUTE: luku 41
Linux ja inetd Linuxin inetd-käynnistää verkkopalveluja Asetukset /etc/inetd.conf Palveluita mm. telnet ja finger Fedora käyttää parannettua xinetd-palvelua Mahdollistaa palvelunestohyökkäysten torjunnan Asetukset /etc/xinetd.conf-tiedostossa ja /etc/xinetd.d/-hakemistossa Palveluiden käyttöä voidaan rajoittaa Asetukset /etc/hosts.allow ja /etc/hosts.deny Esimerkkikomentoja service xinetd restart Käynnistää uudelleen xinetd-palvelun LPI-kirja: Networking services (Topic 1.13), Obj. 1 RUTE: luku 29
Linux ja sendmail Sendmail yleisin sähköpostin käsittelijä Unixissa Asetukset /etc/mail/sendmail.cf Konfigurointi vaikeata Ei kannata muokata suoraan, vaan /etc/mail-hakemiston muita tiedostoja Sähköpostialiakset Määritellään /etc/aliases-tiedostossa Otetaan käyttöön newaliases-komennolla Postijonon tarkkailu mailq-komennolla LPI-kirja: Networking services (Topic 1.13), Obj. 2 RUTE: luku 30
Linux ja Apache Internetin yleisin WWW-palvelin Asetukset Fedorassa /etc/httpd/conf-hakemistossa Tärkein asetustiedosto: /etc/httpd/conf/httpd.conf Asetusmuutosten jälkeen uudelleen käynnistys komennolla: service httpd restart Lokitiedostot hakemistossa: /var/log/httpd LPI-kirja: Networking services (Topic 1.13), Obj. 3 RUTE: luku 36
Linux, NFS ja SMB NFS-palvelulla jaetaan hakemistoja lähinnä UNIX-ympäristössä Asetukset /etc/exports-hakemistossa Otetaan käyttöön mount-komennoilla Esim. mount -t nfs palvelin:/home /mnt/ SMB-palvelulla jaetaan hakemistoja lähinnä Windows-ympäristössä Asetustiedostot /etc/smb.conf tai /etc/samba/smb.conf LPI-kirja: Networking services (Topic 1.13), Obj. 4 RUTE: luvut 28 ja 39
Linux ja DNS Linuxin DNS-palvelut toteutetaan bindohjelmalla, jota kutsutaan myös named:ksi Asetukset /etc/named.conf-tiedostossa ja /var/namedhakemistossa Chroot-ympäristössä /var/named/chroot/var/named Asetusmuutosten jälkeen uudelleen käynnistys komennolla: service named restart LPI-kirja: Networking services (Topic 1.13), Obj. 5 RUTE: luvut 27 ja 40
Linux ja tietoturvan tarkistustoimenpiteet Tietoturvaan liittyviä asetuksia ja toimenpiteitä Palveluiden käyttöoikeudet /etc/hosts.allow- ja /etc/hosts.deny-tiedostoissa Syslog-palvelun authpriv.* tekemä /var/log/secure.log SUID-ohjelmien metsästäminen Pakettien oikeellisuuden varmistaminen Esim. rpm -V apache Käyttäjätunnusten expirointi SSH-yhteyksien käyttäminen LPI-kirja: Security (Topic 1.14), Obj. 1 RUTE: luku 44
Linux palvelimen tietoturvan nostaminen Tietoturvatason nostamiseen liittyviä toimenpiteitä Shadowin käyttäminen Nykyisillä koneilla salasanojen purkaminen helppo tehtävä Turhien palveluiden poistaminen /etc/inetd.conf tai /etc/xinetd.d-hakemiston ohjelmat Rootin postin ohjaus ylläpitäjän postilaatikkoon Tietoturva-aukkoilmoitusten seuraaminen http://www.cert.org http://www.securityfocus.com Linux jakelijoitten kotisivut Paikata mahdolliset aukot välittömästi! LPI-kirja: Security (Topic 1.14), Obj. 2 RUTE: luku 44
Linux ja käyttäjätason tietoturvan nostaminen Käyttäjätason tietoturvan nostamiseen liittyviä toimenpiteitä Resurssien rajoittaminen ulimit-komento Käyttäjäkohtaiset asetukset /etc/security/limits.conf Esimerkkikomento ulimit -Hu 100 Rajoittaa käyttäjien prosessien lukumääräksi 100 LPI-kirja: Security (Topic 1.14), Obj. 3 RUTE: luku 11.7.5