=== Tie64d2 harjoitus 1 Kickstart käyttöjärjestelmän ja ohjelmien automaattinen asennus Harjoitus uusittiin maanantaina 10.11 klo 16-18. Aloitin harjoituksen muokkaamalla viimeisintä versiota ks.cfg:sta. Terminaalissa otin ssh-yhteyden myylle ja muokkasin tiedostoa. Tiedostossa oli vielä tietoja, jotka saatoin poistaa kokonaan, kuten --card "Matrox Millennium G200" --videoram 8192 --hsync 30-70 --vsync 50-160 Epäonnistuminen edellisellä kerralla johtui picolla editoidessani siitä, että olin jakanut yhden komentorivin kahdelle riville. Asennus ei osannut lukea komentoa, joka alkoi "keskeltä" (esimerkiksi -- card ..). Tätä mahdollisuutta en tullut edes ajatelleeksi. Eikä asennuksen yhteydessä annettu virheilmoitusta, josta tämän olisi voinut tajuta.. Koska muokkasin tiedostoa suoraan myylle, ei tällä kertaa tarvinnut siirtää. Tarkistin kuitenkin selaimen kautta, että sen sai näkyviin. Aloitin asennuksen boottaamalla koneen cd:lle. Annoin käynnistysparametriksi linux ks=http://www.myy.helia.fi/~a0200349/ks.cfg Asennus lähti vaivoitta käyntiin ja kysyi osioinnista aivan kuten odotettua. Tämän jälkeen odoteltiin asennuksen valmistumista. Kokonaisuudessaan asennus vei aikaa vajaat 29 minuuttia ja se sisälsi 505 pakettia. (size 1342 M). Koska en kirjoittanut post install kohtaa käyttäjän luomista, loin käyttäjän ak terminaalissa rootin oikeuksin komennoilla adduser ak passwd ak syöte: salasana Asensin vielä terminaalissa rpm:llä Yum:n, hain tarvittavat avaimet (fedora ja redhat) Yum:lla asensin pinen ja flash-pluginin. Tässä vaiheessa tuli mieleen, että olisi pitänyt samalla vaivalla ottaa asennuskuvat verkosta ja asennuttaa uusi fedora -linux. Ensikerralla automatisoin uudelleen ssh -yhteyden myylle. Toimiva ks.cfg install cdrom lang en_US.UTF-8 langsupport --default en_US.UTF-8 en_US.UTF-8 keyboard fi mouse genericps/2 --device psaux --emulthree xconfig --resolution=1024x768 --depth=24 --startxonboot --defaultdesktop=GNOME network --device eth0 --bootproto static --ip 172.30.1.8 --netmask 255.255.0.0 - -gateway 172.30.1.254 --nameserver 172.30.1.200 rootpw --iscrypted $1$.9DKlmY6$jMyFE2TqJG6MSNGodyACv/ firewall --high authconfig --enableshadow --enablemd5 timezone Europe/Helsinki bootloader --location=mbr # clearpart --all --initlabel # %packages _atta_ Administration Tools _atta_ Authoring and Publishing _atta_ Dialup Networking Support _atta_ Editors _atta_ Graphical Internet _atta_ Graphics _atta_ GNOME Desktop Environment _atta_ System Tools _atta_ X Window System %post > Tie64d2 harjoitus 1 Kickstart käyttöjärjestelmän ja ohjelmien automaattinen > > asennus > > Harjoitus tehtiin keskiviikkona 5.11 klo 12-17. > > Aloitin harjoituksen käynnistämällä tie63d kurssilla asentamani Linuxin. > Terminaalissa kirjauduin rootiksi ja hain tiedoston anaconda-ks.cfg > kansiosta /root. Tämä tiedosto luodaan automaattisesti ensimmäisen asennuksen > > yhteydessä. Kopioin kyseisen tiedoston käyttäjän (ak) kotihakemistoon nimellä > > ks.cfg komennolla cp anaconda-ks.cfg /home/ak ks.cfg. > > Kickstart -tiedoston voi tehdä 3 eri tavalla: > - luodaan normaalin asennuksen yhteydessä > - muokataan itse > - käytetään apuna Red Hatin Kickstart -ohjelmaa. > Harjoituksessa suositeltavaa on käyttää kaikkia kolmea. > > Kopioituani tiedoston menin käyttäjän ak kotihakemistoon ja aloitin ks.cfg:n > > muokkaamisen picolla. Avasin System tool -valikosta Kickstart -graafisen > kickstart ohjelman. Tämän ohjelman avulla on helppo tehdä muutoksia kickstart > - > tiedostoon ja katsoa miten käsin muokattuun tiedostoon komennot kirjoitetaan > > valitsemalla preview ja sieltä copy-pastella, tämä kuitenkin vaatii ensin > rootin salasanan syöttämiseen ohjelmaan. Kickstart -ohjelmassa asennustiedot > > ovat jaettu seuraaviin osioihin: > > Basic configuration, sisältää perusasetukset kuten kielen valinnat, hiiren, > > näppiksen, jne asetukset. > Installation Method, asennuksen toimitavat kuten luodaanko uusi asennus ja > mistä asennusdata otetaan (esim. cdrom). > Bootloader Options, Boot Loader asennetaan mikäli kone bootataan ilman > boot- > levykettä. > Partition Information, sisältää osiointiin liittyvät valinnat. > Network Configuration, määritellään käytetäänkö DHCP:tä vai syötetäänkö IP- > osoite. > Authentication, täällä voi antaa verkkosalasanan, tämä kuitenkin kannattaa > skipata mikäli asennetaan personal desktop, workstation tai server > installation. > Firewall Configuration, palomuurin asetukset. > X Configuration, Xwindow -järjestelmän asetukset, näytön asetukset, > työpöytä. > Package Selection, valitaan haluttavat ohjelmapaketit. > > Tärkeitä kohtia: > url --url > eli mikäli asennetaan RedHat palvelimelta. Näin vältytään cd:n > vaihtamiselta. > %packages --resolvedeps > Tähän kohtaan ohjelmat, jotka ei kuulu workstationin alkuperäiskokoonpanoon, > > (esim. pine ja lynx). > Reboot > boottaa koneen asennuksen jälkeen automaattisesti. > %post > /usr/sbin/useradd ak > chfn -f '' ak > /urs/sbin/usermod -p 'salasana' ak > jälki-installointi eli luodaan asennuksen jälkeen normaalikäyttäjän nimeltä > ak. > Itse en siis tätä kuitenkaan yrittänyt tässä ks.cfg -versiossa. > > Kun ks.cfg -tiedosto on valmis, siirretään se myylle komennolla scp ks.cfg > a0200349_atta_myy.helia.fi:public_html. Tarkistetaan, että tiedosto saadaan > näkyviin verkossa. Tämän jälkeen asetetaan ensimmäinen asennus-romppu ja > bootataan kone. Käynnistyskehoitteeseen kirjoitetaan mistä tiedosto löytyy. > > Koska siirsin sen myylle, annoin kehoitteen: linux > ks=http://myy.helia.fi/~a0200349/ks.cfg > Tämä ei kuitenkaan onnistunut vaikka kone kyllä kysyi IP:n ym. mutta asennus > ei > automaattisesti lähtenyt käyntiin vaan siirtyi graafisen asennuksen alkuun. > > Yritin samaa myös levykkeeltä komennolla linux ks=floppy. Tämäkään ei > tuottanut > toivottua tulosta, vaan "asennus" päättyi ilmoitukseen "You may safely reboot > > your system". > > Anna-Kristiinan ks.cfg, joka ei siis kuitenkaan lähtenyt toimintaan.. > Yritin riisua asennuksen, jotta se ei olisi kestänyt pitkään. > > install > lang en_US > langsupport --default en_US en_US > keyboard fi > mouse genericps/2 --device psaux --emulthree > # > xconfig --card "Matrox Millennium G200" --videoram 8192 --hsync 30-70 --vsync > > 50-160 --startxonboot --depth=24 --resolution=1024x768 --defaultdesktop=GNOME > -- > defaultd$ > # > # oikea ip kun DHCP ei toimi > # > network --device eth0 --bootproto static --ip 172.30.1.8 --netmask > 255.255.0.0 - > -gateway 172.30.1.254 --nameserver 172.30.1.200 > # > rootpw --iscrypted $1$.9DKlmY6$jMyFE2TqJG6MSNGodyACv/ > # > firewall --high > # > authconfig --enableshadow --enablemd5 > # > timezone Europe/Helsinki bootloader --location=mbr > # > clearpart --all --initlabel > # > %packages --resolvedeps > _atta_ Administration Tools > _atta_ Authoring and Publishing > _atta_ Dialup Networking Support > _atta_ Editors > _atta_ Graphical Internet > _atta_ Graphics > _atta_ GNOME Desktop Environment > _atta_ System Tools > _atta_ X Window System > # > %post Copyright GPL (c) 2003 Anna-Kristiina Mäkilä. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. === Moi, Lähetin tehtävän jo aikaisemmin, mutta en tiedä tuliko se perille. Tie64d- sivulla ei tehtävääni ollut kuitenkaan arvosteltu, joten lähetän sen varmuuden vuoksi uudestaan. Terveisin, Mikko #Generated by Kickstart Configurator & anaconda #Modified by Mikko Härkönen (0100069) #Install RedHat instead of upgrade install #System language lang en_US #Language modules to install langsupport en_US #System keyboard keyboard fi-latin1 #System mouse mouse genericps/2 #Graphic settings xconfig --card "Matrox Millennium G200" --videoram 8192 --hsync 30-70 --vsync 50-160 --resolution 1024x768 --depth 16 --startxonboot --defaultdesktop gnome #Network network --device eth0 --bootproto static --ip 172.29.1.10 --netmask 255.255.0.0 --gateway 172.29.1.254 --nameserver 193.166.11.11 --hostname helia.fi #Root password rootpw --iscrypted $1$äûìÎÜQVÈ$ry7yqYAAHCllt5vTwqVEe1 #Firewall settings firewall --medium #System authorization settings authconfig --enableshadow --enablemd5 #System timezone timezone Europe/Helsinki #Reboot after installation reboot #Use CDROM installation media cdrom #System bootloader configuration bootloader --location=mbr # The following is the partition information you requested # Note that any partitions you deleted are not expressed # here so unless you clear all partitions first, this is # not guaranteed to work # # Kovalevy partitioidaan ja formatoidaan automaattisesti clearpart --all --drives=hda part /boot --fstype ext3 --size=100 --ondisk=hda part / --fstype ext3 --size=1100 --grow --ondisk=hda part swap --size=256 --grow --maxsize=512 --ondisk=hda #Clear the Master Boot Record zerombr yes #Clear all partitions from the disk clearpart --all --initlabel #Disk partitioning information #Use DHCP networking network --bootproto dhcp #Asennettavat paketit %packages _atta_ Administration Tools _atta_ Dialup Networking Support _atta_ Editors _atta_ GNOME Desktop Environment _atta_ Games and Entertainment _atta_ Graphical Internet _atta_ Graphics _atta_ Office/Productivity _atta_ Printing Support _atta_ Sound and Video _atta_ Text-based Internet _atta_ X Window System gnome-audio xmms firstboot ggv gtkam redhat-config-kickstart xsane-gimp Maelstrom cdparanoia xsane gtk-engines gnome-vfs-extras mrproject freeciv authconfig-gtk gnome-media ImageMagick fetchmail lrzsz gdm gnome-system-monitor cdp gimp-print-utils openssh-askpass xawtv xchat redhat-config-printer-gui gedit gconf-editor gqview slrn redhat-logviewer rhn-applet tuxracer desktop-backgrounds-extra magicdev sane-frontends file-roller hpijs dia xpdf mozilla-psm redhat-config-services mutt kdegames openssh-askpass-gnome openoffice redhat-switchmail-gnome XFree86-xdm gftp xisdnload xboard gnome-vfs2-extras hwbrowser evolution gtk2-engines redhat-config-network redhat-config-proc mtr-gtk netpbm-progs psgml gnome-user-docs redhat-config-xfree86 chromium grip dvdrecord redhat-config-users gnome-games vim-enhanced redhat-switch-printer-gnome gaim gtoaster gimp-data-extras cdlabelgen # Luodaan mikhar-niminen käyttäjä järjestelmään %post /usr/sbin/useradd mikhar chfn -f 'Mikko HÀrkönen' mikhar /usr/sbin/usermod -p '$1$rSÚËôKòß$Ah3ECe4eYDzy8kQoh7IOq1' mikhar Copyright GPL (c) 2003 Mikko Härkönen. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. === Moi! Venähti isänpäivän vietto hieman pitkäksi, siksi tämäkin hieman myöhässä. Pahoittelen. Lisäksi täytyy todeta, etten ollut aivan varma, mitä tarkoitit b-kohdalla. Laitoin siihen lyhyesti jotakin, jota kuvittelin tarkoittaneesi. Alla ensin raportti ja sen jälkeen ks.cfg. Ks.cfg:ssä on kiinteä IP sekä salasana muka kryptattu, muttei kuitenkaan. [snip1] tie64d RED HAT LINUXIN KICKSTART a) Red Hatin asennus Kickstartilla Aloita kaivamalla esiin Red Hat Linux 9:n asennusromput. Niiden avulla asennus on nopeinta esim. kotikoneelle, jossa on hitaanpuoleinen verkkoyhteys. Red Hatin asennus luo automaattisesti root-käyttäjän kotihakemistoon tiedoston, jonka pohjalta on hyvä lähteä liikkeelle. Kopioi rootin kotihakemistosta tiedosto anaconda-ks.cfg omaan kotihakemistoosi esim. nimelle ks.cfg. Avaa tiedosto esim. picolla muokkausta varten. Mikäli asennus halutaan tehdä CD-levyiltä, lisätään rivin "install" alle rivi "cdrom". Jos asennusta varten on käytettävissä verkossa oleva Red Hat Linuxin jakelu, voidaan edellisen sijasta lisätä rivi "url --url ftp://ftp-palvelimen_osoite". Tämä lienee nopein mahdollinen asennustapa, jos käytössä on esim. nopea 100 Mbps verkko. Asetetaan näppäimistöasetus vastaamaan suomalaista näppäimistöä, mikäli asetus ei jo ole käytössä. Tämä tapahtuu lisäämällä rivi "keyboard fi". Muutetaan hiiren asetuksia siten, että pyyhitään sanan "mouse" perästä kaikki muu paitsi "--emulthree", mikäli rivillä on se jo valmiiksi. Jos ei ole, lisätään. Kyseinen määre kertoo, että molempia hiiren nappeja painamalla voidaan emuloida kolmannen painikkeen painamista. Poistetaan näytönohjaimeen liittyvät tiedot, jotta annetaan asennusohjelman itse tunnistaa näytönohjain. Tämä on varminta silloin, kun ei tiedetä, millaisia näytönohjaimia eri koneilla on. Lisäksi säilytetään graafisen käyttöliittymän käynnistäminen automaattisesti ja voidaan haluttaessa määrittää jokin näyttöalueen koko valmiiksi käyttäjää varten samoin kuin käytettävien värien määrä ja oletuksena käytettävä ikkunointiohjelma. Tehdään nämä esim. rivillä "xconfig --startxonboot --defaultdesktop gnome --resolution 1024x768 --depth 24". Tämä olettaa, että on käytössä näytönohjaimet, jotka suoriutuvat em. vaatimuksista värien määrän ja näyttöalueen koon suhteen. Verkkoasetuksien kanssa riippuu siitä, onko käytettävissä DHCP-palvelin, joka jakaa koneelle IP-osoitteen automaattisesti vai käyttääkö kone kiinteää IP-osoitetta. Mikäli kyseessä on kiinteä IP-osoite, pitää verkkotietojen rivillä määrittää kaikki verkkoon liittyvät asiat sen lisäksi, että on määrittänyt käytettäväksi kiinteän IP-osoitteen: IP-osoite, yhdyskäytävä, nimipalvelin ja verkkomaski. Näiden määritys tapahtuu esim. rivillä "network --bootproto=static --ip=x.x.x.x --gateway=x.x.x.x --netmask=x.x.x.x --nameserver=x.x.x.x". Mikäli käytetään DHCP:tä, määritetään se rivillä "network --bootproto=dhcp". Lisäksi kummassakin tapauksessa saatetaan haluta automaattisesti määrittää käytettävä verkkokortti "--device=eth0" sekä koneen nimi "--hostname=koneen_nimi". Root-käyttäjän salasana pitää lisätä salattuna, mikä tapahtuu rivillä "rootpw --iscrypted salasana", jossa salasanan tilalla on oikea salasana salattuna esim. MD5-salauksella. Palomuuri on syytä säätää tiukaksi, mikä tehdään rivillä "firewall --high". Määritetään lisäksi portti auki SSH-ohjelmaa varten lisämääreellä "--port=ssh:tcp", jotta voidaan etähallita konetta. Autentikointia varten varmistetaan, että on olemassa rivi "authconfig --enableshadow --enablemd5", joilla kerrotaan, että käytetään MD5-salausta salasanoihin ja että salasanat eivät näy /etc/passwd-tiedostossa. Asetetaan aikavyöhykkeeksi Helsinki ja käytettäväksi ajaksi UTC rivillä "timezone --utc Europe/Helsinki", jos ei sitä riviä vielä ollut. Oletuksena käytetään GRUB-käynnistäjää, jonka saa käyttöön rivillä "bootloader". Partitiointitiedot ovat oletuksena kommentoituina. Lisätään niiden sekaan kommentoimaton rivi "clearpart --linux", joka kertoo asennukselle, että kaikki aiemmat Linux-osiot poistetaan levyltä asennuksen yhteydessä. Annetaan asennukselle ohje suoriutua pakettien riippuvuuksista määrittämällä kohtaan "%packages" lisämääre "--resolvedeps" tai lisäämällä molemmat, jos kyseinen rivi puuttuu kokonaan. Pakettien kohdalla määritetään, mitkä kaikki paketit halutaan asentaa, esim. ohjelmistonkehityspaketit tms. paketit, joita tarvitaan välittömästi. Lisätään pakettien perään %packages-kohtaan esim. "pine", jotta saadaan tekstieditori pico mukaan asennukseen. Kun asennustiedosto on valmis, siirretään se jonnekin verkkoyhteyden päähän, laitetaan ensimmäinen asennus-CD sisään, käynnistetään kone ja pysäytetään käynnistys heti alkuunsa. Sen jälkeen kirjoitetaan riville "linux ks=http://verkko-osoite_siirrettyyn_tiedostoon" ja toivotaan, että asennusskriptin laatija on tehnyt hyvää työtä. b) Automatisoitujen asennusten vertailu Automatisoidun asennuksen tavoitteena on vähentää käyttäjältä vaadittavaa syötettä asennuksen yhteydessä sekä helpottaa asennusprosessia käyttäjän näkökulmasta. Nämä tavoitteet saavutetaan parhaiten silloin, kun on käytettävissä esim. sisäverkko nopealla verkkoyhteydellä sekä suhteellisen standardit laitteistokokoonpanot, jotta asennusohjelmalla on mahdollisuus tehdä tehtävänsä laitteiden tunnistuksen suhteen. Nopea verkko nopeuttaa asennusprosessia huomattavasti, eikä asennusta tarvitse vahtia esim. sitä varten, että pitäisi vaihtaa CD-levyjä. Nopein vaihtoehto on kuitenkin asentaa käyttäjälle levynkuva, jossa on kaikki valmiina. Käytännössä tämä tarkoittaa sitä, että on jokin toinen kiintolevy, jolla on tarvittavat ohjelmistot asennettuina ja koko kiintolevystä otetaan kopio, joka kopioidaan käyttäjän koneelle. Tämän menetelmän huonoja puolia on mm. se, että laitteiden täytyy yleensä olla samanlaiset tai todella lähellä toisiaan. Lisäksi ongelmia saattaa tulla siitäkin, ettei ole täsmälleen (tavulleen) samankokoista kiintolevyä käytössä. Jatkoa ajatellen levynkuvan muokattavuus on erittäin heikko, minkä takia asennusskripti vie voiton vähänkään isommassa ja useammin muokattavassa ympäristössä, esim. jossakin suuryrityksessä. Lisäksi, jos levynkuvatiedosto vioittuu, ei vaihtoehtona ole kuin tehdä uusi ja asentaa siitä. Skriptin olessa kyseessä, ovat ohjelmistojen asennuspaketit harvemmin rikki, mutta vaikka sattuisikin niin huonosti, ei luultavati asennus välittäisi siitä kovinkaan kummoisesti. Huonossa tilanteessa asennus keskeytyisi ja aiheuttaisi jonkin verran käsin tehtäviä lisätoimenpiteitä, mutta hyvällä tuurilla asennus jatkaisi asentaen kaiken muun paitsi rikkinäiset paketit. c) Kickstart-asennuksen parannukset Ehdottomasti on löydettävä jokin tapa, jolla käyttäjä vapautetaan kirjoittamasta käynnistyksen alussa "linux ks=verkko-osoite", koska eihän käynnistys ole todellisuudessa automaattinen, jos käyttäjän pitää tehdä jotakin noinkin hankalaa. Lisäksi, jos käyttäjä pakotetaan asentamaan CD:ltä, olisi hyvä pakata esim. yhdelle CD:lle kaikki tarvittava. Copyright (c) 2003 Jarno Lamberg. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". [/snip1] [snip2] # Kickstart file automatically generated by anaconda. install cdrom lang en_US.UTF-8 langsupport --default en_US.UTF-8 en_US.UTF-8 keyboard fi mouse --emulthree xconfig --resolution 1024x768 --depth 24 --startxonboot --defaultdesktop gnome network --device eth0 --bootproto static --ip 212.226.191.66 --netmask 255.255.255.192 --gateway 212.226.191.126 --nameserver 212.226.226.1,192.26.119.4 --hostname kone2 rootpw --iscrypted salasana firewall --high --port=ssh:tcp authconfig --enableshadow --enablemd5 timezone --utc Europe/Helsinki bootloader --location=mbr # The following is the partition information you requested # Note that any partitions you deleted are not expressed # here so unless you clear all partitions first, this is # not guaranteed to work clearpart --linux #clearpart --all --drives=hdb #part /boot --fstype ext3 --size=100 --ondisk=hdb #part / --fstype ext3 --size=1100 --grow --ondisk=hdb #part swap --size=256 --grow --maxsize=512 --ondisk=hdb %packages --resolvedeps _atta_ Administration Tools _atta_ Development Tools _atta_ Dialup Networking Support _atta_ Editors _atta_ Emacs _atta_ GNOME Desktop Environment _atta_ GNOME Software Development _atta_ Games and Entertainment _atta_ Graphical Internet _atta_ Graphics _atta_ Office/Productivity _atta_ Printing Support _atta_ Sound and Video _atta_ Text-based Internet _atta_ X Software Development _atta_ X Window System %post [/snip2] === Linuxin asennus Kickstartia käyttäen Aloitin ottamalla kopion tiedostosta /root/anaconda-ks.cfg nimelle /home/jvanttin/ks.cfg ja avaamalla sen editoriin muokkausta varten. Harkitsin eri asennusvaihtoehtoja ja päädyin kokeilemaan ftp-asennusta funetin ftp-palvelimelta. Poistin tiedostosta kaikki laitetiedostot lukuunottamatta verkon tietoja. Vaikka verkon tietoihin tulee koneen nimi ja IP, mikä tekee tiedostosta aika lailla konekohtaisen (ei taitaisi kelvata 10 koneen samanaikaiseen asennukseen), tiedostoa on kuitenkin tässä tapauksessa tarkoitus käyttää vain yhden koneen asennukseen ja halusin verkon olevan toiminnassa heti kättelyssä. Asetin pääkäyttäjän salasanan kryptattuna käyttäen hyväksi Kickstart Configuratoria ja koneen käynnistymään uudelleen asennuksen jälkeen. Valitsin asennettaviksi paketeiksi hieman alkuperäistä suppeamman ryhmän. Post-installaatioskriptissä lisäsi /etc/skel -hakemistoon kansiot bin ja public_html, jotka luodaan kaikille käyttäjille, ja lisäsin koneelle yhden käyttäjän salasanoineen. Kickstart-tiedosto näytti valmiilta, joten siirsin sen myy-palvelimelle ja päätin kokeilla asennusta. Lopputulos ei ollut odotusteni mukainen. Labraluokan DHCP ei ilmeisestikään toimi ja jouduin asettamaan verkkotiedot käsin, mikä ei ollut tarkoitus. Kun tämänkään jälkeen asennus ei suostunut alkamaan (asennustiedostoja ei löydy), päättelin kirjoittaneeni osoitteen väärin. Palasin muokkaamaan tiedostoa. Pyrin uudelleen mahdollisimman pieneen käyttäjän asennukseen puuttumistarpeeseen, jolloin jouduin tekemään kompromissin. Verkkoasetusten manuaalisen asetuksen sijaan päädyin CD:ltä asennukseen nähdessäni CD:n vaihtamisen IP-osoitteiden kirjoittamista pienemmäksi pahaksi. Lisäksi hankin käyttööni levykkeen ollen luottavainen sen kestämisestä seuraavat 15 minuuttia. Myy-palvelimelle asettamani ks.cfg vaatisi sekin verkon käyttöönottoa. Toinen yritys oli huomattavasti parempi. Asennus-CD:n antamalle komentoriville syötetty komento linux ks=floppy käynnisti asennuksen niin kuin kuuluikin. Asennuksen aikana kokeilin tunnilla esiteltyjä ctrl-alt-f? -komentoja, joista ctrl-alt-f1 ei kylläkään näyttänyt kuin pari riviä liittyen asennusohjelman käynnistykseen. Asennus sujui hiiiittaaaassstttiii mutta kuitenkin suuremmitta ongelmitta. Kunnes kaikki paketit oli asennettu, jolloin käyttäjältä tiedusteltiin, ovatko tunnistetut oheislaitteet oikein. Tunnistuksellakin on ilmeisesti rajoituksensa, ja olin selvästikin unohtanut jotakin skriptistä. Valitettavasti aika ei antanut periksi kokeilla asennusta uudelleen, joten harjoitus päättyi osittaiseen epäonnistumiseen. Asennus oli kyllä sinällään onnistunut, mutta levynvaihto ja monitorin ja näytönohjaimen hyväksyminen estivät koneen jättämisen asentumaan ilman valvontaa. Käyttäjän luonti onnistui salasanoineen normaalisti ja tavoitteen mukaisesti käyttäjän kotihakemistoon oli valmiiksi luotu hakemistot bin ja public_html. Lopullinen, viimeiseen asennusyritykseen käytetty skripti on tässä: # Kickstart file created 2003-11-6 by Janne Vanttinen. install reboot cdrom lang en_US.UTF-8 langsupport --default en_US.UTF-8 keyboard fi network --device eth0 --bootproto static --ip 172.30.1.5 --netmask 255.255.0.0 --gateway 172.30.1.254 --nameserver 172.30.1.200 --hostname TL5 rootpw --iscrypted $1$ firewall --high authconfig --enableshadow --enablemd5 timezone --utc Europe/Helsinki bootloader --location=mbr # Partitioning information # Removes all linux partitions and creates a simple partition scheme # with boot and swap -partitions and a single large root-partition clearpart --linux --drives=hda part /boot --fstype ext3 --size=100 --ondisk=hda part / --fstype ext3 --size=1100 --grow --ondisk=hda part swap --size=256 --grow --maxsize=512 --ondisk=hda %packages --resolvedeps _atta_ X Window System _atta_ GNOME Desktop Environment _atta_ Editors _atta_ Graphical Internet _atta_ Text-based Internet _atta_ Office/Productivity _atta_ Administration Tools _atta_ System Tools _atta_ Printing Support _atta_ Graphics %post mkdir /etc/skel/bin mkdir /etc/skel/public_html adduser -p '$1$' jvanttin ... Copyright GPL (c) 2003 Janne Vänttinen. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. === Linux Perusteet, tie64d:2 Helia Laboratoriotyö 1: KickStart Simo Moilanen 9. marraskuuta 2003 Kickstart ja levykuva ovat kaksi vallitsevaa tapaa asentaa Linux-käyttöjärjestelmä moneen eri koneeseen. Levykuvan hyväpuoli on sen asennuksen nopeus sekä valmistelun helppous. Levykuvassa valmistellaan kone, jonka kovalevyn sisältö monistetaan muihin koneisiin. Ongelmiksi siinä saattavat muodosta esimerkiksi skaalautuvuus. Voi hyvin olla että jossain työasemassa, mihin kuva asennetaan onkin levykuvasta poikkeava laite. Tällöin levykuvan toiminta on epävarmaa. Kickstartilla taas asennusta voidaan muokata, mikä tekee sen asennuksesta huomattavasti joustavamman. Se osaa ottaa koneiden eriytyvyydet paremmin huomioon. Tämä sekä helppo muokattavuus tekee siitä myös pidempi-ikäisen ratkaisun. Nyrkkisääntö: Levykuva on nopeampi tehdä ja asentaa. Kickstart on pidempi ikäinen ja toimintavarmempi. Tein Red Hat 9:n kickstart generaattoria sekä ko. käyttöjärjestelmän asennuksen yhteydessä syntyvää kickstart-tiedostoa hyväksikäyttäen oman kickstart-tiedostoni: # Kickstart file generated by Simo Moilanen. install lang en_US.UTF-8 langsupport --default en_US.UTF-8 en_US.UTF-8 keyboard fi mouse #Probe for Mouse skipx network --bootproto=dhcp --device=eth0 nfs --server=192.168.0.1 --dir=/nfs/ rootpw --iscrypted $1$Sr8sbpct$7hcGoXUL12oHO3jmzbmbB. firewall --high authconfig --enableshadow --enablemd5 timezone --utc Europe/Helsinki bootloader --location=mbr reboot text # The following is the partition information you requested # Note that any partitions you deleted are not expressed # here so unless you clear all partitions first, this is # not guaranteed to work #clearpart --all --drives=hda,hdb #part /boot --fstype ext3 --size=100 --ondisk=hda #part / --fstype ext3 --size=1100 --grow --ondisk=hda #part swap --size=96 --grow --maxsize=192 --ondisk=hda clearpart --linux --initlabel %packages --resolvedeps _atta_ Administration Tools _atta_ Dialup Networking Support _atta_ Printing Support _atta_ Server Configuration Tools _atta_ Text-based Internet _atta_ Web Server _atta_ Windows File Server %post /usr/sbin/adduser -p hyvasalasana simo #end of kickstart Suunnittelin kickstart-tiedoston parhaimman taitoni mukaan siten, että se toimisi mahdollisimman monessa laitekokoonpanossa. Kickstart asennus on hyvä ja läpisuunniteltu tapa asentaa Linux-käyttöjärjestelmä. Henkilökohtaisesti en keksi siinä mitään parannettavaa. Copyright GPL (c) 2003 Simo Moilanen. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. === Copyright GPL (c) 2003 Pasi Nurmenaho. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. KICKSTARTIN TEKEMINEN (RH9) Aloitin tehtävän kopioimalla kotikoneen /root/anaconda-ks.cfg -tiedoston käyttäjän kotihakemistoon nimelle ks.cfg ja antamalla kaikille kirjoitusoikeuden siihen jotta voin muokata sitä myös käyttäjänä. Anaconda-ks.cfg -tekstitiedosto on muodostunut käyttöjärjestelmän asennuksen yhteydessä ja sisältää silloin annetut vastaukset asennusohjelman esittämiin kysymyksiin. Koska kickstartista oli tarkoitus tehdä mahdollisimman laitteistoriippumaton, poistin kaikki laitespesifiset vastaukset tiedostosta tekstieditorilla. Apuna tässä käytin Redhatin mukana tulevaa Kickstart Configurator -ohjelmaa josta oli helppo tarkistaa muutettavien kohtien oikea syntaksi. Ohjelmalla olisi mahdollista tehdä myös täysin uusi kickstart -tiedosto, mutta olemassaolevan tiedoston muokkaaminen oli mielestäni huomattavasti yksinkertaisempi tapa. Tein oman kickstart-tiedostoni kotikoneelleni dualboot ympäristöön, joten se poistaa Linux-partitiot ja asentaa käyttöjärjestelmän vapaalle osiolle. Määritin myös swap-osion omaa kokoonpanoani vastaavaksi. POST-osiossa loin käyttäjän, jotta ei tarvitse kirjautua roottina X:ään. POST-osio jäi melko lyhyeksi, koska en ehtinyt selvittämään kuinka saisin verkkoyhteyden (HoasNet PPPoE) toimimaan suoraan ilman manuaalista kikkailua. Kun olin muokannut ks.cfg -tiedoston haluamaani muotoon, kopioin sen levykkeelle, laitoin Redhatin ensimmäisen asennus-CD:n asemaan ja boottasin koneen. Ensialkuun piti käydä BIOSissa muuttamassa CD-ROM ensimmäiseksi boottausmediaksi, seuraavalla bootilla pääsinkin asennuksen aloitussivulle. Käynnistin asennuksen komennolla: linux ks=floppy Asennus keskeytyi heti alkuun. Levykeeltä ei löytynyt ks.cfg -nimistä tiedostoa. Syy: levykkeellä ei ollut ks.cfg -nimistä tiedostoa. Joku tolvana oli unohtanut umountata korpun kopioituaan tiedoston sinne, eikä sille ollut kirjoitettu mitään. Kaksi seuraavaa kertaa asennus keskeytyi kirjoitusvirheiden takia: toisella kerralla ylimääräiseen välilyöntiin ja toisella kommenttiin, joka oli jäänyt samalle riville komennon kanssa. Tiedostoa korjaillessani totesin, ettei levykkeen umounttaus oikein tahtonut aina onnistua. Toinen huomio oli että pico ei osannut käsitellä ääkkösiä, joita aluksi kirjoittelin kommenttikenttiin. - - -ks.cfg:n sisältö alkaa- - - #Asennus (ei paivitys) CDROMilta install cdrom #Jarjestelman kieli lang en_US.UTF-8 #Asennettavat kielimodulit langsupport --default en_US.UTF-8 en_US.UTF-8 fi_FI.UTF-8 #Nappis keyboard fi #Hiiri, tunnistaa itse, emuloi kolme nappia mouse --emulthree #XWindown asetukset, reso ja varit monitorin ja nayttiksen tunnistaa automatic xconfig --depth=24 --resolution=1024x768 --defaultdesktop=GNOME --startxonboot #Verkkoasetukset network --device eth0 --bootproto dhcp #rootin salainen lause (salasana) kryptattuna rootpw --iscrypted $XXXXXXXXXXXXXXXXXXXXXXX/ #Palomuuri... firewall --high #Kayttajatiedot salassa... authconfig --enableshadow --enablemd5 #Aikavyohyke timezone Europe/Helsinki #Bootloaderi MBRssa bootloader --location=mbr --append hdd=ide-scsi # Partitiointiasetukset # Poistaa linuxpartitiot ja luo juuren ja swap-osion clearpart --linux part / --fstype ext3 --size=100 --grow part swap –size=1000 #Asennettavat paketit %packages --resolvedeps _atta_ Administration Tools _atta_ Development Tools _atta_ Dialup Networking Support _atta_ Editors _atta_ Emacs _atta_ Finnish Support _atta_ GNOME Desktop Environment _atta_ GNOME Software Development _atta_ Games and Entertainment _atta_ Graphical Internet _atta_ Graphics _atta_ Office/Productivity _atta_ Printing Support _atta_ Sound and Video _atta_ System Tools _atta_ Text-based Internet _atta_ X Software Development _atta_ X Window System -xdelta -samba-client -screen %post #lisataan kayttaja ja salasana adduser user1 -p '$XXXXXXXXXXXXXXXXXXX' - -ks.cfg:n sisältö päättyy- - - KICKSTART VERRATTUNA MUIHIN AUTOMATISOITUIHIN ASENNUSTAPOIHIN Kickstart: joustava laitteiston suhteen helposti muokattava helpompi käyttää Image: nopeampi helpompi tehdä PARANNUKSIA KICKSTARTTIIN Pohdin tätä ihan oikeasti, mutta en keksinyt yhtään mitään. Itse en saanut kaikkea haluamaani tehtyä kickstartilla, mutta se johtuu vain siitä, että en vielä osaa pystyttää PPPoE-yhteyttäni ilman interaktiivista adsl-setup -ohjelmaa. Uskon senkin onnistuvan pienen tutkinnan jälkeen pistämällä POST-osion kirjoittamaan uudet asetustiedostot. Ongelmana on tietysti se, että yhteyden tunnuksen ja salasanan joutuu laittamaan selväkielisenä tiedostoon ja kyseisellä kickstartilla ei pysty tekemään asennusta muihin koneisiin. Automaattisiin asennuksiin liittyen kaipaisin kylläkin ohjelmaa, jonka avulla voisi helposti tehdä asennuspaketin, jossa olisi vain tarvittavat tiedostot (tästähän oli puhetta tunnillakin). Valittaisiin asennettavat osat kuten anacondassa, mutta ohjelma kopioisi tiedostot määriteltyyn paikkaan sillä tavoin, että anaconda osaisi niitä käyttää. -- Pasi Nurmenaho p. 044 329 0563 Email : pasi.nurmenaho_atta_myy.helia.fi === To: tero.karvinen_atta_helia.fi Subject: tie64d:2 h1 kickstart markku.j.paananen_atta_myy.helia.fi a0100101 tie64d:2 h1 kickstartin teko Latasin koneelleni käyttöjärjestelmän ja etsin anaconda-ks.cfg -tiedoston. Mounttasin windowsin ja copysin textitiedoston sinne. Avasin tiedoston editorilla ja muutin sisältöä poistaen hiiren, näytön ym tarkat määritykset jotta tiedostosta tulee yleiskäyttöisempi eli laitteet tunnistetaan asennuksessa. Poistin myös joitakin ohjelmia, alkuperäisasennus oli laaja. Jätin kuitenkin useita ohjelmia koska niitä tarvitaan monilla kursseilla, se on jonkin asteinen tietoturvaongelma.Toisaalta muutama nimilyhennys oli sellainen jota en muistanut joten en voinut poistaa kun se saattoi olla tärkeä. Partitioin asennuksen esipartitioiduille osioille 3, 6 ja 7. Tämä on aika mielivaltaista. Toisaalta en tee summamutikassa asennusta joika hävittäisi entiset koska en koskaan asenna summamutikassa mitään ja teen asennuksen aina suunnitellusti ja tiettyihin osioihin ettei tietoja tuhoutuisi, näitä partitionumeroitavoi muuttaa tarpeen mukaan. Yleensä on opiskelun vuoksi oltava monia erilaisia asennuksia eikä koskaan voi ottaa riskiä tiedostojen tuhoutumisesta. otin ssh-yhteyden koulun sähköpostiin ja lähetin textitiedostot opettajalle, tämän selostustiedoston ja ks.cfg -tiedoston. Kickstartteja voisi kehittää tietysti riippuen näkökulmasta, mitä tehdään ja millaisessa paikassa. Virtuaalipaketit ja asennukset varkon läpi on eräs kätevä käyttötarkoitussuuntaus. __________________________________________________________________________ # Kickstart file runsaahkosti ohjelmia kun tarvii eri kursseilla. install lang en_US.UTF-8 langsupport --default en_US.UTF-8 en_US.UTF-8 fi_FI.UTF-8 keyboard fi mouse xconfig --card --startxonboot --defaultdesktop gnome network --device eth0 --bootproto dhcp rootpw foo firewall --high --dhcp --port=http:tcp --port=ftp:tcp --port=ssh:tcp authconfig --enableshadow --enablemd5 timezone Europe/Helsinki bootloader --location=mbr --lba32 --md5pass=$1$itwFXkkY$AuKLq9rCAShkv/l8Yyp2Z0 # The following is the partition information you requested # Note that any partitions you deleted are not expressed # here so unless you clear all partitions first, this is # not guaranteed to work #clearpart --linux part /boot --fstype ext3 --onpart hda3 part / --fstype ext3 --onpart hda6 part swap --onpart hda7 %packages --resolvedeps _atta_ Administration Tools _atta_ Authoring and Publishing _atta_ Development Tools _atta_ Dialup Networking Support _atta_ Editors _atta_ XEmacs _atta_ Engineering and Scientific _atta_ Finnish Support _atta_ GNOME Desktop Environment _atta_ GNOME Software Development _atta_ Graphical Internet _atta_ Graphics _atta_ KDE Desktop Environment _atta_ KDE Software Development _atta_ Office/Productivity _atta_ Printing Support _atta_ System Tools _atta_ Text-based Internet _atta_ Web Server _atta_ Windows File Server _atta_ X Software Development _atta_ X Window System ncftp ggv galeon vim-X11 ethereal-gnome mc lam koffice kdegraphics redhat-switch-mail-gnome php-mysql pvm kdeadmin vnc shapecfg mod_auth_pgsql redhat-switch-mail php-pgsql xfig pine kdepim gnumeric rdesktop tetex-xdvi nmap-frontend tsclient redhat-switch-printer php-odbc mod_auth_mysql ddd abiword quanta redhat-switch-printer-gnome %post GNU FDL Copyright GPL (c) 2003 markku.j.paananen_atta_myy.helia.fi. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. === To: tero.karvinen_atta_helia.fi Subject: tie64d:2 h1 kickstart markku.j.paananen_atta_myy.helia.fi a0100101 tie64d:2 h1 kickstartin teko Latasin koneelleni käyttöjärjestelmän ja etsin anaconda-ks.cfg -tiedoston. Mounttasin windowsin ja copysin textitiedoston sinne. Avasin tiedoston editorilla ja muutin sisältöä poistaen hiiren, näytön ym tarkat määritykset jotta tiedostosta tulee yleiskäyttöisempi eli laitteet tunnistetaan asennuksessa. Poistin myös joitakin ohjelmia, alkuperäisasennus oli laaja. Jätin kuitenkin useita ohjelmia koska niitä tarvitaan monilla kursseilla, se on jonkin asteinen tietoturvaongelma.Toisaalta muutama nimilyhennys oli sellainen jota en muistanut joten en voinut poistaa kun se saattoi olla tärkeä. Partitioin asennuksen esipartitioiduille osioille 3, 6 ja 7. Tämä on aika mielivaltaista. Toisaalta en tee summamutikassa asennusta joika hävittäisi entiset koska en koskaan asenna summamutikassa mitään ja teen asennuksen aina suunnitellusti ja tiettyihin osioihin ettei tietoja tuhoutuisi, näitä partitionumeroitavoi muuttaa tarpeen mukaan. Yleensä on opiskelun vuoksi oltava monia erilaisia asennuksia eikä koskaan voi ottaa riskiä tiedostojen tuhoutumisesta. otin ssh-yhteyden koulun sähköpostiin ja lähetin textitiedostot opettajalle, tämän selostustiedoston ja ks.cfg -tiedoston. Kickstartteja voisi kehittää tietysti riippuen näkökulmasta, mitä tehdään ja millaisessa paikassa. Virtuaalipaketit ja asennukset varkon läpi on eräs kätevä käyttötarkoitussuuntaus. __________________________________________________________________________ # Kickstart file runsaahkosti ohjelmia kun tarvii eri kursseilla. install lang en_US.UTF-8 langsupport --default en_US.UTF-8 en_US.UTF-8 fi_FI.UTF-8 keyboard fi mouse xconfig --card --startxonboot --defaultdesktop gnome network --device eth0 --bootproto dhcp rootpw foo firewall --high --dhcp --port=http:tcp --port=ftp:tcp --port=ssh:tcp authconfig --enableshadow --enablemd5 timezone Europe/Helsinki bootloader --location=mbr --lba32 --md5pass=$1$itwFXkkY$AuKLq9rCAShkv/l8Yyp2Z0 # The following is the partition information you requested # Note that any partitions you deleted are not expressed # here so unless you clear all partitions first, this is # not guaranteed to work #clearpart --linux part /boot --fstype ext3 --onpart hda3 part / --fstype ext3 --onpart hda6 part swap --onpart hda7 %packages --resolvedeps _atta_ Administration Tools _atta_ Authoring and Publishing _atta_ Development Tools _atta_ Dialup Networking Support _atta_ Editors _atta_ XEmacs _atta_ Engineering and Scientific _atta_ Finnish Support _atta_ GNOME Desktop Environment _atta_ GNOME Software Development _atta_ Graphical Internet _atta_ Graphics _atta_ KDE Desktop Environment _atta_ KDE Software Development _atta_ Office/Productivity _atta_ Printing Support _atta_ System Tools _atta_ Text-based Internet _atta_ Web Server _atta_ Windows File Server _atta_ X Software Development _atta_ X Window System ncftp ggv galeon vim-X11 ethereal-gnome mc lam koffice kdegraphics redhat-switch-mail-gnome php-mysql pvm kdeadmin vnc shapecfg mod_auth_pgsql redhat-switch-mail php-pgsql xfig pine kdepim gnumeric rdesktop tetex-xdvi nmap-frontend tsclient redhat-switch-printer php-odbc mod_auth_mysql ddd abiword quanta redhat-switch-printer-gnome %post GNU FDL Copyright GPL (c) 2003 markku.j.paananen_atta_myy.helia.fi. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.