Linux from Scratch : GNU/Linux-järjestelmän kokoaminen lähdekoodeista
Niemi, Samuli (2015)
Niemi, Samuli
Oulun ammattikorkeakoulu
2015
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201504275088
https://urn.fi/URN:NBN:fi:amk-201504275088
Tiivistelmä
Tässä opinnäytetyössä käsitellään Linux from scratch -nimistä projektia, jossa rakennetaan GNU/Linux-järjestelmä täysin lähdekoodeista. GNU/Linux:in rakentaminen lähdekoodeista antaa käyttäjälle vapauden luoda sellainen GNU/Linux-järjestelmä kuin hän itse haluaa ja opettaa käyttäjälle GNU/Linux-järjestelmän perusasiat. Tällä opinnäytetyöllä ei ole tilaajaa vaan tekijä tekee sen itseään varten. Opinnäytetyön tekijä on hyvin kiinnostunut aiheesta ja odottaa sen laajentavan hänen käsitystään GNU/Linux-järjestelmistä.
Käytännön tehtävänä rakennetaan reitittimeksi ja palomuuriksi räätälöity GNU/Linux-järjestelmä. Järjestelmä kehitetään virtualisoidussa ympäristössä käytännön syistä. Opinnäytetyön raportti ei sisällä yksityiskohtaisia ohjeita miten järjestelmä tehdään, vaan viittaa asiakirjoihin ja ohjeisiin mitä käytettiin.
Teoriaosuudessa käsitellään GNU/Linuxin ja Unixin historiaa ja GNU/Linuxin pääkomponentteja kuten ydintä, tiedostojärjestelmiä, muistin käsittelyä ja X-ikkunointijärjestelmää. Opinnäytetyö selittää myös GNU:n tarkoituksen Linuxin nimessä ja mitä vapaat ohjelmistot ovat. Opinnäytetyön tietopohja on koottu parista kirjasta ja useasta eri lähteestä Internetistä. LFS-projektin pohjalta voi luoda käytännössä oman jakelun, jonka takia opinnäytetyössä esitellään yleisimmät jakelut, missä niitä käytetään ja mitä ovat sulautetut järjestelmät. Opinnäytetyössä käsitellään myös miten GNU/Linux-järjestelmän rakentamista teoriassa.
Käytännön tehtävänä luotu Linux-reititin voidaan asentaa mille tahansa x86-64-pohjaiselle tietokoneelle, jossa on vähintään kaksi verkkokorttia. Sillä voidaan tarjota Internet-yhteys, DNS- ja DHCP-palvelut ja monipuolinen palomuuri. Linux-reititintä voidaan tulevaisuudessa kehittää lisäämällä siihen web-pohjainen käyttöliittymä, ohjelmia seuraamaan verkkoliikenteen käyttöä ja tieturvaohjelmia. Opinnäytetyössä Linux-reititin kehitettiin virtuaaliseen ympäristöön, jonka takia seuraava looginen askel olisi asentaa järjestelmä oikean laitteiston päälle, mikä onnistuisi ilman merkittäviä muutoksia.
Opinnäytetyön tekijä oppi paljon uutta oleellista tietoa ja löysi uusia hyödyllisiä ominaisuuksia GNU/Linux-järjestelmistä. LFS-projekti mahdollistaa hyvin räätälöityjen Linux-järjestelmien luonnin, mutta se vaatii merkittävästi enemmän aikaa ja vaivaa kuin valmista jakelua käyttämällä. Linux-järjestelmä tulisi kehittää lähdekoodeista asti vain jos sen tarkoitus on palvella jotain hyvin ainutlaatuista tarkoitusta tai kohdelaitetta. Muissa tapauksissa olemassa olevaa jakelua kannattaa käyttää ensisijaisesti.
Käytännön tehtävänä rakennetaan reitittimeksi ja palomuuriksi räätälöity GNU/Linux-järjestelmä. Järjestelmä kehitetään virtualisoidussa ympäristössä käytännön syistä. Opinnäytetyön raportti ei sisällä yksityiskohtaisia ohjeita miten järjestelmä tehdään, vaan viittaa asiakirjoihin ja ohjeisiin mitä käytettiin.
Teoriaosuudessa käsitellään GNU/Linuxin ja Unixin historiaa ja GNU/Linuxin pääkomponentteja kuten ydintä, tiedostojärjestelmiä, muistin käsittelyä ja X-ikkunointijärjestelmää. Opinnäytetyö selittää myös GNU:n tarkoituksen Linuxin nimessä ja mitä vapaat ohjelmistot ovat. Opinnäytetyön tietopohja on koottu parista kirjasta ja useasta eri lähteestä Internetistä. LFS-projektin pohjalta voi luoda käytännössä oman jakelun, jonka takia opinnäytetyössä esitellään yleisimmät jakelut, missä niitä käytetään ja mitä ovat sulautetut järjestelmät. Opinnäytetyössä käsitellään myös miten GNU/Linux-järjestelmän rakentamista teoriassa.
Käytännön tehtävänä luotu Linux-reititin voidaan asentaa mille tahansa x86-64-pohjaiselle tietokoneelle, jossa on vähintään kaksi verkkokorttia. Sillä voidaan tarjota Internet-yhteys, DNS- ja DHCP-palvelut ja monipuolinen palomuuri. Linux-reititintä voidaan tulevaisuudessa kehittää lisäämällä siihen web-pohjainen käyttöliittymä, ohjelmia seuraamaan verkkoliikenteen käyttöä ja tieturvaohjelmia. Opinnäytetyössä Linux-reititin kehitettiin virtuaaliseen ympäristöön, jonka takia seuraava looginen askel olisi asentaa järjestelmä oikean laitteiston päälle, mikä onnistuisi ilman merkittäviä muutoksia.
Opinnäytetyön tekijä oppi paljon uutta oleellista tietoa ja löysi uusia hyödyllisiä ominaisuuksia GNU/Linux-järjestelmistä. LFS-projekti mahdollistaa hyvin räätälöityjen Linux-järjestelmien luonnin, mutta se vaatii merkittävästi enemmän aikaa ja vaivaa kuin valmista jakelua käyttämällä. Linux-järjestelmä tulisi kehittää lähdekoodeista asti vain jos sen tarkoitus on palvella jotain hyvin ainutlaatuista tarkoitusta tai kohdelaitetta. Muissa tapauksissa olemassa olevaa jakelua kannattaa käyttää ensisijaisesti.