0.2.1 14. Syyskuuta 2003
Tämä on uutisryhmän sfnet.atk.linux FAQ, eli kokoelma usein kysytyistä kysymyksistä ja niiden vastauksista (FAQ = Frequently Asked Questions). Tämän dokumentin perimmäisenä tarkoituksena on tarjota lukijoilleen vastauksia jo ratkottuihin ongelmiin ja antaa tilaa uusille aiheille ja kysymyksille kyseisessä uutisryhmässä. Uusien käyttäjien on suositeltavaa lukea tämä läpi.
Palaute pyydetään lähettämään osoitteeseen
<sal-faq-tiimi@lists.sourceforge.net>
.
Tämä on uutisryhmän sfnet.atk.linux sekä sen alaryhmien sfnet.atk.linux.palvelimet ja sfnet.atk.linux.asennus FAQ, eli kokoelma usein kysytyistä kysymyksistä ja niiden vastauksista (FAQ = Frequently Asked Questions). Tämän dokumentin perimmäisenä tarkoituksena on tarjota lukijoilleen vastauksia jo ratkottuihin ongelmiin ja antaa tilaa uusille aiheille ja kysymyksille kyseisessä uutisryhmässä. Uusien käyttäjien on suositeltavaa lukea tämä läpi.
Koska dokumentti on kirjoitettu omalla vapaa-ajalla ilman mitään korvausta, ja Linux on hyvin monimutkainen ja laaja järjestelmä, virheitä varmasti löytyy ja tieto voi hyvinkin olla vanhentunutta. Tietojen pitäisi olla oikein, mutta mitään takuuta ei ole. Kaikki kannattaa lukea kriittisesti. Jos havaitset virheen niin kerro siitä ylläpitäjille, ks. kohta Palaute>.
FAQ:in webbisivut ovat osoitteessa http://sal-faq.sourceforge.net/, josta löydät tämän FAQ:in eri muodoissa sekä lähdekoodin. Jos mielestäsi jokin tärkeä formaatti puuttuu, ota yhteyttä ylläpitäjiin.
Lähetä palautetta FAQ:ia koskien ylläpitäjien sähköpostilistalle
<sal-faq-tiimi@lists.sourceforge.net>
. Lista on
yksityinen johon ainoastaan ylläpitäjät pääsevät liittymään
ja listalla ei ole julkista arkistoa, joten voit huoletta
lähettää viestisi vaikka et haluaisi nimeäsi tai
sähköpostiosoitettasi julki.
Linuxiin ja sen käyttöön liittyviä kysymyksiä ei kannata lähettää tiimi-listalle tai suoraan ylläpitäjille. Olemme aivan liian kiireisiä antaaksemme henkilökohtaista apua ja vieläpä ilmaiseksi. Yleiset Linux-kysymykset kannattaa kysyä sopivassa nyyssiryhmässä.
Kuten Linuxiin liittyvä avoimen lähdekoodin kehitys yleensäkin, tämäkin FAQ on monien ihmisten aikaansaannoksien tulos. FAQ:ia ylläpitää pieni ryhmä joka on tehnyt suurimman osan työstä, mutta palautetta ja tekstiä tulee koko sfnet.atk.linux-ryhmien lukijoilta.
Tällä hetkellä ylläpitotiimiin kuuluu:
Kalle Valo <Kalle.Valo@iki.fi>
Juhani Rantanen <misty@iki.fi>
Mikael Gueck <mikael@fi.gueck.com>
Ari Mäkelä <hauva@arska.org>
Ylläpitotiimin tavoitat osoitteesta
<sal-faq-tiimi@lists.sourceforge.net>
.
Tässä ovat henkilöt, jotka ovat kirjoittaneet tekstiä FAQ:iin:
Veijo Ryhänen
<veijo.ryhanen@tulli.fi>
alkuperäinen luonnos
Juhani Rantanen
<misty@sgic.fi>
DNS
ISDN
Virheitä ytimen käännössä
Miten asennan ohjelmia
paljon korjauksia ja lisäyksiä
Jarmo Torvinen
<jatorvin@ee.oulu.fi>
root ja käyttäjätunnukset, rakenne
Juha Laine
<james@korppi.cs.tut.fi>
kovalevyjä, rakenne ja korjauksia
osia ytimen käännöstä
Janne Pänkälä
<epa@mindless.tky.hut.fi>
X:n näppäimistön asettelu
Ola Rinta-Koski
<ola@anjovis.hex.fi>
Kuinka saan truetype-fontit käyttöön X:ssä?
Matti Kurkela
<Matti.Kurkela@hut.fi>
Partition kopiointi
Ari K Makela <hauva@iki.fi>
Miten voin käyttää FAT-levykkeitä
Miksi lilo antaa virheen?
Virheitä ytimen käännössä
NTFS
Juha Autero <Juha.Autero@hut.fi>
Miten etäkäytetään X Window Systemiä turvallisesti
Jouni K. Seppänen
<jks@RNI.Helsinki.FI>
Miksi ohjelman linkkaus epäonnistuu, vaikka annan kaikki kirjastot komentorivillä?
Timo Korvola <Timo.Korvola@iki.fi>
Leikepöydistä
Antti-Juhani Kaijanaho <gaia@iki.fi>
Debian-sorsapaketeista kääntäminen
Sami Tikka
<sti@iki.fi>
pppd:n debug
Matti Kurkela
<Matti.Kurkela@hut.fi>
DOS-osioiden käyttö Linuxissa
Jussi Torhonen
<jussi.torhonen@tietosavo.fi>
Miten saan Linuxin kellon automaattisesti oikeaan aikaan?
M. Tavasti <tavasti@iki.fixx>
Miten saan Linuxin käynnistettyä ongelmatilanteissa?
Olli Lounela <olli@mpoli.fi>
Miten saan CD-R aseman toimimaan?
Samuli Suonpää <suonpaa@iki.fi>
Miten asennan OpenOfficen (tai StarOfficen) turvallisesti?
Kai Puolamäki <Kai.Puolamaki@iki.fi>
Mikä on paras levityspaketti vanhaan tietokoneeseen?
Nämä ihmiset ovat antaneet erittäin tarpeellisia kommentteja ja korjauksia:
Riku A Reiman <r2@iki.fi>
Markku Verkkoniemi
<markku.verkkoniemi@iki.fi>
Samuli Kaski
<amkaski@cs.helsinki.fi>
Jani Ollikainen
<bestis@sicom.fi>
Jani Markkanen
<jani.markkanen@mpoli.fi>
Tuomas Kuusivaara
<tkuusiva@oyt.oulu.fi>
Jari Anttonen <jari.anttonen@iki.fi>
Tätä kirjoitelmaa saadaan levittää ja muuttaa GNU General Public Licensen ehtojen mukaisesti.
Tämä ohjekirja on vapaa; voitte levittää sitä edelleen ja/tai muuttaa sitä Free Software Foundationin julkaisemassa muodossa olevan GNU General Public Licensen ehtojen mukaisesti, joko sen version 2, tai (valintanne mukaan) minkä tahansa myöhemmän version mukaisesti.
Tätä kirjoitelmaa levitetään toivoen, että se on hyödyksi, mutta ilman minkäänlaista takuuta; jopa ilman implisiittistä takuuta myyntikunnosta tai sopivuudesta johonkin tiettyyn tarkoitukseen. Tarkemmin asiaa käsitellään GNU General Public Licensessa.
GNU General Public Licensesta on kappale GNU:n seittisivustossa. Voitte myös saada siitä kopion kirjoittamalla osoitteeseen Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
Vihje: Epävirallinen GPL:n suomennos on Turren sivulla.
Linux on vapaa Unix-tyyppinen käyttöjärjestelmä Intel x86-, m68k-, PowerPC-, Alpha-, Sparc-, PA-RISC- ja MIPS-mikroihin. Katso lisää Linuxin omasta FAQ:sta. Tavallisesti Linuxista puhuttaessa kuitenkin tarkoitetaan levitystä eikä pelkkää ydintä (l. kerneliä). Levityspaketti on Linux-ytimen ympärille kasattu ohjelmistopaketti, joka koostuu mm. GNU-projektin apuohjelmista ja eri perussovelluksista.
Käytännössä Linux siis toimii PC-koneissa, Amigassa, Atari ST:ssä ja perinteisissä Macintosheissa (vaatii vähintään 68030-prosessorin jossa on MMU ja 6888x-liukulukuyksikkö), PowerMaceissa, monissa Sunin, Compaqin ja HP:n työasemissa ja palvelimissa sekä Playstation 2:ssa (lisävaruste). Linuxia käytetään myös sulautetuissa laitteissa, kuten esimerkiksi valo-ohjausjärjestelmissä, avaruusluotaimissa, verkkolevypalvelimissa, kovalevyvideonauhureissa ja älykkäissä valvontakameroissa.
Linuxin minimivaatimuksena on 10MB kovalevytilaa, 4MB muistia ja vähintään 386SX-prosessori. Minimivaatimuksilla tarkoitetaan sitä, että Linux saadaan asennettua kyseiseen kokoonpanoon, mutta sovellusohjelmia ei siinä juuri ole, joten yleisesti ottaen ei sillä oikein töitä voi tehdä.
Käytettävät ohjelmistot lisäävät luonnollisestikin laitteiston minimivaatimuksia. Esimerkiksi jos aiot käyttää graafista käyttöliittymää (eli X-ikkunointia tai lyhyemmin sanottuna X:ää), niin muistia olisi hyvä olla 16-64 MB, tilaa kovalevyllä noin 100 MB ja prosessorina mielellään 486 tai tehokkaampi. Vähemmällä muistilla kyllä pärjää, mutta käyttö voi olla hitauden takia melko tuskallista.
Normaaliin työasemakäyttöön olisi suositeltavaa olla vähintään 400MB kovalevytilaa, mutta jokaisella levityspaketilla on myös omia minimivaatimuksiaan, jotka kannattaa käydä tarkistamassa tuotteiden omista dokumentaatioista. Uusimpia ohjelmia varten kannattaa olla mahdollisimman paljon muistia ja nopea prosessori. Esimerkiksi Netscapen versio 4.5 vaatii muistia noin 32 MB jouhevaan käyttöön. Uudet ja raskaat työpöytäympäristöt vaativat 64-256 MB ja vähintään Pentium-tasoisen koneen tottumuksistasi riippuen.
Levityspaketti (engl. distribuutio) sisältää Linuxin ytimen sekä sovellusohjelmat helposti asennettavina paketteina. Useimmat ohjelmista ovat vapaita, eli niiden käyttämisestä, sekä muokkaus- ja edelleenlevitysoikeudesta ei tarvitse tehdä erillisiä sopimuksia tai maksaa mitään. Joidenkin levityspakettien kaupallisissa versioissa on mukana ohjelmia, joita ei ilmaisversion mukana jaeta. Eri levityksien paketointimenetelmät ja konfigurointitavat poikkeavat hieman toisistaan, joten ohjelmapakettien asentaminen ei välttämättä toimi levityspakettien välillä.
Linuxin vapauden takia kuka tahansa saa levittää sitä. Siksi monet yritykset ja yhteisöt tekevät omia levityksiään. Esimerkkejä näistä (aakkosjärjestyksessä):
SOT Linux (entinen Best Linux)
Kotimaisia levityspaketteja edellämainituista ovat SOT Linux ja Spectra Linux.
Ryhmä sfnet.atk.linux (s.a.l) sekä sen aliryhmät sfnet.atk.linux.asennus (s.a.l.asennus) ja sfnet.atk.linux.palvelimet (s.a.l.palvelimet) ovat suomalaisia USENET-uutisryhmiä, joissa keskustellaan Linuxista ja kaikesta siihen liittyvästä. Jos sinulla on ongelmia Linuxin kanssa, löydät uutisryhmien välityksellä todennäköisesti jonkun, joka tietää ratkaisun ongelmaasi. Ja vaikka kukaan ei ongelmaasi osaisikaan heti ratkaista, saat todennäköisesti ainakin neuvoja vastauksen etsintää varten.
Sfnet-ryhmien sivuilla olevassa kuvauksissa kerrotaan sfnet.atk.linux-ryhmistä näin:
sfnet.atk.linux Linux, vapaa *nix tyyppinen käyttöjärjestelmä
Yleisryhmä Linux-käyttöjärjestelmään liittyen. Asennuskysymykset ja palvelimiin liittyvät kysymykset kuuluvat aliryhmiin sfnet.atk.linux.asennus ja sfnet.atk.linux.palvelimet. X-ikkunointiin liittyvät kysymykset kuuluvat ryhmään sfnet.atk.x-ikkunointi.
Ryhmällä on kotisivu osoitteessa http://sal-faq.sourceforge.net/
sfnet.atk.linux.asennus Linux-käyttöjärjestelmän ja sen osien asentaminen.
Ryhmään kuuluu kaikki Linux-käyttöjärjestelmän asennukseen liittuvät asiat myös uusien oheislaitteiden tms. osalta. Yleinen linux-keskustelu kuuluu pääryhmään sfnet.atk.linux ja palvelimien osalta keskustelu kuuluu rinnakkaiseen aliryhmään sfnet.atk.linux.palvelimet.
sfnet.atk.linux.palvelimet Linux-käyttöjärjestelmän käyttö palvelimissa
Ryhmä on tarkoitettu keskustelulle Linuxin käytöstä erilaisissa palvelimissa, esimerkiksi www-, sähköposti-, tiedosto- tai tietokantapalvelimena.
Yleinen Linux-keskustelu kuuluu pääryhmään sfnet.atk.linux ja asentamiskeskustelu rinnakkaiseen aliryhmään sfnet.atk.linux.asennus.
Ryhmään _ei_ kuulu yleinen keskustelu palvelimista. Ryhmään eivät kuulu esimerkiksi kysymykset nauhavarmistusasemista tai RAID-järjestelmistä, ellei kysymys liity olennaisesti Linuxiin. Esimerkiksi pelkistä rauta-asioista voi keskustella ryhmässä sfnet.atk.laitteet.
Usein keskustelunaihe koskettaa muitakin käyttöjärjestelmiä kuin Linuxia. Esimerkiksi X Window System -ikkunointijärjestelmää käytetään monissa eri käyttöjärjestelmissä, eikä keskustelua ole sen takia rajattu Linux-ryhmiin. Tällaisista aiheista käydään keskustelua esimerkiksi seuraavissa ryhmissä:
sfnet.atk.unix Unix
Unix-käyttöjärjestelmälle tarkoitettu ryhmä. Vaikka Linux onkin unix-tyyppinen käyttöjärjestelmä, sille on suuren levikkinsä takia tehty oma ryhmä sfnet.atk.linux. Unixissa yleiselle X-ikkunoinnille on myös oma ryhmänsä sfnet.atk.x-ikkunointi.
sfnet.atk.x-ikkunointi keskustelua X-ikkunoinnista
X-ikkunointi eli X Window System on käyttöjärjestelmäriippumaton ikkunointijärjestelmä, jota käytetään tyypillisimmin Linuxin ja muiden unix-tyyppisten käyttöjärjestelmien kanssa.
X-ikkunoinnista käytetään arkikielessä usein lyhennettä "X". Nimitys "X Window" on myös tavallinen; muutenkin kirjoitusasu vaihtelee. X-ikkunointia ei pidä sekoittaa Microsoftin Windowsiin (josta keskustellaan hierarkiassa sfnet.atk.ms-windows).
Tässä ryhmässä keskustellaan eri X-toteutuksista, niiden käytöstä ja konfiguroinnista sekä yleensä X-ikkunointiin liittyvistä kysymyksistä. Myös keskustelu ikkunanhallintaohjelmistoista (window managereista) ja X-ikkunoita käyttävistä työpöytäympäristöistä (CDE, KDE, GNOME...) kuuluu tähän ryhmään.
Tärkeää: Yritä välttää saman viestin lähetystä moneen Linux-ryhmään, koska silloin ryhmäjaottelusta ei ole mitään hyötyä.
Vaikka nyysseihin kirjoittaminen onkin hyvin vapaamuotoista, muutamia sääntöjä kannattaa noudattaa. Se helpottaa sekä sinun että muiden uutisryhmää seuraavien ihmisten elämää. Jos uutisryhmät ovat sinulle uusi asia, niin sinun kannattaa käydä lukemassa Timo Kiravuon news-etiketti ja Jukka Korpelan Nyysiopas. Tässä on tärkeimpiä neuvoja/sääntöjä, joita kannattaa noudattaa:
Kerro millainen laitteisto sinulla on, mitä ohjelmia käytät, mitä tarkalleen ottaen teit ja liitä viestiisi myös tarkka virheilmoitus. Muista kertoa myös käyttämiesi ohjelmien versiot.
Mikäli koneesi on ylikellotettu, tarkista, että vika ilmenee myös normaalilla kellotaajuudella. Linuxissa pienet laitteiston toimintahäiriöt tulevat esiin huomattavasti helpommin kuin eräissä muissa käyttöjärjestelmissä. Jos et saa vikaa toistumaan uudelleen, mainitse myös siitä.
Levityspaketin ja sen version mainitseminen on ehdottoman tärkeää!
Ei HTML-muotoisia artikkeleita! Kaikki eivät lue nyyssejä selaimella ja useat käyttävät tekstipohjaista lukijaa. Huomaa, että monet ohittavat automaattisesti viestit, jotka sisältävät HTML-koodia tai ovat multipart-muodossa. Lisäksi nyyssit ovat yleensäkin tekstimuotoinen keskustelujärjestelmä, jossa HTML-muotoisten viestien lähettämiseen ei ole mitään tarvetta.
Älä lähetä tiedostoja keskusteluryhmiin. Tiedostot kasvattavat turhaan artikkelisi kokoa ja useat nyyssipalvelimet jopa kieltäytyvät toimittamasta liitetiedostoja sisältävieä artikkeleita eteenpäin. Mikäli artikkelisi välttämättä tarvitsee tiedoston tuekseen, laita tiedostosi saataville Webbiin tai lähetä se Sfnetin ainoaan tiedostoryhmään, sfnet.tiedostot, ja viittaa siihen artikkelissasi.
On fiksua yrittää itse etsiä tietoa ongelmaan ennen kuin kirjoittaa ryhmään. Jos olet etsinyt tietoa muttet ole löytänyt sitä, kerro myös se viestissä.
Ole ystävällinen ja kirjoita selkeästi. Ihmiset auttavat sinua vapaaehtoisesti ja ystävällisyyttään, käyttäydy sen mukaisesti.
Tärkeää: Ennen kysymyksen lähettämistä lue Karri Kalpion kirjoittama Ohje hyvän kysymyksen kirjoittamiseen. Ryhmiin tulee aivan liikaa kysymyksiä, joihin on mahdoton vastata puutteellisten tietojen takia. Pystyt välttämään tämän lukemalla edellä mainitun ohjeen.
Jos olet esimerkiksi kääntämässä ydintä käskyllä make bzImage, niin saat virheilmoitukset tiedostoon seuraavalla tavalla:
$ make bzImage > make.out 2>&1 |
Jos haluat kopioida suoraan terminaali-ikkunasta, valitse hiiren vasemmalla napilla kopioitava alue ja liimaa se keskimmäisellä napilla. Jos keskimmäistä nappia ei ole, käytä sen sijaan molempia nappeja yhtäaikaa.
Toinen tapa tallettaa virheilmoitukset on script-komento. Script tallettaa lokitiedostoon sekä käyttäjän näppäilemän syötteen että stderr- ja stdout-tulostusvirrat. Komennon tuloste tulee näkyy näytölle. Script-komento on kätevä, jos haluaa seurata tapahtumien kulkua, vastata interaktiivisiin kysymyksiin tai tallettaa yhden komennon sijasta lokitiedostoon koko session (esimerkiksi koko kernelin kääntötapahtuman). Edellä olevan esimerkin olisi voinut tehdä script-komennon avulla seuraavasti:
$ script make.out Script started, file is make.out $ make bzImage [Tässä muita komentoja] $ exit Script done, file is make.out |
Tässä ovat eri levityspakettien tiedostot, jotka kertovat version. Tiedoston sisällön saat selville vaikka cat-käskyllä.
Debian: /etc/debian_version
Redhat: /etc/redhat-release
Slackware: /usr/lib/setup/slack-version-*
SOT: /etc/sot-release
Ikkunamanageri on ohjelma, joka X-ikkunoinnissa (engl. X Window System) huolehtii ikkunakehyksien piirrosta ja tekee mahdolliseksi ikkunoiden sulkemisen, siirtämisen, koon säätämisen sekä mahdollisesti sisältää muitakin toimintoja. Ikkunamanagereja on hyvin paljon, ja kokeneilla käyttäjillä on usein omat mieltymyksensä. Eri ikkunamanagerit voivat näyttää hyvinkin erilaisilta, ja sen lisäksi niiden ulkonäköä pystyy usein muokkaamaan hyvin paljon.
Työpöytäympäristö on kokoelma aliohjelmakirjastoja sekä ohjelmia, joilla on yhtenäinen ulkonäkö. Työpöytäympäristöt sisältävät yleensä ainakin tiedostonhallintaohjelman, jonkinlaisen Windowsin tehtäväpalkkia vastaavan keinon ohjelmien käynnistykseen ja pikkusovelmien käyttämiseen, sekä lisäksi monenlaisia sovellusohjelmia. Ohjelmoijille työpöytäympäristöt tarjoavat laajan valikoiman erilaisia ohjelmien kehitystä helpottavia kirjastoja sekä ohjelmia. Ikkunamanageria ei pidetä työpöytäympäristön kiinteänä osana, mutta useimmiten työpöytäympäristön mukana tulee myös ikkunamanageri, joka on suunniteltu toimimaan mahdollisimman hyvin työpöydän muiden osien kanssa.
Tärkeää: Lähes kaikkia X-ohjelmia voi ajaa käytetystä työpöytäympäristöstä ja ikkunamanagerista riippumatta. Esimerkiksi Gnomessa voi käyttää koneelle asennettuja KDE-ohjelmia ja päinvastoin.
GNOME on käyttäjäystävällinen työpöytäympäristö Unixiin, siis myös Linuxiin. Se tulee mukana useimmissa levityspaketeissa. Gnome vaatii vähintään 32-64 megatavua muistia, mieluiten enemmän.
KDE on myös käyttäjäystävällinen työpöytäympäristö UNIXiin. Se tulee myös mukana useimmissa levityspaketeissa, ja sopii hyvin sekä aloittelijoille että kokeneemmille käyttäjille. KDE vaatii vähintään 64-128 megatavua muistia, mieluiten enemmänkin.
XFce vaatii Gnomea ja KDE:tä vähemmän muistia ja prosessoritehoa sekä muistuttaa eniten isoissa Unix-työasemissa käytettävää CDE-työpöytäympäristöä. Kokeilemisen arvoinen ainakin, mikäli muut vaihtoehdot eivät miellytä tai eivät toimi kunnolla vanhassa koneessa.
Ehkä paras tapa on asentaa Linux kaupasta ostetulta CD:ltä. Hyvinvarustetuissa atk-kaupoissa on myynnissä eri levityspakettien virallisia versiota, jotka saattavat sisältää joitakin kaupallisia ohjelmia, joita ei ilmaisversion mukana saa. Lisäksi virallisten versioiden mukana saattaa saada asennus- ja muita tukipalveluita. CD:n voi tehdä myös itse, tai sen voi teettää jollain kaverilla, sillä kaikki asennukseen vaaditut ohjelmistot löytyvät Internetistä. Mikäli sinulla on nopea yhteys Internetiin, niin Linuxin voi asentaa myös suoraan netistä. Esimerkiksi ftp.funet.fi sisältää suosituimpien levityspakettien kopiot.
Kaikenkaikkiaan Linuxin voi asentaa seuraavilla tavoilla: boottaava CD-ROM, boottikorput ja CD-ROM, boottikorput ja asennustiedostot DOS-osiolla, sekä asennuksen käynnistäminen DOSista asennus-CD:ltä. Verkon kautta asennus onnistuu suoraan Internetistä tai NFS-palvelimelta. Kone voidaan käynnistää joko boottikorpulta tai verkkokorttiin lisävarusteena asennettavalta bootti-PROMilta. Eri levityksien asennusmahdollisuuksissa on eroja.
Se on mielipidekysymys, joten on turha kysyä, mikä on paras vaihtoehto. Jokaisella levityspaketilla on omat etunsa ja haittansa. Sinun täytyy vain vertailla niiden ominaisuuksia ja valita se joka vastaa parhaiten sinun vaatimuksiasi.
Ari Mäkelä on kirjoittanut mielipiteitään eri levityksistä.
Vanhoihin tietokoneisiin, joissa on vähän muistia ja kovalevytilaa, ei voi asentaa kaikkia Linux-jakeluja. Esimerkiksi Red Hat 7.2:n asentaminen vaatii vähintään 64 MB muistia ja 350 MB kovalevytilaa.
Yksi vaihtoehto on asentaa vanha jakeluversio, joka voi toimia vanhemmassakin koneessa. Tämä ei kuitenkaan välttämättä ole viisasta. Vanhentuneiden käyttöjärjestelmäjakeluiden mukana tulee vanhentuneita ohjelmia. Vanhoissa käyttöjärjestelmäjakeluissa on myös lukuisia tunnettuja tietoturva-aukkoja, eikä niihin ole välttämättä saatavana ajanmukaisia korjauksia (tai jos onkin, niin niitä tuskin tullaan ylläpitämään kauan).
Parempi vaihtoehto on asentaa ajanmukainen käyttöjärjestelmäjakelu, joka toimii vähäisemmällä muistilla ja levytilalla. Esimerkiksi seuraavat jakelut asentuvat vähäisemmilläkin resursseilla varustettuihin koneisiin (dokumentaationsa mukaan):
Slackware Linux 8.0: 16 MB muistia ja 50 MB kovalevytilaa
Debian GNU/Linux 2.2: 12 MB muistia ja 64 MB kovalevytilaa
Myös BSD-perheen käyttöjärjestelmät ovat harkinnan arvoinen vaihtoehto. Niiden asentamisen ja käyttämisen ei pitäisi tuottaa vaikeuksia, jos osaa käyttää Linuxia ilman graafisia konfiguraatiotyökaluja. Hyvä vaihtoehto vanhoihin koneisiin on esimerkiksi NetBSD, jonka minimi-installaatio vaatii vain 4 MB muistia ja 40 MB kovalevytilaa (1.5.2, i386).
Linuxin käynnistysvaiheessa käytetään usein LILO-ohjelmaa lataamaan ydin muistiin ja käynnistämään se. LILO käyttää koneen sisäänrakennettuja BIOS-kutsuja lukemaan ytimen kovalevyltä muistiin. LILOn käyttämät BIOS-kutsut eivät osaa lukea vanhoissa koneissa yli 512 megatavun ja uusissa koneissa yli 8 gigatavun yli menevää osaa levyltä.
/boot-osio on tarkoitettu vain ytimen tallettamiseen, ja sille sopiva koko on 10 megatavua. Se pitää mielellään sijoittaa levyn alkupäähän, jotta LILO pystyy lataamaan ytimen BIOSin tuntemalta levyalueelta. Mikäli saat asennuksen aikana ilmoituksen "boot partition too big" tai LILOn asennus epäonnistuu, olet tehnyt osion, josta ainakin osa ei ole 512 megatavun tai 8 gigatavun rajan sisällä.
Tärkeää: Tämä rajoitus koskee vain Linuxin käynnistystä. Ydin ei käytä BIOS-kutsuja, eikä siinä ole rajoituksia kiintolevyn koolle. Nämä rajoitukset eivät myöskään koske uusissa levitysversioissa käynnistyslataajana käytettävää GRUB-ohjelmaa. Myöskään SCSI-levyltä käynnistettäessä rajoitusta ei ole, tosin SCSI-levyjä käytetään lähinnä palvelimissa.
Jos asennat koneelle DOS- tai Windows-käyttöjärjestelmän Linuxin asennuksen jälkeen, se saattaa poistaa Linuxin käynnistysohjelman kovalevyn käynnistyslohkolta. Tilanteen saa palautettua entiselleen käynnistämällä Linuxin käynnistyslevykkeellä ja käynnistämällä ohjelma lilo, joka asentaa käynnistysohjelman käynnistyslohkoon.
Useissa levityksissä varakäynnistyslevykkeen (engl. rescue disk) teko onnistuu asennusvaiheessa, tai levityspaketin mukana tuleva romppu mahdollistaa myös hätäkäynnistyksen, mikäli tietokoneesi pystyy käynnistymään CD-ROM-levyltä. Redhatissa voi tehdä varakäynnistyslevykkeen komennolla mkbootdisk.
Mikäli levityksesi mukana ei tule erityisiä työkaluja varakäynnistyslevykkeen tekoon, ytimen voi kopioida levykkeelle komennolla dd if=/boot/vmlinuz of=/dev/fd0, jolloin hätätilanteessa voi käynnistää koneen levykkeellä olevalla ytimellä, mikäli Linux-osiosi on muuten riittävän ehjä. Tarkemmin käynnistyslevykkeen teosta kerrotaan osiossa Miten teen käynnistyslevykkeen?
Tärkeää: Mikäli käynnistys levykkeeltä ei onnisty, tarkista, että koneesi BIOS-asetuksissa on sallittu käynnistys levykkeeltä ja että käyttämäsi levyke on ehjä.
Yleisimmät ongelmat asennuslevykkeiden kanssa johtuvat siitä, että levyke on yksinkertaisesti rikki. Ne menevät rikki helposti, ja niihin ei voi luottaa. Heitä vanha roskiin ja kokeile uutta levykettä. Jospa uusi vaikka toimisi.
Linux-käyttöjärjestelmässä, kuten muissakin UNIX-pohjaisissa käyttöjärjestelmissä, on mahdollisuus käyttää useita käyttäjätunnuksia. Käyttäjätunnus on kokonaisuus johon kuuluu tunnus, salasana, komentotulkki (engl. shell) ja kotihakemisto. (näiden tarkoituksesta myöhemmin lisää) Perinteisesti Linuxin käyttäjätunnukset ovat tiedostossa /etc/passwd, joka näyttää tällaiselta:
Esimerkki 2-1. /etc/passwd
root:AAAAAAAAAAAAA:0:0:root:/root:/bin/tcsh esko:BBBBBBBBBBBBB:500:100:Esko Peruskayttaja:/home/esko:/bin/tcsh |
Tiedostossa olevat merkinnät ovat erotettuna ':'- merkillä. Jokainen rivi on uusi käyttäjätunnus. Rivit tiedostossa ovat muotoa:
tunnus : salasana : UID : GID : kommentti : kotihakemisto : komentotulkki |
Jokaisen kohdan erillinen selitys:
Tämä on käyttäjätunnus. Järjestelmässä ei voi olla kahta samannimistä tunnusta käytössä yhtäaikaa.
Vanhemmissa järjestelmissä (kuten tässä on oletettu) tällä kohdalla on salasana salattuna crypt-funktiolla. Uudemmissa järjestelmissä (jotka käyttävät ns. Shadow-järjestelmää) on tällä kohdalla pelkkä x (tai *), ja oikea salattu salasana sijaitsee /etc/shadow-tiedostossa, jossa on myös muuta tietoa ko. käyttäjästä. Salasanaa voi jokainen käyttäjä vaihtaa passwd-komennolla. Käyttäjän ei tarvitse huolehtia itse salasanan salauksesta vaan passwd-ohjelma tekee sen käyttäjän puolesta. Lisäksi passwd-komento "huomaa" myös /etc/shadow-tiedoston ja päivittää salasanan sinne ilman käyttäjän puuttumista. Yleensäottaen vanhemman Linux/UNIX-järjestelmän salasanat eivät ole kovin turvallisia, sillä salasanan enimmäispituus on vain kahdeksan merkkiä. Nykyään useissa levityspaketeissa voi valita asennusvaiheessa MD5-kryptatut salasanat, jolloin pituusrajoitus ei ole voimassa (eivät ole yleensä yhteensopivia muiden UNIX-järjestelmien kanssa).
Joka tapauksessa on tärkeää, että salasana valitaan huolella. Salasanan tulisi olla ainakin 8 merkkiä pitkä ja sen tulisi sisältää pieniä ja isoja kirjaimia sekä numeroita. Esimerkkejä HUONOISTA salasanoista ovat sellaiset, jotka ovat arvattavissa tai jotka sisältävät joitain yleisiä suomen- tai englanninkielisiä (tai muunkielisiä) sanoja. HYVÄT salasanat ovat muotoa "hDuuJ3K1", ne eivät ole arvattavissa.
UID on jokaiselle käyttäjälle /etc/passwd-tiedostossa määrätty User ID-numero. Jokaista numeroa (yhdessä järjestelmässä) vastaa tasan yksi tunnus.
GID (Group ID-number) on (pää-)käyttäjäryhmä, johon ko. tunnus kuuluu. Käyttäjäryhmät ja niitä vastaavat numerot ovat listattuna tiedostossa /etc/group. Käyttäjä voi olla yhtä aikaa monen ryhmän jäsen, jolloin muut ryhmät määritellään tiedostossa /etc/group rivin viimeisenä kenttänä.
Yleensä käyttäjän koko nimi.
Käyttäjän kotihakemisto. Kirjautumisen yhteydessä tämä kirjataan käyttäjäkohtaiseen ympäristömuuttujaan $HOME.
Ohjelma joka ajetaan sisäänkirjautumisen yhteydessä. Yleensä tämä on komentotulkki, joka välittää komentosi Linux-järjestelmälle. Komentotulkkeja ovat esim. tcsh, bash, zsh, ksh ...
Käyttäjätunnuksella root on oikeus lukea, kirjoittaa ja ajaa kaikkien muidenkin käyttäjien tiedostoja, ja komennot eivät juurikaan kysele varmistuksia vaan olettavat, että käyttäjä tietää tarkalleen mitä on tekemässä. Lisäksi rootin käynnistämillä ohjelmilla on oikeus käsitellä kaikkia laitteita tietokoneessasi kovalevystä näytönohjaimeen. Tämä tarkoittaa sitä, että root-tunnuksella todellakin voi saada Linux-järjestelmänsä tuhottua. Käyttämällä jotain toista tunnusta suojaat järjestelmäsi tahattomilta virhenäppäilyiltä. Sen vuoksi olisi aina suotavaa luoda Linux-järjestelmään erillinen tunnus, jota käyttää jokapäiväisessä käytössä. Seuraavassa esimerkki uuden tunnuksen luomisesta (# merkkaa käskyt jotka sinä kirjoitat): (kirjaudu sisään root-tunnuksella)
# cat /etc/passwd root:x:0:0:root:/root:/bin/tcsh bin:x:1:1:bin:/bin: daemon:x:2:2:daemon:/sbin: adm:x:3:4:adm:/var/adm: lp:x:4:7:lp:/var/spool/lpd: sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail: news:x:9:13:news:/var/spool/news: uucp:x:10:14:uucp:/var/spool/uucp: operator:x:11:0:operator:/root: ftp:x:14:50:FTP User:/home/ftp: jatorvin:x:503:100:Jarmo Torvinen:/home/jatorvin:/bin/tcsh |
lisätään uusi tunnus:
# useradd heppu |
Komento lisää uuden käyttäjän, luo käyttäjän kotihakemiston ja kopioi tiedostot hakemistosta /etc/skel uuteen kotihakemistoon. Käyttäjän luomisessa käytetään oletusarvoja.
Katsotaan, että tunnus varmasti lisättiin. Kaikissa järjestelmissä ei käytetä tiedostoa /etc/shadow, jolloin kryptatut salasanat ovat tiedostossa /etc/passwd. Shadow-tiedosto on vain root-tunnuksen luettavissa, ja sen takia turvallisempi.
Esimerkki 2-2. /etc/passwd
root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin: daemon:x:2:2:daemon:/sbin: lp:x:4:7:lp:/var/spool/lpd: sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail: news:x:9:13:news:/var/spool/news: uucp:x:10:14:uucp:/var/spool/uucp: operator:x:11:0:operator:/root: ftp:x:14:50:FTP User:/home/ftp: jatorvin:x:503:100:Jarmo Torvinen:/home/jatorvin:/bin/tcsh heppu:x:506:506::/home/heppu:/bin/bash |
Esimerkki 2-3. /etc/shadow
root:hdh5Fdhsgd:10450:0:99999:7::: bin:*:10450:0:99999:7::: daemon:*:10450:0:99999:7::: lp:*:10450:0:99999:7::: sync:*:10450:0:99999:7::: shutdown:*:10450:0:99999:7::: halt:*:10450:0:99999:7::: mail:*:10450:0:99999:7::: news:*:10450:0:99999:7::: uucp:*:10450:0:99999:7::: operator:*:10450:0:99999:7::: ftp:*:10450:0:99999:7::: jatorvin:hj67HDfsWgpW:10482:0:99999:7:-1:-1:134529876 heppu:!!:10577:0:99999:7::: |
Käyttäjälle ei ole vielä asetettu nimeä tai salasanaa, joten asetetaan ne seuraavaksi:
# chfn heppu Changing finger information for heppu. Name []:Heppu Heppunen Office []: Office Phone []: Home Phone []: Finger information changed. # passwd heppu Changing password for user heppu New UNIX password: näppäile salasanasi Retype new UNIX password:näppäile salasana uudelleen passwd: all authentication tokens updated successfully |
Nyt olet luonut koneellesi uuden käyttäjän, ja asettanut sille nimen sekä salasanan. Voit kokeilla vasta luomaasi käyttäjää lopettamalla istunnon root-tunnuksella ja antamalla Login-kehotteeseen vasta luomasi käyttäjän tunnuksen ja salasanan.
Uudemmissa järjestelmissä voit muuttaa joitain käyttäjän luontiin käytettäviä arvoja muokkaamalla tiedostoja /etc/login.defs ja /etc/default/useradd.
Jos käytät konetta tekstitilassa, voit käyttää useampaa yhtäaikaista istuntoa valitsemalla näppäimillä Alt+F1-F6 käyttämäsi virtuaalikonsolin. Jos käytät X-ikkunointia, voit käyttää näppäimiä Ctrl+Alt+Fn päästäksesi virtuaalikonsoleille. X-ikkunointi käynnistyy ensimmäiselle vapaalle konsolille, yleensä numerolle 7.
Mikäli käytät konettasi verkon kautta pääteohjelmalla, virtuaalikonsolit eivät ole käytettävissä. Sen sijaan voit käyttää ohjelmaa nimeltä screen , jolla voit käyttää useampia virtuaalikonsoleita myös verkkoyhteyden kautta.
Suomen käyttöön liittyviä ongelmia tutkii Ari Mäkelä klassikossaan Finnish HOWTO.
Jussi Torhonen on kirjoittanut Howto make a homebrew bootable RedHat Linux 5.2 CD-ROM-ohjeen. Debian tekee viralliset ISO-imaget, jotka löytyvät funetista. Jos haluat tehdä omat debian imaget, kannattaa tutustua ohjelmaan slink_cd, joka löytyy osoitteesta http://www.chiark.greenend.org.uk/~stevem/DebianCD/.
Ainoastaan poikkeustapauksissa, esimerkiksi jos on tuhonnut vahingossa kaikki järjestelmän tiedostot. Vikojen korjaaminen tehdään normaalisti etsimällä vian syy ja korjaamalla se, ei uudelleenasentamalla.
RedHat 8.0:ssa on otettu käyttöön UTF-8-merkistö, jossa on lähes kaikki eri puolilla maailmaa käytetyt merkistöt yhdistettynä. Tämä tulee myöhemmin ratkaisemaan ongelmat, jotka aiheutuvat lukuisten eri merkistöjen käytöstä. Koska käytännössä Suomessa käytetään nykyisin yleisesti ISO-8859-15-merkistöä, tästä muutoksesta voi tulla ongelmia skandinaavisten merkkien tulostuksen kanssa. Tekemällä allaolevat muutokset siirrytään takaisin vanhaan merkistöön, joka on nykyisin yleisimmin käytössä.
Versionumerot ovat muotoa r.x.y. Kun x on parillinen numero, on kyseessä vakaa eli tuotantoversio. Pariton luku tarkoittaa kehitysversiota, jonka toiminnasta ei ole mitään takuuta. y:n muuttuminen tarkoittaa että muutos on ollut pieni, esim. löydettyjen virheiden korjauksia tai jotain lisäyksiä toimintoihin.
Varoitus |
Älä missään nimessä asenna ytimen kehitysversiota (esim. 2.5-sarjaa) jollet tiedä mitä olet tekemässä! Eräät kehitysversiot ovat jopa tuhonneet tiedostojärjestelmiä, joten varmuuskopioiden ottaminen ennen kehitysytimen kokeilua on erittäin suositeltavaa. Jos käytät kehitysversiota, älä kysy myöskään apua sfnet-uutisryhmistä - sinun tulisi osata ratkaista ongelmatilanteet itse. |
uname -a kertoo mikä ytimen versio on käytössä, koska se on käännetty ja mikä arkkitehtuuri on kyseessä.
Helsingin yliopiston Tietojenkäsittelytieteen laitoksen palvelimella on skripti, joka kertoo automaattisesti uusimmat versiot. Tai voit myös käyttää fingeriä: finger @ftp.kernel.org
Uusimman ytimen löydät lähimmästä kernel.org-peilistä. Myöskin levityksen mukana tulee lähdekoodi omana pakettina (deb tai rpm), joka voidaan helposti asentaa ja poistaa.
System.map luodaan kernelin käännöksen yhteydessä lähdekoodipuun juureen (eli yleensä hakemistoon /usr/src/linux) ja se sisältää kernelin sisäisten muuttujien ja funktioiden muistiosoitetietoja. System.map-tiedostoa käyttää hyväkseen prosessi nimeltään klogd, eli kernelin oma lokiprosessi.
Uudet klogd:n versiot osaavat etsiä myös tiedostoja nimeltään /boot/System.map-kernelinversio, joten symbolista linkkiä System.map ei tarvitse enää käyttää tai luoda, kunhan noudattaa tätä nimeämiskäytäntöä. Kernelin version saa selville ajoaikana komennolla cat /proc/version.
Jos osa ytimestä on käännetty tarpeen vaatiessa ladattaviksi moduuleiksi, joillekin moduuleille voi olla tarpeellista antaa parametrejä niitä ladattaessa. Esimerkiksi äänikortin ajurille täytyy antaa tieto äänikortin käyttämistä resursseista, kuten io-osoite, irq ja dma-kanava. PCI-lisäkorttien ajurit löytävät kortit yleensä automaattisesti, samoin jotkut muut ajurit.
On olemassa kaksi mahdollista tapaa antaa parametrejä moduuleille.
/etc/modules.conf-tiedoston avulla.
man depmod tai man modprobe kertoo lisää kyseisen tiedoston formaatista. Kyseiseen tiedostoon asetetut parametrit välittyvät moduulille sekä komentoa modprobe käsin käytettäessä että automaattisen lataamisen yhteydessä, eli käytettäessä kmod-ohjelmaa.Jos Linux-levityksestäsi ei löydy tiedostoa /etc/modules.conf, on mahdollista, että käytät vanhaa distribuutiota, jossa tiedoston nimi on /etc/conf.modules.
Ladattaessa moduuli käsin insmod-komennolla
#insmod sb io=0x220 irq=5 dma=1 dma16=5 |
Huomaa: Ytimen kääntämistä ei suositella aloittelijoille! Toisin kuin Linuxin alkuaikoina, ytimen kääntäminen on nykyisin harvemmin tarpeellista. On suositeltavaa tutustua Linuxiin jonkun aikaa, ennen kuin yrität kääntää ydintä itse. Jollet ole aiemmin kääntänyt mitään ohjelmia, on suositeltavaa myös tutustua pintapuolisesti käännöksessä käytettyjen työkalujen, kuten make, toimintaperiaatteeseen.
Varmista että ytimen lähdekoodi on asennettu. Levityksen mukana toimitettava löytyy /usr/src/linux/-hakemistosta, mutta itse asennetun lähdekoodin voi kääntää myös kotihakemistonsa alla normaalina käyttäjänä, mikä on 2.4-ytimillä ja uudemmilla suositeltavin tapa.
Kun ensimmäistä kertaa valitset ytimeen mukaan otettavia ominaisuuksia, lue ohjeet jokaisen valinnan kohdalta. Siellä kerrotaan lisää kyseisestä ominaisuudesta ja annetaan suosituksia, joita kannattaa noudattaa, jos ei todella tiedä itse paremmin. Ytimestä on mahdollista poistaa paljon ominaisuuksia, jotka ovat normaalikäytössä hyvin oleellisia, mutta usein tarpeettomia johonkin erityiskäyttöön tarkoitetussa järjestelmässä.
Ytimen kääntö on ytimekkäästi tässä (tähdellä [*] merkityt kohdat ovat vapaaehtoisia):
Tarkista, että sinulla on toimiva hätäkäynnistyslevyke tai vastaava siltä varalta, että itse kääntämäsi ydin ei pysty käynnistymään laitteistossasi.
Asenna ytimen lähdekoodi, jos sitä ei ole vielä asennettu.
Jos asensit levityksesi mukana tulevan lähdekoodin, tarkista, että hakemisto /usr/src/linux on olemassa ja lähdekoodi on todella asennettu hakemiston alle.
Vanhemmissa levityksissä (erityisesti Redhat Linuxin versiot 6.2 ja vanhemmat), /usr/include/asm ja /usr/include/linux ovat symbolisia linkkejä, jotka osoittavat yleensä hakemistoihin /usr/src/linux/include/asm ja /usr/src/linux/include/linux. Tässä tapauksessa täytyy tarkistaa, että linkit osoittavat olemassaoleviin hakemistoihin. Ajanmukaisissa järjestelmissä nämä ovat normaaleja hakemistoja, eikä niihin pidä koskea.
Siirry hakemistoon, jossa on ytimen lähdekoodi. Usein tämä on hakemisto /usr/src/linux. Tässä hakemistossa ajetaan käännökseen liittyvät komennot, sillä käännöstä ohjaava make-ohjelma hakee toimintaohjeensa työhakemistossa sijaitsevasta Makefile-tiedostosta.
Ytimen kääntämisen aikana näytölle tulee runsaasti tekstiä, mikä on aivan normaalia. Muista tarkistaa, onnistuiko kääntäminen todella, vai onko viimeinen näytöllä oleva teksti virheilmoitus (error).
Varoitus |
Varmista ennen jokaisen vaiheen aloittamista, että edelliset vaiheet on suoritettu onnistuneesti. Jos et ole varma asiasta, älä jatka ytimen kääntämistä. Ole erityisen varovainen asentaessasi uutta ydintä käyttöön, koska siinä tapahtuneet virheet voivat estää koko järjestelmän toiminnan. |
aja haluamasi patchit (päivitykset) ytimeen. [*]
make mrproper, nykyään tarpeeton. [*]
make config, make menuconfig tai make xconfig ja säädä ytimesi asetukset kuntoon.
make dep
make clean
make bzImage tai mahdollisesti sen sijaan make zImage. Näillä ei ole muuten eroa, paitsi bzImage-kernelin ei tarvi mahtua 640 kilotavun perusmuistiin (PC-koneiden historiallinen jäänne) ja siinä voi siten olla enemmän ominaisuuksia mukana. Joillakin harvoilla koneilla bzImage-kernel ei käynnisty, mutta muuta syytä olla käyttämättä sitä ei ole. zImagen käyttäminen aiheuttaa todennäköisemmin hankaluuksia.
make modules
rm -rf /lib/modules/2.4.18.old
mv /lib/modules/2.4.18 /lib/modules/2.4.18.old
make modules_install
cp /usr/src/linux/arch/i386/boot/bzImage /boot/kernel-2.4.18
cp /usr/src/linux/System.map /boot/System.map
muokkaa lilon asetukset kuntoon
asenna lilo.
muokkaa moduulien asetukset kuntoon
Käynnistä kone uudelleen.
Lisää tietoa löytyy Kernel HOWTOsta ja tiedostosta /usr/src/linux/README.
Jos käytät liloa kopioi vanha ydin /boot-hakemistoon ja lisää lilo.conf osoittamaan siihen. Jätä myöskin mahdollisuus käynnistää vanha ydin.
Tässä eräs tapa. /vmlinuz on symbolinen linkki /boot/vmlinuz-2.4.18-tiedostoon.
Debianissa ytimen kääntöä on helpotettu huomattavasti. kernel-package paketti sisältää apuohjelman, joka kääntää ytimen ja tekee siitä automaattisesti deb-paketin. /vmlinuz ja vmlinuz.old ovat symbolisia linkkejä /boot-hakemistossa oleviin ytimiin ja debian päivittää nämä linkit automaattisesti. Tässä pieni ohje miten kääntäminen tapahtuu:
make config, menuconfig tai xconfig
make-kpkg clean
make-kpkg --revision=custom.1.0 kernel_image
dpkg --install ../kernel-image-X.XXX_1.0_<arch>.deb
shutdown -r now
Lisää tietoa saat tiedostosta /usr/doc/kernel-package/README.gz
Yksi mahdollisuus on, että jossain vaiheessa symbolinen linkki hakemistosta /usr/include/linux on kadonnut tai jotain muuta. Tällainen symbolinen linkki pitäisi olla olemassa:
$ ls -l /usr/include/linux lrwxrwxrwx 1 root root 26 May 28 13:34 /usr/include/linux -> ../src/linux/include/linux |
Tarkista, että myös hakemisto /usr/src/linux/include/linux löytyy ja siellä on oikeat otsikkotiedostot. Hakemistolistaus alkaa näin (eri kernelin versioissa voi olla eroja, tämä on 2.2.5):
a.out.h acct.h . . . if_slip.h if_strip.h . . . prctl.h proc_fs.h |
Toinen vaihtoehto on, että et ole asentanut Redhatin ns. devel-paketteja. Redhatissa on kahdenlaisia paketteja: loppukäyttäjän ohjelmien käyttämiseen tarvittavat tiedostot ovat yhdessä paketissa ja ohjelmien kehittämiseen ja/tai kääntämiseen tarvittavat paketit toisessa. Paketit ovat muuten saman nimisiä, mutta kehityspakettien nimessä on "devel".
Jos saat tällaisen virheen:
make[1]: as86: Command not found |
Jos koneen uudelleenkäynnistyksessä kone jumiutuu kohtaan "Checking module dependencies", sinulla on edelleen käytössä vanhan kernelisi moduuleja. Tähän ongelmaan auttaa vanhojen moduulien poisto ennen moduulien asennusta. Vanhat moduulit kannattaa kuitenkin varmuuden vuoksi säilyttää.
Ensin käännetään ydin ja moduulit, mutta ei vielä asenneta niitä.
Siirretään vanhat moduulit talteen:
# cd /lib/modules # ls -l total 4 drwxr-xr-x 11 root root 4096 Dec 8 20:41 2.2.12-20 # mv 2.2.12-20 2.2.12-20.old |
Seuraavaksi asennetaan uusi ydin ja sen moduulit.
# cd /usr/src/linux # make install; make modules_install |
Nyt koneen pitäisi löytää seuraavassa käynnistyksessä oikeat moduulit.
Luultavasti et ole kääntänyt verkkotukea [1] tai Unix domain socket-tukea mukaan ytimeen. Vaikkei sinulla olisikaan verkkoa, monet Linux-ohjelmat, kuten X-ikkunointi, kommunikoivat myös koneen sisäisesti käyttäen soketteja, ja vaativat siksi verkkotuen. Käännä verkkotuki aina mukaan ytimeen, jollet ole aivan varma ettet tarvi sitä. Myös tästä varoitetaan ytimen käännösohjeissa, joten lue käännösohjeet!
Toinen mahdollisuus on, että olet käyttänyt väärää kääntäjäversiota ytimen kääntöön. 2.0-sarjan ytimessä on ohjelmointivirhe, joka ei tullut esiin silloisella C-kääntäjän versiolla. Uudemmilla kääntäjillä virhe tulee esiin, ja sen yksi seuraus on X:n toimimattomuus. 2.0-kernelien kääntöön suositellaan gcc:n versiota 2.7.2.3 ja 2.2-ydinten kääntöön versiota egcs 1.1.2. 2.4-sarja kääntyy ainakin versioilla gcc 2.95.3 (suositeltava) ja sitä uudemmilla.
System.map ei kopioitu.
/etc/lilo.conf ei päivitetty ja liloa ei ajettu.
Vanhoja moduleita ei poistettu alta pois hakemistosta /lib/modules/.
/etc/modules.conf (Debianissa on eriävä käytäntö, katso Miten Debianissa määritellä ytimeen ladattavat modulit?>).
Kernel panic: VFS: Unable to mount root fs on 03:01 |
Jos ydin antaa käynnistyessä edellisen virheen, kannattaa toimia seuraavasti:
Onko juuren tiedostojärjestelmä virheilmoituksen ilmoittama laite?
Virheessä 03:01 tarkoittaa laitetta /dev/hda1 ja esimerkiksi 03:05 laitetta /dev/hda5. Näistä numeroista tarkemmin kertoo ytimen dokumentaation mukana tuleva devices.txt.
Sisällytitkö ytimeesi tuen sille tiedostojärjestelmälle, mitä juuresi sisältää? (ext3 tms) Se ei saa olla modulina, vaan kiinteästi käännettynä ytimeen. (Modulien lataamiseksi tarvitaan tiedostojärjestelmä.)
Sisällytitkö ytimeen tuen kovalevyllesi? Tarkista ettei esim. IDE- tai SCSI-ajuri ole modulina.
Tämä kortti perustuu Ensoniqin piiriin es1370 tai es1371. Piirisarjan saat selville käskyllä
$ cat /proc/pci |
Esim. 2.2-sarjan sekä Red Hat 5.2:n mukana tulleissa ytimissä on tuki tälle kortille.
Sellaiset modeemit, joissa lukee "winmodem" eivät pääsääntöisesti toimi linuxissa. Kannattaa tarkistaa Winmodems are not modems sivuilta mitkä PCI-modeemit toimivat. Linmodem-projektin kotisivuilta löytyy ajureita joillekin windows-modeemeille sekä muita lisätietoja.
USB-tuki Linuxissa on vielä kehitysvaiheessa. 2.4-sarjan ytimissä ja useissa uusimmissa levityspaketeissa on perustason USB-tuki ainakin USB-näppäimistölle ja hiirelle. Kannattaa tutkia Linux USB projektin sivuja ja myöskin lukea The Linux USB sub-system ohje.
Aiheesta kertoo esimerkiksi O'Reilly Networkin ohje.
Ytimen versiossa 2.2.14 ei ole vielä tukea, mutta 2.4-sarjan ytimissä se on jo mukana. Erillinen patch on olemassa HPT366-ohjaimelle. Dokumentaatiota ovat Linux Ultra-DMA Mini-Howto ja Linux HPT366 mini-HOWTO.
Jos käytät IDE CD-R asemaa, niin lisää seuraavanlaisia rivejä tiedostoon /etc/modules.conf (tai jos käytät Debiania katso Miten Debianissa määritellä ytimeen ladattavat modulit?>:
Esimerkki 3-3. IDE CD-R aseman modulit
alias scd0 sr_mod # load sr_mod upon access of scd0 alias scsi_hostadapter ide-scsi # SCSI host adaptor emulation options ide-cd ignore=hdd # if /dev/hdd is your CD-writeralias |
Tässä /dev/hdd on CD-R-aseman laitetiedosto, vaihda siihen oma asemasi. Tämän jälkeen voit kokeilla seuraavalla käskyllä aseman löytymistä:
# cdrecord -scanbus |
CD-Writing HOWTO on kattava dokumentti CD-R aseman asentamisesta ja käyttämisestä.
Debian 2.2 lähtien ladattavat modulit määritellään /etc/modutils-hakemistossa olevissa tiedostoissa.
Linux käyttää ylimääräisen muistin automaattisesti levyn välimuistina, juuri kuten kunnollisen käyttöjärjestelmän kuuluukin tehdä.
Linux Documentation Project (LDP) sisältää paljon erilaisia oppaita ja jopa kirjojen osia. Varsinkin HOWTO-dokumentit ovat lukemisen arvoisia. Yleensä HOWTO-dokumentit tulevat distribuution mukana ja sijaitsevat /usr/doc/HOWTO- tai /usr/share/doc/HOWTO-hakemistossa.
Matt Welshin Installation and Getting Started Guide on suositeltavaa luettavaa aloittelijalle ja löytyy LDP:n sivuilta. Se on julkaistu myös kirjana, jota myydään Suomessakin.
Eri levityksillä on omat ohjekirjansa, jotka tulevat valmistajien virallisten myyntipakettien mukana. Ne ovat usein saatavilla myös verkosta, mutta asennuksen aikana painetun ohjekirjan luku on todennäköisesti helpompaa. Seuraavilla levityksillä on suomenkieliset asennusoppaat (levitykset aakkosjärjestyksessä):
Ennen kuin lähetät kysymyksen sal-ryhmään, on hyvä hakea itse vastaus kysymykseen. Koska kaikki toiminta linux-yhteisössä on vapaaehtoista, edellytetään että on itse tehty jotain ongelman ratkaisun eteen. Esim. luettu manuaalit ja fakit sekä etsitty nyysseistä ja webistä. RTFM, Read The Fine Manual (tai Read The Fscking Manual), käskyä kannattaa noudattaa. Ja sitä paitsi saat vastauksen paljon nopeammin kuin odottaisit monta päivää, että joku vastaa nyysseissä. Ainoa ongelma on, että etsiminen on hankalaa.
Katso LDP, jossa kerrotaan Linux Documentation Projektista.
Myöskin kannattaa käyttää oman levityksesi dokumentteja. FAQ ja errata useimmiten vastaavat kysymykseesi, joten nämä kannattaa aina lukea. Muutenkin levityksen webbisivuihin kannattaa tutustua seikkaperäisesti. /usr/doc/ sisältää eri pakettien ohjetiedostot.
Google Groups on www-pohjainen nyyssien hakuagentti ja sieltä löydät myöskin sfnet.atk.linux-ryhmiin lähetyt viestit. (Esim. Linus Torvaldsin kirjoittamia viestejä .) Kuuluu hyvään käytökseen tarkistaa onko kysymys kysytty ryhmässa lähiaikoina ja Dejan avulla saat sen nopeasti selville.
Ikävä kyllä Deja on hyvin sekavan näköinen sivusto, ja sen käyttäminen ei ole helppoa. Power Search sivulla saat etsittyä haluamiasi viestejä. Laitat vain kohtaan forum sfnet.atk.linux* ja etsit sopivien hakusanojen kanssa niin löydät nopeasti aiheeseen liittyviä viestejä. Jukka Korpelan sivuilla on myös hyviä ohjeita sfnet-ryhmistä hakemiseen.
Toinen vaihtoehto on käyttää Jeremy Nixonin tekemää Dejan hakusivua.
Jollei nyysseistä löydy mitään webistä voi löytyä jotain. Webistä hakemiseen voi käyttää esim. näitä hakukoneita:
Tähän vastaa parhaiten Linux Hardware Compatibility HOWTO, jossa on melko ajantasalla oleva lista tuetuista/tukemattomista laitteista.
Suomen Linux-käyttäjien yhdistys . Yleistä tietoa, ohjelmointioppaita, tietoa tulevista tapahtumista.
Muista, että GNU/Linux on hyvin erilainen järjestelmä kuin MS-DOS tai MS Windows. Linuxin markkinointi vakaana vaihtoehtona Windowsille johtaa harhaan. Linux ei ole vakaa Windows vaan lähemmät vertailukohteet löytyvät unix-maailmasta.
Kannattaa etukäteen tutustua luvussa Tietoa ja oppaita Linuxiin esiteltyihin oppaisiin, kuten DOS-Win-to-Linux-HOWTO:on.
Kannattaa katsoa XFree86-kotisivut, jos ongelmaasi olisi ratkaisu. Sieltä löytyy ajatasalla olevaa dokumentaatiota, jossa on myös lista tuetuista näytönohjaimista.
Vihje: Jos X on toiminut aikaisemmin, mutta ei toimi ytimen kääntämisen jälkeen, katso myös tähän liittyvä osa ytimen käännösohjeista.
Tässä sinun täytyy käyttää omatoimisuutta ennenkuin alat kyselemään muilta. Katso ensimmäiseksi XFree86:n dokumentaatiosta ja tilannetiedot näytönohjainajureista. Sieltä saat selville mitä kortteja XFree86 tukee tällä hetkellä.
Tärkeää: Jollet saa näytönohjaintasi toimimaan, tarkista, että käytät uusinta versiota XFree86:sta. Jollet, asenna se ja kokeile sillä. Jollet saa silläkään, kysy vasta sitten nyysseissä.
Useimmille vuosina 2001-2003 valmistetuille NVidian ja ATI:n 3D-kiihdytetyille näytönohjaimille on saatavilla monien pelien ja joidenkin graafisten ohjelmien vaatima 3D-tuki Linuxiin ja XFree86:n. Tarvittavia ohjelmia ja moduuleita ei välttämättä ole valmiiksi toimitettu Linux-jakelun mukana, vaan ne tulee hakea näytönohjaimen valmistajan kotisivuilta. Näytönohjaimen valmistajan omat ajurit eivät välttämättä ole vapaita muuttaa ja jaella eteenpäin, mutta käyttäjälle ne ovat ilmaisia. Lisäksi on joitain vapaan ohjelmiston projekteja, jotka kirjoittavat joillekin näyttökorteille vapaita ajureita.
Tarkempaa tietoa saat XFree86:n dokumentaatiosta ja DRI-projektin sekä kortin valmistajan tai sen piirisarjan valmistajan (kuten NVidia tai ATI) verkkosivuilta.
XFree86 tukee rullahiiriä. Kannattaa katsoa Colas Nahaboo X mouse wheel scroll-sivu, joka kertoo miten rulla saadaan toimimaan ja antaa vinkkejä eri ohjelmille.
Red Hat on tehnyt How to upgrade Red Hat Xfree86 RPMS. Lähimmät rpm-paketit löytyvät osoitteesta ftp://ftp.funet.fi/pub/Linux/mirrors/redhat/redhat/linux/updates/
Oletko joskus tuskaillut näppäimistösi kanssa, miksi et saa ß-merkkiä mistä haluat tai miksi ô-merkki ei tule Alt-gr+o yhdistelmällä vaikka niin haluaisitkin. Tämän lyhyen kirjoitelman tarkoituksena on kertoa miten saat näppäimistösi halutessasi sekoitettua X:ssä totaalisesti niin, ettei sillä kukaan muu (jos sinä itsekään) osaa tehdä mitään.
Ohjelmat jotka ovat tarpeen näppäimistön kanssa puuhailtaessa ovat:
xmodmap (kuuluu XFree86-levitykseen)
xev (osa X11R6-contrib -kokoelmaa)
Ensin kannattaa tarkistaa, onko sinulla jo jonkinlainen Xmodmap-tiedosto. Jos ei, niin saat sen luotua komennolla
$ xmodmap -pke > ~/.Xmodmap |
Tämän tehtyäsi voitkin avata sen mielieditoriisi, jolloin sinua pitäisi tervehtiä seuraavanlaiset rivit
Esimerkki 5-1. ~/.Xmodmap
keycode 8 = keycode 9 = Escape keycode 10 = 1 exclam onesuperior exclamdown keycode 11 = 2 quotedbl at oneeighth keycode 12 = 3 numbersign sterling sterling keycode 13 = 4 currency dollar dollar . . |
joista kukin rivi tarkoittaa seuraavaa:
keycode tunnus = a b c d |
näppäimen tunnusnumero, jonka saat selville xev-ohjelmalla
on koodi, minkä näppäin tuottaa kun painaa <näppäin>
on koodi, minkä näppäin tuottaa kun painaa shift + <näppäin>
on koodi, minkä näppäin tuottaa kun painaa Alt-gr + <näppäin>
on koodi, minkä näppäin tuottaa kun painaa Alt-gr + shift <näppäin>
näitä muuttelemalla voit muodostaa mieluisesi näppäimistökartan. kaikki tarvittavat nimet xmodmap-asetuksille löytyvät tiedostosta /usr/X11R6/include/X11/keysymdef.h latin1-merkistön merkit ovat rivien
#ifdef XK_LATIN1 ... #endif /* XK_LATIN1 */ |
Muitakin näppäinasetuksia, kuten Windows-näppäinten tuottamat koodit, voi myös asettaa.
Käyttämäänsä ikkunamanageriin voi tehdä sidonnnan kyseiselle näppäimelle, esimerkkinä fvwm
Key Menu A N Popup "HotList" |
esim. rivillä
keycode 40 = d D eth ETH" |
Muutettuasi näppäimistöasetuksia voit testata muutoksia komennolla xmodmap ~/.Xmodmap.
Tarvitaan
Hakemistollinen TT-fontteja, esimerkiksi /usr/local/ttfonts
FreeType-1.1 -kirjasto
ttmkfdir
xfsft
Ohjelmat käännetään (xfsft tosin kannattaa hankkia valmiiksi käännettynä). ttmkfdir:illä tehdään fonttihakemistoon fonts.dir ja fonts.scale (ovat sama tiedosto). xfsft:lle tehdään asetustiedosto /usr/local/etc/xfsft.conf (tms.), esimerkki alla:
Esimerkki 5-3. xfsft.conf
clone-self = off use-syslog = off client-limit = 20 catalogue = /usr/local/ttfonts error-file = /tmp/ttferrors default-point-size = 120 default-resolutions = 100,100,75,75 |
xfsft käynnistetään (oletettavasti roottina) sanomalla
# xfsft -port 7100 -config \ /usr/local/etc/xfsft.conf |
X:ää komennetaan käyttämään fonttiserveriä:
$ xset +fp tcp/localhost:7100 |
Ja katso, sinulla on TrueType-fontit käytössä.
Vihje: Redhat 6.0:ssa ja monissa sitä uudemmissa levityksissä Truetype-fonttien tuki on valmiina, joten sitä ei tarvi erikseen ottaa käyttöön.
Tämä on tunnettu ongelma XFree86:n kanssa, jos käyttää 24-bittistä tilaa. Ongelma esiintyy myös muiden ohjelmien kuin Netscapen kanssa. Vaihda joko 8-, 16- tai 32-bittiseen tilaan, niin ongelma häviää.
Ensinnäkin omalla koneella pitää olla X-serveri käytössä eli kirjoita startx, jos et ole jo X:ssä. Ikkunoiden avaamisen toiselta koneelta voi sallia kahdella tavalla. Joko koneen nimen (IP-osoitteen) perusteella (huono ajatus turvallisuuden kannalta) tai "taikapiparilla" (MIT-MAGIC-COOKIE).
Ensimmäinen menetelmä toimii komennolla xhost [+|-]koneennimi. Jos koneen nimen tai IP-osoitteen edessä on '+' tai ei mitään, niin tuo lisätään sallittujen koneiden listalle ja '-' puolestaan poistaa sen. Tosin silloin kuka tahansa voi avata koneellesi ikkunoita, jotka vaikkapa salakuuntelevat näppäimenpainalluksia. Niinpä parempi tapa on käyttää taikapipareita (magic cookies).
Omalla koneellasi sanot
$ xauth extract <tiedosto> <naytto> |
Tämä hakee X-näytön <naytto> taikapiparin ja kirjoittaa sen tiedostoon <tiedosto>. Sitten siirrät tämän tiedoston toiselle koneelle, jossa liität sen komennolla xauth merge <tiedosto>:lla muiden tunnisteiden joukkoon. Eli tähän tapaan:
ekakone $ xauth extract xauth $DISPLAY ekakone $ ftp tokakone ftp> send xauth ftp> quit ekakone $ telnet tokakone tokakone $ xauth merge xauth tokakone $ export DISPLAY=ekakone:0.0 tokakone $ xeyes |
Jos rsh toimii rhostsin avulla, niin silloin tuon siirron saa aikaan komennolla
$ xauth extract - $DISPLAY | rsh tokakone \ xauth merge - |
Tosin paras tapa on käyttää SSH-ohjelmaa, niin ei tarvitse murehtia X-serverin oikeuksista eikä DISPLAY-muuttujista. SSH tekee salatun yhteyden koneiden välille sekä tunneloi myös X-yhteydet ja tekee tarvittavat asetukset automaattisesti. Koneille tarvii vain asentaa asentaa SSH, ottaa sillä yhteys ja käynnistellä X-ohjelmia normaaliin tapaan. SSH löytyy ftp:llä osoitteesta ftp://ftp.replay.com/pub/crypto/linux/
SSH:lla voi käyttää X Window -ohjelmia helposti; seuraava komento esimerkiksi aukaisee xtermin, josta voi käynnistää lisää X-ohjelmia: ssh -f -X -l tunnus host.domain.example xterm (katso kohtaa SSH:n hankkimisesta ja asentamisesta)
X:ssä on leikepöytä ja lisäksi gpm:n avulla tekstikonsoleilta voi valita tekstiä ja syöttää sitä samalle tai toiselle tekstikonsolille samaan tapaan kuin xtermissä. (Mutta tekstikonsoleilta dataa ei pysty siirtämään X:ään eikä päinvastoin).
X ei määrittele käyttöliittymää, vaan ainoastaan mekanismit sellaisen toteuttamiseen. Tästä on seurannut toisinaan hämmentävä käyttöliittymien kirjavuus.
Leikepöydän kaltaiset oliot ovat X:ssä nimeltään selectioneja. Niitä voivat ohjelmat periaatteessa perustaa mielin määrin, mutta kolmelle on sovittu nimet ja merkitykset: primary, secondary ja clipboard.
Primary selection on nimensä mukaisesti se ensisijainen valittu alue, johon operaatiot kohdistuvat. Useimmissa ohjelmissa se valitaan hiiren vasemman näppäimen avulla ja ohjelma korostaa valitun alueen. Monissa ohjelmissa keskinappi liittää primary selectionin (ei clipboardin) sisällön dokumenttiin. Xtermissä vaikutus on sama kuin jos primary selectionin teksti olisi kirjoitettu näppäimistöltä.
Secondary selection on tarkoitettu operaatioille, jotka tarvitsevat argumenteikseen kaksi aluetta. Harva ohjelma käyttää sitä.
Clipboard on näistä se, joka on tarkoitettu pääasialliseksi mekanismiksi datan kopioimiseen. Valitettavasti harvat ohjelmat tukevat sitä: monet tukevat vain primary selectionin käyttöä kopioimiseen.
Selectionit ovat globaaleja X-istunnossa: vain yksi ohjelma kerrallaan voi pitää hallussaan kutakin selectionia, ja kaikki ohjelmat voivat udella tältä yhdeltä selectionin sisältöä. Sisältö voi olla tarjolla useammassa eri formaatissa, eikä sitä kopioida mihinkään, jollei joku ohjelma todella pyydä sitä. Jos selectionin omistava ohjelma päättyy, selection häviää.
Jotkut huonommin tehdyt ohjelmat eivät käytä selectioneja oikein vaan sooloilevat leikkaamiset ja liimaamiset yms. omalla tavallaan, mikä yleensä johtaa siihen, ettei dataa voi kopioida tällaisten ohjelmien välillä. Tämä on erityisen tavallista ohjelmissa, jotka käsittelevät muuta kuin tekstidataa.
Selectionien lisäksi on olemassa myös vanhempi ja alkeellisempi mekanismi nimittäin cut bufferit. Näihin pystyy varastoimaan pelkästään tekstiä, ja varastointi tapahtuu X-palvelimen muistissa.
Xterm ei tue clipboardia. Sen sijaan primary selectionin kautta kopiointi onnistuu (vasen nappi valitsee, keskimmäinen kopioi).
Seuraavat alakappaleet koskevat Linuxia lähinnä PC-laitemaailmassa. Historiallista syistä kovalevyjen osiointi PC:ssä on harvinaisen epäselvästi toteutettu, mutta sen kanssa joutuu vain elämään. Muissa ympäristöissä osiointi on yleensä huomattavasti yksinkertaisempaa.
Linuxissa toimivat sekä IDE- että SCSI-liitäntäiset kovalevyt. Ainoana vaatimuksena IDE-levyjen kanssa on se, että koneesi BIOS osaa käyttää koneeseesi asennettuja levyjä ja että ytimessäsi on tuki IDE-asemille. SCSI-levyjä käytettäessä tarvitset myös käyttämäsi tuetun SCSI-ohjaimen ajurit ytimeen.
IDE-liitäntäiset asemat (kiintolevyt ja CD-ROM-asemat) näkyvät järjestelmässäsi erikoisina laitetiedostoina [2] /dev/hd?, missä ?-merkki voi olla esimerkiksi a tai d. Kirjaimet määräytyvät siten, että ensimmäisen IDE-väylän (IDE0) ensimmäinen laite (eli master) on laite /dev/hda ja toinen laite (eli slave) on /dev/hdb. Tästä loogisesti jatkamalla saadaan toisen IDE-väylän (IDE1) ensimmäisen (master) laitteen "tunnisteeksi" /dev/hdc ja niin edelleen.
Jokaisella kiintolevyllä voi olla useita partitioita eli levyosioita. Partitiot - eli Windowsista tutut C: ja muut asemat - näkyvät Linuxissa myös laitetiedostoina siten, että aseman laitetiedoston perään lisätään partition numero, joka on välillä 1-63. Näistä neljää ensimmäistä numeroa käytetään primääristen partitioiden merkitsemiseen ja muut ovat loogisia partitioita. Näitä laitetiedostoja (esim. /dev/hda2) ei kuitenkaan voida käyttää suoraan tiedostojen käyttämiseen laitetiedostojen erityisominaisuuksista johtuen, vaan kyseiset laitteet pitää liittää (engl. mount) osaksi Linuxin tiedostojärjestelmää ennen varsinaista käyttöä. [3]
Microsoftin tuotteiden kanssa käytetään yleensä kahta ensisijaista osiota (engl. primary partition, C: asema + "laajennettu osio") ja muutamaa loogista osiota (D:,E:,...), jotka jaetaan "laajennetusta osiosta". Ohessa esimerkki erään kiintolevyn osioinnista. Levyn kapasiteetti on noin 3 gigatavua ja osiotiedot on tulostettu Linuxin fdisk-ohjelmalla:
# fdisk /dev/hda Command (m for help): p Disk /dev/hda: 128 heads, 63 sectors, 767 cylinders Units = cylinders of 8064 * 512 bytes Device Boot Start End Blocks Id System /dev/hda1 1 254 1024096+ b Win95 FAT32 /dev/hda2 255 518 1064448 5 Extended /dev/hda3 * 519 767 1003968 83 Linux native /dev/hda5 255 508 1024096+ b Win95 FAT32 /dev/hda6 509 518 40288+ 82 Linux swap |
Kyseisen taulukon avulla voidaan päätellä seuraavaa:
Tarkistelun kohteena on IDE0-väylän ensimmäinen laite /dev/hda
Levyllä on kaikenkaikkiaan 5 erillistä osiota, joista kolme (1-3) ovat ensisijaisia osioita ja loput kaksi (5 ja 6) ovat loogisia osioita.
Kaksi osiota on varattu Windowsin käyttöön (1 ja 5), kaksi Linuxille (3 ja 6) ja osio 2 on "laajennettu osio", jolle loogiset osiot on luotu. Tämän voi tarkistaa vaikkapa osioiden alku- ja loppusektorien perusteella.
/dev/hda1 = Windowsin C: -asema (n. 1GB)
/dev/hda5 = Windowsin D: -asema (n. 1GB)
/dev/hda3 = Linuxin juuriosio, jolta kone käynnistetään (n. 970MB)
/dev/hda6 = Linuxin sivutusosio (n. 40 MB)
SCSI-liitäntäisiä asemia vastaavat laitetiedostot löytyvät myös /dev/ -hakemistosta pienillä eroavaisuuksilla. Kiintolevyt löytyvät nimillä /dev/sd? (esim. /dev/sda) ja vastaavasti niiden osiot nimillä /dev/sda?. Poikkeuksena IDE-väyläisiin romppuasemiin - jotka löytyvät samoilla säännöillä kuin IDE-väyläiset kiintolevyt - SCSI-liitäntäiset CD-ROM-asemat löytyvät eri laitetiedostoina /dev/scd? (esim. /dev/scd0). Nauha-asemat näkyvät laitetiedostoina /dev/st? ja /dev/nst?. Kummatkin viittaavat samaan nauha-asemaan, mutta nst?-laitetiedostoja käytettäessä nauhaa ei kelata alkuun nauhaoperaation lopuksi. Nauhoja ei voi liittää tiedostojärjestelmään, vaan niille voi ottaa esim. varmuuskopioita tar-komennolla antamalla lähde- tai kohdetiedostoksi nauha-aseman laitetiedoston nimen.
Lisäksi ytimessä on tuki yleiselle SCSI-ajurille (SCSI generic support) jonka avulla SCSI-väylän laitteita voidaan käsitellä dynaamisesti laitetiedostojen /dev/sg? avulla. Nämä laitetiedostot mahdollistavat skannereiden, tallentavien CD-asemien ja muiden hieman erikoisempien SCSI-laitteiden käyttämisen Linux-ympäristössä.
NT OS Loader + Linux mini-HOWTO on sinun pelastuksesi. Se opastaa miten saat NT:n bootloaderin lataamaan myös Linuxin. NT:n voi tosin käynnistää aivan hyvin myös Linuxin bootloaderin avulla, jos aikoo käyttää Linuxia pääasiallisena käyttöjärjestelmänä.
Linux ja Windows95/98 toimivat hyvin keskenään. Voit käyttää joko liloa, GRUBia tai loadlin:iä Linuxin boottaamiseen. Lilo on perinteisin vaihtoehto, joskin uusimmat levityspaketit tarjoavat myös helppokäyttöisempää GRUB-ohjelmaa vaihtoehtona asennuksessa. Useimmat levityspaketit tunnistavat asennuksessa myös kovalevyllä olevan Windowsin ja ehdottavat sen lisäämistä käynnistyskehotteeseen tai -valikkoon. Jos sinun täytyy kuitenkin tehdä tämä käsin, Lilon mini-HOWTO on hyvä apu.
Alusta levyke. Sen voit tehdä vaikka komennolla fdformat /dev/fd0.
Kopioi siihen haluamasi ydin dd-käskyllä. Tässä esimerkissä ydin on tiedostosssa /vmlinuz.
$ dd if=/vmlinuz of=/dev/fd0 bs=1k |
Kerro ytimelle mitä levyosiota se käyttää root-osiona. Tässä esimerkissä se on /dev/hda3.
$ rdev /dev/fd0 /dev/hda3 |
Jotta voisit käyttää levyosiota tiedostojen talletuspaikkana, se täytyy liittää eli mountata (engl. mount) johonkin hakemistoon. Juuriosion (/, engl. root partition) ydin liittää automaattisesti heti käynnistyessään, koska se on välttämätön käynnistysprosessin jatkumisen kannalta. Muut osiot (kuten /usr, /home jne.) liitetään yleensä käynnistysprosessin alkuvaiheessa. Toki on mahdollista tallettaa kaikki tiedostot juuriosiolle (joka vastaa Windowsin C: -osiota), mutta eriyttämällä tietoja eri osioille on mahdollista parantaa järjestelmän vikasietoisuutta. Tällä on enemmän merkitystä palvelimissa kuin työpöytäkoneissa, joiden asennuksessa ei kannata vaivata liikaa päätänsä osioinnin suunnittelun kanssa.
Osioiden liittäminen tapahtuu mount-komennolla, jolle voi joko antaa tiedot liitettävästä osiosta komentorivillä tai pyytää lukemaan ne tiedostosta /etc/fstab. Vastaavasti osiot voi poistaa tiedostojärjestelmästä komennolla umount, jos osion tiedostoja ei ole minkään ohjelman käytössä. Osion voi liittää mihin tahansa olemassaolevaan hakemistoon. Jos hakemisto sisältää ennestään tiedostoja tai alihakemistoja, niihin ei pääse käsiksi ennen liitoksen irrottamista.
Vihje: Linuxissa ei käytetä lainkaan levyasemakirjaimia. Kirjoittamalla pelkästään 'mount' saat listan kaikista liitetyistä osioista.
$ mount /dev/hde2 on / type ext3 (rw,errors=remount-ro) proc on /proc type proc (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) /dev/hde6 on /home type ext3 (rw) /dev/hde5 on /var type ext3 (rw) /dev/hde3 on /usr type ext3 (rw) /dev/hde7 on /opt type ext3 (rw) /dev/hde8 on /work/users type ext3 (rw) /dev/hde10 on /work/images type ext3 (rw) #umount /work/images # mount /dev/hde2 on / type ext3 (rw,errors=remount-ro) proc on /proc type proc (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) /dev/hde6 on /home type ext3 (rw) /dev/hde5 on /var type ext3 (rw) /dev/hde3 on /usr type ext3 (rw) /dev/hde7 on /opt type ext3 (rw) /dev/hde8 on /work/users type ext3 (rw) /dev/hde10 on /work/images type ext3 (rw) # |
Voit liittää tai poistaa /etc/fstab:ssa mainitun osion antamalla sen nimen mount- tai umount-komennolle. Voit myös antaa osion ja mountpointin suoraan mount-komennon komentoriviparametreinä. Komennolla voi liittää Linuxin omia osioita, muiden käyttöjärjestelmien osioita sekä CD-ROMeja. Tarvittaessa liitettävän tiedostojärjestelmän tyyppi voidaan antaa -t -parametrillä.
# mount /mnt/database # mount -t ext3 /dev/sda6 /mnt/database # mount -t vfat /dev/hda1 /mnt/dos # |
Vihje: Tarkista, että kohdehakemisto on olemassa. Jos sitä ei ole, liittäminen epäonnistuu virheilmoituksella "no such file or directory".
Jos haluat lukea Linuxista Microsoft Windows-järjestelmien asemia, voit joko käyttää mtools-ohjelmaa tai liittää levyosion osaksi Linuxin hakemistorakennetta mount-komennolla.
Taulu 6-1> kertoo Windows-asemien vastavuudet Linuxissa. Se on vain suuntaa antava esimerkki IDE-levyille. Laitetiedosto riippuu monesta asiasta, esimerkiksi SCSI-asemille ja rinnakkaisporttiin liitettäville IDE-ohjaimille on eri laitetiedostot.
Taulu 6-1. Windows-asemien vastaavuus Linuxissa
Windows-asema | Linux laitetiedosto |
---|---|
C: | /dev/hda1 |
D: | /dev/hda5 |
E: | /dev/hda6 |
F: | /dev/hda7 |
FAT32-tiedostojärjestelmään löytyy tuki ytimen versiosta 2.0.34 eteenpäin, eli lähes kaikista käytössä olevista Linux-koneista. Vanhojen DOS-osioiden kanssa (joissa tiedostonimien suurin sallittu pituus on vain 8+3 merkkiä) tyyppinä pitää käyttää msdos (mikä on perus-FAT-järjestelmän tunniste Linuxissa) vfat:n sijaan. Pitkien tiedostonimien tuki tuli Windows 95:n myötä.
Huomaa: Sekä VFAT- että FAT32-osioiden tyyppinä käytetään tunnistetta vfat. Osion tyyppi tunnistetaan automaattisesti.
Käytä mount-käskyn uid- ja gid-optioita. Jos haluat muuttaa omistajaksi käyttäjän jonka id-numero on 1014, anna optioksi uid=1014.
Vihje: Käyttäjätunnuksesi UID:n voit selvittää käskyllä id.
2.2- ja sitä uudemmissa ytimissä on lukeva NTFS-tuki. Osiotyyppi on ntfs. NTFS:n kirjoitustuki on olemassa, mutta sitä ei suositella käytettäväksi.
Varoitus |
NTFS:n kirjoitustuki on kaikkea muuta kuin valmis ja hyvin testattu ja lisäksi se koskee vain Windows NT4:sta ja vanhempia. Kirjoitustuki on erittäin vaarallinen tuetuissakin versioissa ja vaatii ntfsfix-ohjelman käyttöä ennen kuin kone käynnistetään Windowsiin. Seuraavassa käynnistyksessä NT:n chkdsk korjaa loput vahingot. |
Linux-NTFS-projekti kehittää parempaa NTFS-tukea Linuxiin. Sieltä saa ajantasalla olevaa tietoa Linuxin NTFS-tuesta.
Lisää tiedostoon /etc/fstab haluamasi osio.
Se on helppoa. Lilon saa palauttamaan vanhan boottisektorin käskyllä lilo -u tai voit myös tehdä sen Windowsissa käskyllä fdisk /mbr. Tämän jälkeen poistat Linux-osiot Linuxin fdiskillä ja sinulla ei enää ole Linuxia.
Varoitus |
Linux-osiot tulee poistaa Linux-ohjelmilla, esimerkiksi hätäkäynnistyslevykkettä käyttäen, koska Windowsin fdisk-ohjelma ei välttämättä suostu tekemään niille yhtään mitään. |
Loadlinia käytettäessä mem=XXM.
Lilossa lisää /etc/lilo.conf-tiedostoon rivi:
Sen jälkeen on lilo vielä suoritettava, jotta tiedostoon /etc/lilo.conf tehdyt myytokset otetaan käyttöön. Yllä käytetyissä esimerkeissä XX on muistisi määrä megatavuissa.
Huomaa: Joissakin tapauksissa ilmoitettava muistin koko saattaa poiketa todellisesta muistin määrästä. Esimerkiksi 128MB muisti saadaan käyttöön, kun ytimelle kerrotaan ym. esimerkkien mukaan että käytettävissä olisikin 127MB muistia.
Huomaa: Uusissa ytimen versioissa muistin määrä pitäisi tunnistua automaattisesti joka tapauksessa. Joissakin koneissa näin ei kuitenkaan tapahdu, ja silloin muistin määrä täytyy edelleen kertoa itse yllämainitulla tavalla.
Jos saat linuxin käynnistyksessä virheen LI, ongelma johtuu todennäköisesti BIOSin ongelmista kovalevysi geometrian kanssa , tai sitten unohdit asentaa lilon uudestaan tehtyäsi ytimen päivityksen.
Lilon manuaali sanoo näin:
LI The first stage boot loader was able to load the second stage boot loader, but has failed to execute it. This can either be caused by a geometry mismatch or by moving /boot/boot.b without running the map installer.
Samalla lilo voi antaa sinulle virhekoodin, esimerkiksi 01 monta kertaa peräkkäin. Katso tiedostosta Manual.txt kohdasta 'Disk error codes' (tulee Lilon dokumentaation mukana) mitä virhekoodi merkitsee. Manuaali kertoo virheestä 01 näin:
0x01 "Illegal command". This shouldn't happen, but if it does, it may indicate an attempt to access a disk which is not supported by the BIOS. See also "Warning: BIOS drive 0x<number> may not be accessible" in section "Warnings".
Geometriavirheen pystyt ratkaisemaan ajamalla lilon vivulla -l tai lisäämällä /etc/lilo.conf-tiedostoon rivin linear. Uusimmat lilon versiot tukevat suuria levyjä, mikäli koneesi BIOS tukee niitä ja kirjoitat rivin lba32 tiedostoon /etc/lilo.conf.
Ext2 pirstoutuu normaalikäytössä hyvin vähän, eikä tarvitse samanlaista säännöllistä defragmentointia kuin FAT. fsck:n tulostuksessa pitäisi näkyä fragmentoitumisaste, joka on esim. eräässä 3 vuotta käytössä olleessa koneessa alle 3%.
Jos kumminkin haluat defragmentoida ext2-partition, voit käyttää siihen ohjelmaa defrag
Ext3 on ext2:n kanssa yhteensopiva tiedostojärjestelmä, johon on lisätty journalointi. Tämä tarkoittaa yksinkertaistettuna sitä, että tiedostojen kirjoitus levylle tapahtuu aina tietyssä järjestyksessä ns. journal-tiedostoon, josta tiedot siirretään myöhemmin varsinaiselle paikalleen levyllä. Mikäli kone sammutetaan väärin (vaikkapa suoraan virtakytkimestä), uudelleenkäynnistyksessä ei tarvi suorittaa aikaavievää koko tiedostojärjestelmän tarkistusta vaan journal-tiedoston sisältö kirjoitetaan oikealle paikalleen ja käynnistys voi jatkua lähes välittömästi. Tämän lisäksi ext3 ei mene sekaisin läheskään niin helposti kuin perinteinen ext2.
Muita journaloivia tiedostojärjestelmiä Linuxiin ovat esimerkiksi ReiserFS sekä XFS ja JFS. Nämä eivät kuitenkaan ole yhteensopivia ext2:n kanssa, vaan vaativat tietojen varmuuskopioinnin ja palautuksen, mikäli vanha järjestelmä halutaan päivittää niitä käyttäväksi.
Vihje: Mikäli et ymmärtänyt selitystä, riittänee ohje: käytä journaloivaa tiedostojärjestelmää aina kuin mahdollista. Uudet levityspaketit asentuvatkin oletuksena jollekin yllämainituista tiedostojärjestelmistä.
Linuxiin on tiettävästi tehty ainoastaan neljä virusta ja ne eivät ole kovin yleisiä. Virusten on vaikea levitä Linuxissa, koska käyttäjillä on normaalisti rajoitetut oikeudet ja root-tunnusta ei käytetä kuin ylläpitoon. Työtiedostoissa leviävät virukset voivat teoriassa levitä Linuxissakin, mutta lähes kaikki dokumenttivirukset on kirjoitettu Microsoft Office-tuoteperheen ohjelmiin, eivätkä Linux-ohjelmat tällä hetkellä osaa suorittaa näiden ohjelmien käyttämää makrokieltä. Linuxin toimisto-ohjelmien makrokielillä tehtyjä viruksia ei ole tiettävästi olemassa.
Varoitus |
Viruksien tapaiset madot voivat kuitenkin levitä Internetin kautta Linux-palvelimiin. Madot käyttävät hyväkseen verkkopalveluiden tunnettuja tietoturva-aukkoja ja murtautuvat niitä käyttäen koneellesi. Madot voit kuitenkin ehkäistä melko helposti: älä aja työasemalla verkkopalveluita huvin vuoksi, käytä Linuxin sisäänrakennettua palomuuria ja jos ylläpidät palvelinta, muista tarkistaa ja asentaa päivitykset löydettyihin aukkoihin säännöllisesti. |
Todennäköisesti kyseessä on laitteistovika. Katso Sig11 FAQ. Tyypillisesti ilmoitus aiheutuu viallisista muistipiireistä tai ylikellotuksesta.
Varmista, että käytettävissä on tarvittavat käynnistyslevykkeet. Niitä tulet todennäköisesti tarvitsemaan. DOS-boottikorpulla on syytä olla sys.com ja fdisk.exe, Linuxin puolella distribuution rescue-levyke on juuri oikea työkalu. Varmista, että käynnistyslevykkeet myös toimivat.
Asenna uusi kiintolevy koneeseen.
Osioi uusi levy haluamallasi tavalla. Alusta DOS-osiot DOSista ja Linux-osiot mke2fs-komennolla Linuxista. Sivutusosio alustetaan mkswap-komennolla. Haluttu käynnistysosio merkitään aktiiviseksi Linuxin fdiskillä (DOS:in fdisk ei suostu merkitsemään aktiiviseksi kuin ensimmäisen kiintolevyn osioita)
Kopioi kaikki tieto vanhoilta osioilta uusille. Linux-maailmassa toimii cp -a. Joskin Unix-maailmaa laajemmin hallitsevat käyttävät kahta toisiinsa putkitettua tar-komentoa, koska se toimii myös niissä unixeissa, joiden cp-komento on vajaakykyinen. Tässä esimerkki kopioinnista tar-käskyllä:
# (cd / && tar cpf - . --exclude new-disk \ --exclude proc) | (cd /new-disk && tar xpf -) |
DOS-tiedostojen siirron voi tehdä Linuxista käsin tai sitten DOS-komennoilla omien mieltymysten mukaisesti.
Varoitus |
jos DOS onkin itse asiassa Windows95 (tai uudempi), kopiointi "aidosta DOS-tilasta" ei välttämättä tee hyvää VFAT-tiedostojärjestelmän pitkille tiedostonimille. Tällöin kannattanee käyttää xcopy-komentoa Windowsin DOS-ikkunassa sopivien vipujen kanssa. |
Tässä vaiheessa on hyvä hetki käydä DOSissa ajamassa sys-komento uudelle DOS-osiolle. Linuxissa kannattaa tutustua lilo:n dokumentaatioon ja sorvata komentorivi, joka asentaa lilo:n uudelle levylle huomioiden, että uusi levy ei ole vielä oikealla paikallaan... mutta se ei ole pakollista. Uudella levyllä oleva /etc/fstab:in kopio on syytä korjata uuden tilanteen mukaiseksi.
Ota vanhat levyt pois ja laitetaan uusi lopulliselle paikalleen ensimmäiseksi kiintolevyksi. Älä hukkaa vielä vanhoja levyjä eikä niiden käyttöön mahdollisesti tarvittuja BIOS-asetuksia!
Käynnistä kone uudelleen ja katso mitä tapahtuu. Jos kaikki meni putkeen, koneen pitäisi käynnistyä kiltisti. Mahdollisesti kuitenkin jotain menee hiukan pieleen, siispä:
jos BIOS-tarkistus menee läpi, mutta kone pyytää käynnistyslevykettä tai ilmoittaa jotain tyyliin "PRESS A KEY TO REBOOT" tai jopa "NO ROM BASIC", oikeaa osiota ei kenties ole merkitty aktiiviseksi. Tällöin käynnistetään kone levykkeeltä ja asetetaan aktiivinen osio oikein fdisk-komennolla. Toinen mahdollisuus on, että DOSin käynnistysosiolle jäi antamatta SYS-komento tai Linux-puolella unohtui lilo-komento. Aja sys C:-komento DOS-boottikorpulta tai LILO:n tapauksessa katso seuraavaa kohtaa.
Jos lilo ei toimi, otetaan esiin Linux-käynnistyslevyke, annetaan käynnistysoptioksi esimerkiksi root=/dev/hda<uuden_roottipartition_nro> ja valmistaudutaan muokkaamaan /etc/lilo.conf-tiedostoa ja ajamaan lilo uudelleen.
jos Linux tipahtaa ylläpitotilaan (single user mode), korjataan todennäköisesti /etc/fstab-tiedostossa oleva kirjoitusvirhe. Juuriosion saa pois read-only -tilasta komennolla mount -o remount,rw / . Mukavaa on myös osata liittää /usr-hakemisto jonnekin täysin vapaavalintaiseen liitospaikkaan, tai vaihtoehtoisesti osata korjata /etc/fstab vi:llä ilman manuaalisivuja... :)
Tee mahdolliset muut virittelyt kiintolevyjen järjestyksen muuttumisen seurauksena. Jos jotain unohtui, kytketään vanha(t) levy(t) rinnalle ja kopioidaan tarpeelliset talteen.
Valmista! Nyt voikin sitten tehdä ensimmäisen varmuuskopion uudesta tilanteesta. Vanhat levyt arkistoidaan tai aivopestään ja siirretään toisiin tehtäviin taikka avataan ja hiekkapuhalletaan, tarpeitten ja mieltymysten mukaan. Lisää kertoo Hard Disk Upgrade mini-HOWTO.
Levykeitä käytetään, kuten muitakin laitteita, /dev-hakemistossa olevan laitetiedoston kautta. Ensimmäinen levykeasema on /dev/fd0.
Voit liittää levykkeen suoraan hakemistorakenteeseen mount-käskyllä.
Esimerkki 6-5> näyttää miten ensimmäisessä levykeasemassa oleva levyke liitetään juuressa olevaan floppy-hakemistoon ja tyyppinä on msdos, joka tarkoittaa FAT-järjestelmää. Voit myös käyttää tyyppiä vfat, joka tarkoittaa FAT-järjestelmää pitkillä tiedostonimillä.
Huomaa: Muista käyttää umount käskyä ennen kuin poistat levykkeen asemasta! Muuten levykkeen tiedostojärjestelmä voi mennä sekaisin.
Toinen mahdollisuus on käyttää mtools-pakettia, jossa on mm. mdir, mcopy ja mdel. Ne toimivat kuten vastaavat dos-käskyt.
Lisää kertoo info mtools.
Levyke alustetaan fdformat-komennolla.
Levyä ei voi käyttää alustuksen jälkeen vaan seuraavaksi täytyy levykkeelle luoda tiedostojärjestelmä mkfs-komennolla. Tiedostojärjestelmänä voi olla esimerkiksi FAT (tunniste mkfs-komennolle on msdos) tai ext2.
CD liitetään mount-komennolla kuten muutkin tiedostojärjestelmät.
Edellinen komento liittää levyn /cdrom hakemistoon, jonka pitää olla valmiiksi luotuna. /dev/hdc on CD-aseman laitetiedosto. Laitetiedostoista kerrotaan lisää osiossa Miten Linux ymmärtää kovalevysi partitiot? ja liittämisestä yleensä mount(8).
Juuressa oleva /proc on pseudotiedostojärjestelmä, jota ei ole fyysisessä olomuodossa olemassakaan. Näin ollen se ei vie levytilaa. Lisää kertoo manuaalisivu proc(5).
Linuxissa tiedostojen oikeudet näyttävät saat näkyviin esim. käskyllä ls.
Esimerkki 6-11>:ssa olevan tiedoston omistajalla on oikeus lukea, kirjoittaa tai ajaa. Ryhmässä lusers olevat käyttäjät voivat lukea tai ajaa tiedoston, mutta eivät kirjoittaa. Muut (eli ne jotka eivät kuulu ryhmään lusers) eivät omaa mitään oikeuksia tiedostoon. He eivät voi lukea, kirjoittaa tai ajaa sitä.
Tiedostojen oikeudet asetetaan chmod-komennolla. Komento ottaa parametrina annettavat oikeudet ja tiedoston tai tiedostojen nimet. Eri käyttäjät kuvataan kirjaimilla u, g ja o. Niiden merkitys on selitetty seuraavassa.
Jos halutaan antaa ryhmälle kirjoitusoikeudet tiedostoon se tehdään näin:
$ chmod g+w |
Muilta käyttäjiltä (eli niiltä jotka eivät ole tiedoston omistaja tai eivät kuulu tiedoston ryhmään) lukuoikeudet otetaan pois seuraavasti.
$ chmod o-r |
Oikeudet voidaan kuvata myös oktaalina, eli 8-järjestelmän lukuina.
Muunnos oktaaliksi, eli 8-järjestelmän luvuksi tapahtuu seuraavasti:
rwx == 4+2+1 == 7 rw- == 4+2 == 6 r-x == 4 +1 == 5 |
Ja niin edelleen. Luku on siis maksimi 7 (kaikki ylläolevat yhteensä) ja vähintään 0 (ei mitään oikeuksia). Oikeudet annetaan järjestyksessä omistaja, ryhmä ja muut.
Esimerkiksi oikeus rwxr-x--- annetaan seuraavalla komennolla:
$ chmod 750 testi.sh |
Sticky bitit lisätään näiden numeroiden eteen. Niiden merkitykset ja kaiken tässä selitetyn löydät manuaalisivulta chmod(1).
Jos et pääse esimerkiksi Helsingin yliopiston palvelimelle www.helsinki.fi , mutta sen sijaan yhteys onnistuu ip-osoitteella 128.214.205.16, konettasi ei ole määritelty käyttämään DNS-palvelinta, joka tietää koneiden nimet niiden ip-osoitteiden perusteella.
DNS-palvelimet on määritelty tiedostossa /etc/resolv.conf. Sen sisällön tulisi olla seuraava:
Esimerkki 7-1. /etc/resolv.conf
domain oma.toimialueeni.fi nameserver 191.168.1.1 nameserver 191.168.1.2 |
Korvaa nameserver-kohdan ip-osoitteet omien nimipalvelintesi ip-osoitteilla. Nimipalvelinten osoitteet saat verkon ylläpidolta tai Internet-palveluntarjoajaltasi.
Tarkempaa tietoa saat resolv.conf(5) -manuaalista.
Verkko alustetaan yleensä ennen PCMCIA-ajureiden lataamista. Kun PCMCIA-ajurit ladataan myöhemmin, alustetaan myös niihin sidonnaiset yhteydet. Mikäli verkko toimii, ilmoitus on harmiton.
Ehkä helpoin tapa PPP-yhteyden tekemiseen on WvDial. Mutta voit myös tehdä kaiken käsin tai käyttämällä levitysten omia ohjelmia. Työpöytäympäristöissä on tähän myös omat ohjelmansa, esimerkiksi rp3 (Gnome) ja kppp (KDE). Myös Linuxconf-ohjelmalla voi tehdä ppp-yhteyden, ja muista ohjelmista poiketen se toimii myös tekstitilassa.
PPP-yhteyden tekeminen käsin onnistuu helpoiten lukemalla PPP-HOWTO .
Teet sen laittamalla pppd:lle argumentiksi debug, tai valitsemalla debug-tilan käyttämästäsi yhteydenmuodostusohjelmasta (esim. WvDial). Seuraavassa lista miten toimia kun ppp-yhteyttä ei saada toimimaan.
Laita pppd:lle argumentti debug.
Kokeile yhteyttä.
Tutki lokitiedostoa /var/log/messages, katso tuliko sinne tarkempaa tietoa yhteyden luomisesta.
Jos sinne ei tullut mitään, tarkista tiedosto /etc/syslog.conf. Jos siellä ei ole seuraavaa riviä, lisää se:
Käynnistä tämän jälkeen sysklogd lähettämällä sille HUP-signaali:# kill -1 <pid> |
Nyt voit kokeilla yhteyksiä uudelleen. Tarkat virheilmoitukset löydät tiedostosta /var/log/daemon. Jos et saa yhteyttä toimimaan, lähetä lokitiedosto nyysseihin tai ISP:n helpdeskiin.
Muutamia linkkejä:
ISDN4Linux, josta löytyy ajan tasalla oleva lista tuetuista ISDN-laitteista.
Risto Rytkösen Kuinka tehdä ISDN-reititin
TeleWell ISDN PCI, ISDN ISA (HFC + Actel) sekä ISDN 2000 PCI -passiivikorttien ajurit löytyvät Easytelin sivuilta.
Seuraavia kortteja ei tueta, koska niiden valmistajat eivät suostu antamaan ohjelmointitietoja koodaajille:
Fritz!X
Eumex 404
Linux PCMCIA Information Page sisältää uusimmat PCMCIA-ajurit sekä hyvän HOWTOn aiheesta. Suositeltava on myöskin lukea TELES S0 PCMCIA ISDN mini-howto.
Ulkoinen, sarjaporttiin liitettävä ISDN-adapteri ei tarvi erillisiä ajureita Linuxissa. Tällaiset ISDN-adapterit saa toimimaan vastaavasti kuin analogisen modeemin. Adapterin asetusten muuttaminen tapahtuu yleensä ns. AT-komennoilla; katso adapterisi ohjekirjasta lisätietoja. Internet-yhteyden voit muodostaa modeemiyhteyden muodostamiseen tarkoitetuilla ohjelmilla tai PPP-Howton ohjeiden mukaan.
Linuxin ytimessä on vakiona monipuoliset palomuuritoiminnot. Palomuuritoimintojen käyttö on suositeltavaa, mikäli koneella on käytössä verkkopalveluita ja se on kytketty julkiseen tietoverkkoon, kuten Internetiin. Palomuuri ei yksinään takaa täydellistä turvaa murtautujia vastaan, mutta oikein tehtynä se auttaa vähentämään riskejä joutua tietomurron kohteeksi.
Palomuuri ajatellaan usein loogisesti erilliseksi elementiksi, joka on sijoitettu julkisen ja sisäisen verkon väliin. Sen tarkoituksena on rajoittaa valikoivasti verkkoliikennettä siten, että ulkopuoliset eivät suoraan pääse käsiksi sisäisen verkon laitteisiin. Linux-koneessa palomuurin voi myös tehdä samaan koneeseen, johon on asennettu halutut verkkopalvelut. Täten sitä voidaan käyttää myös yksittäisen koneen suojaamiseen.
Palomuurin säätäminen toimintakuntoon ja erityisesti sen saaminen turvalliseksi ei ole yksinkertainen tehtävä. Tästä syystä seuraava esimerkki saattaa olla hyödyllinen palomuuria rakennettaessa. Siinä on huomioitu tavallisimmat turvallisuusasiat, ja sitä käyttämällä vältät myös tavalliset, aloittelijoiden tekemät virheet. Jos muokkaat tai käytät tätä esimerkkiä, ota selvää muutosten vaikutuksesta.
Vihje: Useissa levityspaketeissa voit tehdä palomuurin asennusvaiheessa. Näin esimerkiksi Redhat 7.2:ssa ja uudemmissa. Myös esimerkiksi Alan Coxin tekemä Lokkit on graafinen ohjelma, jolla voit tehdä yksinkertaisen palomuurin koneellesi.
Esimerkki 7-3. rc.firewall
#!/bin/sh # ################################################################## # /etc/rc.d/rc.firewall ################################################################## # # Esimerkkityyppinen skripti Linux kernel 2.2.x + ipchains-pohjaiseen # palvelimeen suojaamaan palvelin toisaalta internetin suunnasta # tulevista asiattomista yhteydenmuodostuksista ja toisaalta # sallimaan ip-naamioidut yhteydet omasta lähiverkosta internettiin. # # Ohjeen ovat koostaneet useiden netin tietoturvaohjeiden pohjalta # Juhani Rantanen <misty@sgic.fi> # Jussi Törhönen <jt@iki.fi> # # Tämä skriptin voi ajaa käynnistysvaiheessa lisäämällä # /etc/rc.d/rc.local scriptin loppuun rivit (ilman kommenttimerkkejä!): # ### ipchains-muurin käynnistys: #if [ -f /etc/rc.d/rc.firewall ]; then # echo "Loading rc.firewall rules ..." # /etc/rc.d/rc.firewall #fi # # Käynnistyksen jälkeen säännöt ovat nähtävissä komennolla # 'ipchains -L -n' # ################################################################## # # Oma julkinen ip-osoite internetin puoleisella eth0-verkkokortilla. # Vaihda tähän oma kiinteä ip-osoitteesi: ETH0IP=10.20.30.40 # # Oman ISP:n NTP-aikapalvelin: ISPNTP=ntp.OMAISP.fi # # Oman ISP:n SMTP-postipalvelimet: ISPSMTP1=smtp1.OMAISP.fi ISPSMTP2=smtp2.OMAISP.fi # PATH=/sbin # ########################################################################### ### Disable ip spoofing: if [ -e /proc/sys/net/ipv4/conf/all/rp_filter ]; then echo -n "Enabling IP spoofing protection..." for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 1 > $f done echo "done." fi # ########################################################################### ### Disable TCP SYN attach disturbation: if [ -w /proc/sys/net/ipv4/tcp_syncookies ] then echo -n "Enabling TCP SYN Cookie Protection..." echo 1 > /proc/sys/net/ipv4/tcp_syncookies echo "done." fi # ########################################################################### ### Enable logging Spoofed Packets, Source Routed Packets, Redirect Packets if [ -e /proc/sys/net/ipv4/conf/all/log_martians ]; then echo -n "Enable logging Spoofed, Source Routed and Redirect Packets..." for f in /proc/sys/net/ipv4/conf/*/log_martians; do echo 1 > $f done echo "done." fi ########################################################################### #################################################################### ### FLUSH ALL RULES ### Poistetaan kaikki olemassaolevat palomuurisäännöt ipchains -F input ipchains -F output ipchains -F forward # # Estetään kernelin ip-forwarding eli ip-pakettien reititys. # Sallitaan myöhemmin tässä scriptissä ACCEPT tai MASQ säännöillä. echo "0" > /proc/sys/net/ipv4/ip_forward # #################################################################### ### ANTI-SPOOFING # ks. ftp://ftp.funet.fi/pub/networking/documents/rfc/rfc1918.txt ### Estetään ulkoverkosta tulevat, sisäverkon osoitteella lähetetyt ### paketit. Näin verkkoosi ei pääse käsiksi ulkoverkosta ### väärennetyllä ip-osoitteella. # ipchains -A input -p all -l -j REJECT -s 10.0.0.0/8 -i eth0 -d $ETH0IP ipchains -A input -p all -l -j REJECT -s 127.0.0.0/8 -i eth0 -d $ETH0IP ipchains -A input -p all -l -j REJECT -s 192.168.0.0/16 -i eth0 -d $ETH0IP ipchains -A input -p all -l -j REJECT -s 172.16.0.0/12 -i eth0 -d $ETH0IP # ### FTP-DATA auki kaikille, jotta pääsisit tästä Linux-palvelimesta ### ulos internetin ftp-palvelimiin ilman ftp-asiakasohjelman passive- ### modea. Jos FTP-DATA on tukossa, passive-mode ftp:llä yhteys ### toimii, mutta voi sitä käyttäjien narinan määrää ;-) ### Ftp-yhteys syntyy Linuxista ftp-palvelimen porttiin 21/tcp ### ja data-kanava aukeaa ftp-palvelimesta tämän Linux-purkin porttiin ### 20/tcp (ftp-data on portin nimi, ks. /etc/services). # ipchains -A input -p tcp -j ACCEPT -s 0/0 -i eth0 -d $ETH0IP ftp-data # ### SMTP-portti auki kaikille, jos tässä Linux-purkissa on julkinen ### sähköpostipalvelin (sendmail, zmailer, qmail, ...) ja halutaan ### reitittää SMTP-postia internetistä tähän koneeseen asti. ### Yhden postilaatikon mailien imurointi oman ISP:n postipalvelimelta ### ei vaadi sendmailia tähän, vaan homma hoituu esim. fetchmail- ### ohjelmalla. # ipchains -A input -p tcp -j ACCEPT -s 0/0 -i eth0 -d $ETH0IP smtp # ### Vaihtoehtona em. riville voidaan sallia sisääntuleva SMTP ainoastaan ### oman ISP:n SMTP-palvelimimlle. Nimipalvelun MX-tietueet oltava ### määritelty siten, että posti kiertää ISP:n SMTP-servojen ### kautta sisään. Ks. esim. 'nslookup -type=mx iki.fi' jossa iki.fi ### voisi tukkia SMTP-palvelunsa muilta, paitsi ISP:nsä mail.clinet.fi ### palvelimelta. Kaikki saapuva posti tulisi sisään mail.clinet.fi ### palvelimen kautta. # # ipchains -A input -p tcp -j ACCEPT -s $ISPSMTP1 -i eth0 -d $ETH0IP smtp # ipchains -A input -p tcp -j ACCEPT -s $ISPSMTP2 -i eth0 -d $ETH0IP smtp # ### NTP-portti auki ISP:n NTP-palvelimelle. Jos tässä Linux-purkissa ### pyöritellään xntpd-aikapalvelua tai halutaan ajastaa kello ### määrävälein ntpdate-koomennolla, täytyy ao. portit olla auki: # ipchains -A input -p udp -j ACCEPT -s $ISPNTP -i eth0 -d $ETH0IP ntp ipchains -A input -p udp -l -j REJECT -s 0/0 -i eth0 -d $ETH0IP ntp ipchains -A input -p tcp -j ACCEPT -s $ISPNTP -i eth0 -d $ETH0IP ntp ipchains -A input -p tcp -l -j REJECT -s 0/0 -i eth0 -d $ETH0IP ntp # ### auth = ident kielletään, mutta ei logata. Internetin sendmail, ftp, ### ... -palvelimet tekevät paljon ident-kyselyitä, kun niihin avataan ### yhteyksiä. Portin ei ole pakko olla auki. # ipchains -A input -p tcp -j REJECT -s 0/0 -i eth0 -d $ETH0IP auth # ###################################################################### ### BLOCKING 1:1023 (laitetaan oletuksena kaikki < 1024 portit tukkoon) # ipchains -A input -p tcp -l -j REJECT -s 0/0 -i eth0 -d $ETH0IP 1:1023 ipchains -A input -p udp -l -j REJECT -s 0/0 -i eth0 -d $ETH0IP 1:1023 # ### Oletuksena >=1024 portit ovat kaikille auki, ja yhteydet niistä ### täytyy erikseen kieltää tarvittaessa. Tässä myyräntyössä ### ovat suurena apuna komennot 'netstat -a -n' ja 'netstat -ltup -n' # # Squidin SNMP-moduli tukkoon (portissa 3401/udp): ipchains -A input -p udp -l -j REJECT -s 0/0 -i eth0 -d $ETH0IP 3401 # # Squid proxy cache tukkoon (portissa 3128/tcp): ipchains -A input -p tcp -l -j REJECT -s 0/0 -i eth0 -d $ETH0IP 3128 # # X11 tukkoon: ipchains -A input -p tcp -l -j REJECT -s 0/0 -i eth0 -d $ETH0IP 6000:6100 ipchains -A input -p udp -l -j REJECT -s 0/0 -i eth0 -d $ETH0IP 6000:6100 ipchains -A input -p tcp -l -j REJECT -s 0/0 -i eth0 -d $ETH0IP 6667 ipchains -A input -p tcp -l -j REJECT -s 0/0 -i eth0 -d $ETH0IP 7000 # ##################################################################### ### FORWARD RULES # # Ladataan vaadittavat ip-maskausmoduulit # # HUOM: Lataa vain tarvittavat moduulit. Kaikki tämänhetkiset # moduulit näkyvät alla, mutta niistä osa on kommenttiriveillä. # # Tämä moduuli tukee ftp-siirtoyhteyttä, kun ip-maskaus on päällä modprobe ip_masq_ftp # # Tukee ip-maskausta Realaudion UDP-siirron kanssa. Ilman tätä # Realaudio toimii, mutta käyttää TCP-protokollaa siirtoon. # Tämä voi heikentää äänenlaatua. # modprobe ip_masq_raudio # ### Tukee IRC-protokollan DCC-protokollan mukaista tiedostonsiirtoa # modprobe ip_masq_irc # # Tukee Quaken/Quakeworldin käyttämien protokollien maskausta # Jälkimmäinen esimerkki tukee kaikkia Quaken versioita ### Quake I / QuakeWorld (portit 26000 ja 27000) # modprobe ip_masq_quake # ### Quake I/II/III / QuakeWorld (portit 26000, 27000, 27910, 27960) # modprobe ip_masq_quake ports=26000,27000,27910,27960 # ### Tukee CuSeeMe-videoneuvotteluohjelman maskausta # modprobe ip_masq_cuseeme # ### Tukee VDO-live-videoneuvotteluohjelman maskausta # modprobe ip_masq_vdolive # ### TÄRKEÄÄ: sallitaan ip-pakettien reititys, koska se kiellettiin aiemmin # # Redhat Users: you may try changing the options in # /etc/sysconfig/network from: # # FORWARD_IPV4=false # to # FORWARD_IPV4=true # echo "1" > /proc/sys/net/ipv4/ip_forward # ### Dynaamisen IP:n käyttäjät # Jos haet ip-osoitteesi dynaamisesti PPP- tai DHCP-protokollalla, # salli seuraava optio. # # If you get your IP address dynamically from SLIP, PPP, or DHCP, # enable this following option. This enables dynamic-ip address # hacking in IP MASQ, making the life # with Diald and similar programs much easier. # # echo "1" > /proc/sys/net/ipv4/ip_dynaddr # ### MASQ timeouts # # 2 hrs timeout for TCP session timeouts # 10 sec timeout for traffic after the TCP/IP "FIN" packet is received # 160 sec timeout for UDP traffic (Important for MASQ'ed ICQ users) # ipchains -M -S 7200 10 160 # ### DHCP: For people who receive their external IP address from either # DHCP or BOOTP # such as ADSL or Cablemodem users, it is necessary to use the # following # before the deny command. The "bootp_client_net_if_name" should # be replaced # the name of the link that the DHCP/BOOTP server will put an # address on to? # This will be something like "eth0", "eth1", etc. # # This example is currently commented out. # # # ipchains -A input -j ACCEPT -i bootp_clients_net_if_name \ # -s 0/0 67 -d 0/0 68 -p udp # ### Enable simple IP forwarding and Masquerading # # NOTE: The following is an example for an internal LAN address in the # 192.168.0.x # network with a 255.255.255.0 or a "24" bit subnet mask. # # Please change this network number and subnet mask to match # your internal LAN setup # ipchains -P forward DENY # ### Jos sisäverkossa on kaksi verkkokorttia ja niissä omat ### aliverkkonsa (eth1: 192.168.0.0/24 ja eth2: 192.168.1.0/24) ### sallitaan tässä ip-forwarding eli ip-reititys ilman ip-naamiointia. # ipchains -A forward -i eth1 -d 192.168.1.0/24 # ipchains -A forward -i eth2 -d 192.168.0.0/24 # ### Sallitaan sisäverkon private network -verkoista ip-naamioidut ### yhteydet internettiin. Private-verkoista kannattaa lukea ### ftp://ftp.funet.fi/pub/networking/documents/rfc/rfc1918.txt # ipchains -A forward -p all -s 10.0.0.0/8 -j MASQ ipchains -A forward -p all -s 172.16.0.0/12 -j MASQ ipchains -A forward -p all -s 192.168.0.0/24 -j MASQ # ### Jos sisäverkossa on kaksi verkkokorttia ja niissä omat ### aliverkkonsa (eth1: 192.168.0.0/24 ja eth2: 192.168.1.0/24) ### sallitaan tässä ip-forwarding eli ip-reititys ilman ip-naamiointia ### ko. verkkojen välillä: # # ipchains -A forward -i eth1 -d 192.168.1.0/24 # ipchains -A forward -i eth2 -d 192.168.0.0/24 # ## Set telnet, www and FTP for minimum delay - # This section manipulates the Type Of Service (TOS) bits of the # packet. For this to work, you must have CONFIG_IP_ROUTE_TOS enabled # in your kernel # ipchains -A output -p tcp -d 0/0 www -t 0x01 0x10 ipchains -A output -p tcp -d 0/0 telnet -t 0x01 0x10 ipchains -A output -p tcp -d 0/0 ftp -t 0x01 0x10 # # Set ftp-data for maximum throughput ipchains -A output -p tcp -d 0/0 ftp-data -t 0x01 0x08 # ##################################################################### # ### The End. |
Jos haluat yhteyden kotiverkostasi [4] nettiin yhden koneen kautta, voit käyttää siihen Linuxia. Linuxissa tätä tekniikkaa kutsutaan nimellä IP Masquerade tai NAT (Network Address Translation). Paras lähde on Linux IP Masquerade HOWTO, mutta tässä myös muutamia muita linkkejä aiheesta:
Viive todennäköisesti johtuu siitä, että tcpd koittaa etsiä koneen ip-osoitetta vastaavaa nimeä nimipalvelusta, ja viive on nimipalvelun timeout-aika. Sinulla täytyy olla joko verkossasi olevien koneiden osoitteet saatavilla joko DNS- tai NIS-nimipalvelulla, tai sitten jokaisella koneella /etc/hosts, johon on määritetty koneiden ip:t ja nimet.
Yleisimmissä distribuutioissa tulee mukana distribuution itse paketoimat OpenSSL ja OpenSSH, jotka käyttävät vahvaa salausta.
OpenSSH on pääasiassa OpenBSD-projektin kehittämä ilmainen BSD-lisenssillä levitettävä SSH-ohjelmisto. OpenSSH tukee SSH-protokollan versioita 1.3, 1.5 ja 2.0, eikä se sisällä patentoituja algoritmeja. OpenSSH tarvitsee toimiakseen OpenSSL-kirjaston. The OpenSSH Portability Team myös levittää valmiita binäärejä ja RPM-paketteja.
Replayn palvelimelta löydät yleisimmät salausta käyttävät ohjelmat, kuten myös ssh:n. Lähin peili löytyy palvelimelta ftp.jyu.fi.
OpenSSH sekä alkuperäinen SSH ovat saatavilla Debianin nonus-palvelinverkosta, joka Suomesta löytyy osoitteesta http://ftp.fi.debian.org/. OpenSSH on lisäksi mukana Debian 2.2:n virallisen ykkös-CD:n NONUS-versiossa.
OpenSSH:n ja SSH Communications Security Oy:n versioiden lisäksi on olemassa muitakin sekä ilmaisia että kaupallisia SSH-palvelin- ja asiakasohjelmistoja.
Helsingin yliopiston ATK-osasto on tehnyt suomenkielisen ohjeen SSH:n asennusta ja käyttöä varten.
Luettele kirjastot linkkauskomennon lopussa, älä alussa.
Mitä väliä on objektitiedostojen ja kirjastojen järjestyksellä? Tarkastellaan sellaisen pienen ohjelman linkkausta, jonka ainoa objektitiedosto on ohjelma.o ja joka käyttää matematiikkakirjastoa.
Oikea komento on gcc ohjelma.o -lm. Linkkeri lukee ensin tiedoston ohjelma.o ja kirjaa muistiin viittaukset tuntemattomiin symboleihin (matematiikkakirjaston funktioihin). Sitten se lukee kirjaston libm.a, joka sisältää monta objektitiedostoa. Niistä otetaan mukaan ne (ja vain ne), jotka määrittelevät tarpeellisia symboleita. Linkkeri tietää nyt, minne ohjelma.o:n viittaukset osoittavat.
Komento gcc -lm ohjelma.o taas käskee linkkerin lukea ensin kirjaston libm.a. Kirjaston mikään osa ei määrittele yhtään tarpeellista symbolia, joten siitä ei oteta mukaan yhtään tiedostoa. Seuraavaksi linkkeri lukee ohjelma.o:n, joka viittaa tuntemattomiin symboleihin. Se kirjaa nämä viittaukset muistiin, mutta koska komentorivillä ei ole enää muuta, viittauksille ei löydy kohdetta.
Edellinen kuvaus ei ole aivan rehellinen, mutta auttaa toivottavasti muistamaan, miksi kirjastot luetellaan lopussa, ja arvaamaan, missä järjestyksessä toisiaan käyttävät kirjastot pitää luetella. Jos haluat ymmärtää paremmin, mitä linkkausvaiheessa tapahtuu, lue gcc:n ja ld:n ohjesivut.
Kannattaa asentaa paketit käyttäen distribuution omaa paketinhallintaa, jos sellainen on. Ja luultavasti on, tosin Slackware on poikkeus (sen "paketinhallinta" on äärimmäisen yksinkertainen muihin verrattuna). Jos haluaa itse kääntää ohjelmia, olisi myös hyvä tietää joitain perusasioita ohjelmoinnista sekä Linuxin toiminnasta. Aloittelijoita ja laiskoja varten on binääripaketit.
Ohjelmat asentuvat yleensä oletusarvoisesti /usr/local-hakemistoon, ja /usr/local/lib ei ole normaalisti /etc/ld.so.conf-tiedostossa, jossa määritellään mistä hakemistoista haetaan kirjastoja. Jos siis kääntää kirjastoja itse, pitää muistaa sekä lisätä rivi "/usr/local/lib" tiedostoon /etc/ld.so.conf sekä ajaa
# ldconfig -v |
Jos (lähes) mikä tahansa configure-skriptiä käyttävä ohjelma ei käänny, tiedostosta config.log saa lisätietoja. Ja jollei ymmärrä sitä, kannattaa loppuosa siitä lähettää uutisryhmään. Ohjelmien käännösohjeet kannattaa myös aina lukea ennen kuin kysyy uutisryhmässä. Jos olet lukenut ne, muttet ymmärrä niitä tai niistä ei ole ollut apua, kannattaa kertoa siitä kysyessään.
Redhat ja Debian käyttävät omia paketinhallintaohjelmiaan (Redhatin rpm-ohjelmaa käytetään myös useissa muissa levityspaketeissa). Itse käännetyt ohjelmat asentuvat siististi järjestelmään, kun ne kääntää paketinhallintajärjestelmän avulla.
Rpm:ää käyttävissä järjestelmissä lähdekoodipaketteja (joiden pääte on yleensä .srpm) voi kääntää komennolla
# rpm --rebuild <paketin nimi> |
Vaihtoehtoisesti voi asentaa lähdekoodipaketin komennolla
# rpm -i <paketin nimi> |
# rpm -bb /usr/src/redhat/SPECS/<paketin nimi>.spec |
Spec-tiedosto on tekstitiedosto, jota voi myös editoida, jos haluaa muokata käännöstapahtumaa. Lisätietoja: RPM-HOWTO ja kirja "Maximum RPM".
Debianin lähdekoodipaketit koostuvat kolmesta (tai joskus kahdesta) tiedostosta: aina mukana ovat .dsc- ja .tar.gz-päätteiset tiedostot, ja useimpiin paketteihin kuuluu myös .diff.gz-tiedosto. Paketin dsc-tiedostossa lukee, mistä muista tiedostoista paketti koostuu. Debian-lähdekoodipaketin voi purkaa ja kääntää missä päin levyä vain tavallisena käyttäjänä; seuraava komento purkaa työhakemistossa olevan paketin omaksi alihakemistokseen:
$ dpkg-source -x <paketti>_<versio>.dsc |
# debian/rules binary |
Tiedosto debian/rules on standardoitu Makefile, joka huolehtii pakettien kasauksesta. Hakemistossa debian/ on muitakin kiinnostavia tiedostoja; niistä kertovat lisää Debian Policy Manual ja Debian Packaging Manual, jotka ovat Debian-paketeissa debian-policy ja packaging-manual.
Käytä tiedostoa ~/.forward ja lisää sinne haluamasi osoitteet.
Tässä posti jää myös paikalliseen palvelimeen. Kenoviiva (\) estää viestin uudelleen lähettämisen.
Eräs tapa on käyttää ohjelmaa sudo, jolla voit antaa tavallisille käyttäjille mahdollisuuden käynnistää ohjelmia pääkäyttäjänä. Komennolla visudo voit määritellä käyttäjät ja komennot. Alla olevassa esimerkissä käyttäjä kvalo saa oikeuden käynnistää käsky /sbin/shutdown.
Käyttäjä pystyy silloin esimerkiksi sammuttamaan koneen käskyllä
$ sudo shutdown -h now |
Australialaisen Linuxin käyttäjäryhmän ohje Linux, Clocks, and Time ja Linux Documentation Projectin The Clock Mini-HOWTO selittävät tarkemmin miten Linuxin kello toimii.
Aiheesta lisätietoja etsivä Google-kysely.
Suositeltavia vaihtoehtoja ovat joko Mplayer tai Xine. Nämä, kuten monet muutkin Linuxin ohjelmat, löytyvät Freshmeatistä.
Aiheesta lisätietoja etsivä Google-kysely.
Lisää Samban asetustiedostoon smb.conf osioon global ao. parametrit, niin skandilliset fileet näkyvät oikein:
Red Hatissa asia hoidetaan siten, että /etc/rc.d/init.d/xntpd-skripti suorittaa ntpdate-komennon parametreilla
Tiedostossa /etc/ntp/step-tickers kerrotaan ne ntp-palvelimet, joiden kanssa kello halutaan synkata. Esim.
Jos ntp1.eunet.fi löytyy verkosta ja sieltä saadaan aika, kello synkataan siihen ja käynnistetään xntpd-palvelu. ntp2- ja ntp3-palvelimet ovat varalla, jos ntp1:stä ei saada haettua aikaa.
Itse xntpd voidaan kiinteillä yhteyksillä asettaa synkkaamaan aikansa verkon yli ISP:si aikapalvelimesta kirjoittamalla tiedostoon /etc/ntp.conf
server 1.1.1.1 # vaihda oikea ip-osoite ntp1.OMAISP.fi server 2.2.2.2 # vaihda oikea ip-osoite ntp2.OMAISP.fi server 3.3.3.3 # vaihda oikea ip-osoite ntp3.OMAISP.fi |
Jos Internetiin ollaan yhteydessä puhelinverkon kautta, ei aikaa voida synkata jatkuvasti. Tällöin tiedostossa /etc/ntp.conf laitetaan xntpd-palvelu synkkaamaan aikansa systeemikelloon
Jos xntpd:n käynnistyksessä tai ntpdate-komennon jälkeen omassa skriptissä (esim. /etc/ppp/ip-up.local) halutaan synkata myös PC:n reaaliaikakello tarkasti oikeaan aikaan, voidaan tuon perään lisätä komento
Jokaisen kannattaa käyttää verkon kannalta lähellä olevaa aikapalvelinta, jollainen löytyykin useimmilta palveluntarjoajilta. Usein ainakin yksi löytyy nimellä ntp.OMAISP.fi. Varapalvelimina voi käyttää joitain muita kotimaisia julkisia NTP-palvelimia. Todennäköisesti nic.funet.fi suostuu jakamaan aikaa ainakin kaikille .fi -maan synkkaajille.
Jos olet saanut sekoitettua Linuxin niin, että se ei enää käynnisty, sinun ei luultavasti tarvitse asentaa sitä uudelleen. Katso Tarvitseeko Linux asentaa uudelleen vikatilanteessa? teoksessa Luku 2>. Voit käynnistää ja korjata Linuxin monella tavalla. Tässä kappaleessa annetaan vinkkejä miten saat sen tehtyä.
Voit käynnistää Linuxin yhdenkäyttäjän tilaan (single user mode) [5] seuraavalla tavalla:
Lilo- tai GRUB-promptissa kirjoita seuraava (olettaen että kirjoittamalla linux saat systeemisi normaalisti käynnistymään)
LILO: linux -b |
Systeemi nousee ylös, eikä aja mitään käynnistysskriptejä.
Juuriosio on ylläpitotilassa liitetty kirjoitussuojattuna. Liitä juuriosio siis uudelleen seuraavalla komennolla, jotta voit muokata sillä olevia tiedostoja:
# mount -n -o rw,remount / |
Liitä kaikki muut tarvitsemasi partitiot, esimerkkinä /usr-partitio.
# mount /usr |
Korjaa virheelliset tiedostot kuntoon.
Komenna sync varmuuden vuoksi.
Irroita (engl. unmount) ylimääräiset partitiot järjestelmästä.
# umount -a |
Liitä juuripartitio uudelleen kirjoitussuojatuksi, tämäkin vain varmuuden vuoksi.
# mount -n -o ro,remount / |
Käynnistä kone uudelleen.
# shutdown -r now |
Mikäli haluat nämä paketit auki Windowsissa, Winzip sekä useimmat muut pakkausohjelmat osaavat purkaa tämänkin formaatin.
Paketit, joiden pääte on .tar.gz (tai joskus .tgz), on pakattu tar- ja gzip-ohjelmilla. Voit tutkia paketteja käskyllä:
$ tar -tzvf paketti.tar.gz |
Paketti puretaan seuraavalla käskyllä:
$ tar -xzvf paketti.tar.gz |
Paketti luodaan käskyllä:
$ tar -czvf paketti.tar.gz hakemisto |
Lisää kertovat tar- ja gzip-komentojen manuaali- ja info-sivut.
Kaikissa järjestelmissä, mihin bzip2 on asennettu, toimii ainakin komento:
$ bzcat paketti.tar.bz2 | tar -xvf - |
Uudet tar-komennon versiot osaavat myös automaattisesti purkaa bzip-pakkauksen. Varmista tämä tar-komennon manuaali- tai infosivuilta.
Tiedostoja etsitään käskyllä find. Seuraava esimerkki etsii juurihakemistosta alkaen tiedostoa, jonka nimen osana on foo.
$ find / -name "*foo*" |
Find on hyvin monipuolinen ohjelma ja se tuntee suuren määrän erilaisia hakuehtoja. Manuaalisivu find(1) ja findin info-sivu kertovat näistä enemmän. Myös KDE:ssa ja GNOME:ssa on graafiset edustaohjelmat find- ja locate-komennoille.
Linuxissa on myös yleensä asennettuna ohjelma nimeltään locate. Locate on nopeampi kuin find, koska tiedostoja etsitään tietokannasta. Tietokannan päivittämiseen on olemassa käsky updatedb. Locate-ohjelmalla ei tietenkään löydä tiedostoja, joita ei ole vielä lisätty sen tietokantaan. Kanta päivitetään yleensä automaattisesti tietyin väliajoin.
Locate-käsky on helpompi käyttää kuin find. Tiedostoa, jonka nimen osana on foo, etsitään locatella seuraavasti:
$ locate "*foo*" |
Lisää kertovat manuaalisivut locate(1) ja updatedb(1).
Huomaa: Jos käytät merkkejä '?' tai '*', laita ne lainausmerkkeihin. Muuten käyttämäsi komentotulkki muuttaa näitä merkkejä.
Jotta saat asennettua OpenOfficen [6] turvallisesti, kannattaa se asentaa tavallisen käyttäjän oikeuksin. Pääkäyttäjän (root) käyttöä kannattaa välttää. Suorita asennusohjelma tavallisin oikeuksin, esimerkiksi tarkoitusta varten luomaasi käyttäjätunnusta "soffice" käyttäen.
Pääkäyttäjän tunnuksella sinun tarvitsee vain luoda mainittu käyttäjä ja kohdehakemisto sekä muuttaa kohdehakemiston oikeudet sopiviksi. Kotihakemistoa tunnus ei tarvitse, siksi vipu "--no-create-home".
$ su root Password: # adduser --no-create-home soffice Adding user soffice... Adding new group soffice (1003). Adding new user soffice (1003) with group soffice. Not creating /home/soffice. Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully Changing the user information for soffice Enter the new value, or press return for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [y/n] y erasmus:/home/suonpaa# mkdir /opt/soffice erasmus:/home/suonpaa# chown soffice:soffice /opt/soffice/ erasmus:/home/suonpaa# chmod 755 /opt/soffice/ erasmus:/home/suonpaa# exit exit $ su soffice Password: $ /tmp/so-5_2-ga-bin-linux-en.bin /net |
Valitse kohdehakemistoksi juuri luomasi hakemisto ja asennusohjelman valittaessa ongelmista /home/soffice/.kde -hakemiston kanssa ei kannata välittää, "Ignore" kelpaa erinomaisesti vastaukseksi.
Kun asennus on päättynyt, voit asentaa StarOfficen erikseen kullekin käyttäjälle. Ensin sinun on kuitenkin karistettava käyttäjätunnuksen "soffice" pölyt niskastasi:
bash-2.03$ exit |
Käyttäjäkohtaisen asennuksen suoritat setup-ohjelmalla.
suonpaa@erasmus:~$ /opt/soffice/program/setup |
Kysyttäessä, valitsethan asennustavaksi "Standard Workstation Installation", ellei sinulla todellakin ole liikaa tilaa kovalevylläsi.
Jos yrität kääntää ohjelmaa lähdekoodista ja se ei toimi, kannattaa virheilmoitus lukea tarkasti (kuten aina). Yleensä virheet johtuvat kehityspakettien tai kääntäjän puuttumisesta. Tarkista ainakin, että libc6:n ja GCC:n kehityspaketit on asennettu.
Voit myös itse selvittää mikä paketti sinulta puuttuu. Jos
virheilmoituksessa mainitaan tiedoston tai komennon
puuttumisesta, voit käyttää esimerkiksi Debianin
pakettien sisältöhakua.(FAQ:in ylläpitäjä
<Kalle.Valo@hut.fi>
etsii vastaavia palveluita
muille levityksille, erityisesti RedHatille. Jos tiedät
tällaisen, lähetä meiliä.)
Tässä on Tapio Lehtosen tekemä sanasto, joka on Debianin asennusohjeen suomennoksessa.
aaltoviiva
käyttäjätunnus
ylläpitäjä, pääkäyttäjä
[APM]
sähkönsäästötoiminnot
laitearkkitehtuuri
prosessoriarkkitehtuuri
pakattu tiedosto
nuolinäppäimet
tutkia laitteistoa, tunnustella, "haistella"
varmuuskopio
peruskokoonpano
BIOS-välimuisti
BIOS-asetusvalikko
bitti
käynnistys-CD, käynnistysromppu
alkulataus, käynnistys, 'boottaus' [warm boot, cold boot]
käynnistyslaite
käynnistyslevyasema
kylmäkäynnistyslevykkeet, käynnistyslevykkeet
alkulatausohjelma
alkulatausohjelman valikko, käynnistysvalikko [multiboot]
??
kylmäkäynnistysparametrit
käynnistyssektori
levitysviesti, yleislähetys
ohjelmavirhe, "käpy", bugi
vikailmoitus
tavu
välimuisti
"romppu", CD-levy
luku
merkkipohjainen
tarkistussumma
suljettu vika, vika joka on ilmoitettu ja korjattu
suljettu laitteisto
kylmäkäynnistys, käynnistys kytkemällä virta päälle
asetukset
asetustiedosto
muuta asetuksia
törmätä (?), olla ristiriidassa
turmella, filesystem got corrupted = tiedostojärjestelmä turmeltui
CPU, prosessori
kaatua (operating system crashed)
räätälöity
demoni, takapiru
aineisto, data, tieto
Debian tiedostopalvelin ??
jäljittää virheitä, virheen jäljitys
oletusreititin
eheyttää
eheytystoiminto
riippuvuus
työasema
laiteajuri
laitenimi (esim. /dev/eth0)
valintaikkuna
soittoyhteys
levylohko
levyn pakkaus
levykuva, levyn binäärikuva
?? mikä tämä on?
jakelu, levitysversio, distro, (Linux Distribution ~ valmiiksi koottu "paketti" jossa Linux ydin, ohjelmia, asennusohjelma ja ohjeita)
kirjoitelma, asiakirja, käsikirja, ohje
verkkoaluenimi
kaksoisnäpäytys
imuroida, siirtää tiedosto palvelimelta omalle koneelle
laiteohjain
teksturi, editori
sulautettu
rivinvaihtonäppäin
suoritettava ohjelma
Frequently Asked Questions, Usein Kysytyt Kysymykset (ja niiden vastaukset). Uutisryhmissä, postituslistoilla, helpdeskeissä ja vastaavissa ollaan kyllästytty vastaamaan aina vaan samoihin kysymyksiin, on asianmukaista lukea FAQ ennen kuin kyselee.
tiedostonimi, ilman hakemistojen nimiä [pathname]
tiedostojärjestelmä
kovo, sisäinen ohjelmisto, yleensä ROM:lla oleva oheislaitteen tms. ohjelma
tyhjennä välimuisti
kirjasinlaji
vapaa ohjelma
ilmaisohjelma
ruutunäyttö
yhdyskäytävä
gigabitti
gigatavu
sukulainen, generic NE2100 card = "NE2100 kortin sukulaisia"
näytönohjain ??
graafinen käyttöliittymä
ryhmä
jumittua, program hangs = ohjelma jumittuu
kiintolevy, "kovalevy"
laiteasetukset
laitteiston kokoonpano
laitteisto, tietokonejärjestelmä
otsikkotieto??
opastusteksti
konenimi
kelvoton konekäsky
järjestelmä (?)
malliasennus, määrittely jonka perusteella asennusohjelma osaa valita ja konfiguroida asennettavat ohjelmapaketit
asennusohjelmisto
asennus verkosta
konekäsky, konekielinen käsky
rajapinta
siltaaja
siltaus
siltaus, jumpperi
kenoviiva
ytimen binäärikuva
ydin
"läppäri", kannettava tietokone
käyttöoikeusopimus
liittää, link to kernel = liittää ytimeen
hardwareosoite, eetterikortin 6-tavuinen tunniste
postituslista
emolevy
päälevitysversio
manuaalisivu (näitä luetaan komennolla man)
"viilailua"
pääkäynnistyslohko
megabitti
megatavu
pääkäynnistyslohko
taltio, media (levy, CD, nauha tms.)
tiedostopalvelimen kopio
Memory Management Unit, muistinhallintayksikkö
modeemi
toimintatila
emolevy
liittää
liitoskohta
osoitinlaite, hiiri
monikäynnistys, samassa koneessa kaksi tai useampia käyttöjärjestelmiä ja käynnistettäessä valitaan mikä käynnistyy
ryhmälähetys, monilähetys
moniprosessorijärjestelmä
monisuoritin
moniajo
myy
nimipalvelin
verkon peitto
verkon osoite
verkkokortti, LAN-kortti (NIC)
verkkoasennus
verkkokortti, LAN-kortti (NIC)
verkkoadapteri, network interface card
avoin
olla linjalla, linja auki, suora, suoraan kytketty, linja-
avoin vika, vika joka on ilmoitettu mutta ei vielä korjattu
vapaa ohjelma
käyttöjärjestelmä
ohjelmapaketti, .deb -tiedosto, (joukko tiedostoja, konfigurointitietoa ja asennustiedostoja)
pakettien hallintajärjestelmä
sivuttaja
sivutus, MMU siirtää muistisivuja levylle kun käyttömuisti täyttyy
luetteloruutu
kappale
rinnakkaisportti, kirjoitinportti
pariteetti
pariteettimuisti, muisti joka havaitsee yhden bitin virheen muistisanassa
levyosio
osio
osiotaulu
polkunimi, tiedoston nimi jossa mukana hakemistot juurihakemistosta lähtien, esimerkiksi /etc/apt/sources.list [filename]
laitealusta
valmisosa, lisäosa
osoitinlaite (hiiri yms.)
siirros
siirtää
PPP, Point to Point Protocol, suunnilleen TCP/IP yhteys sarjaportista
ensisijainen
tulostin
tutkia laitteistoa
menettelytapa
suoritin
prosessi
kehoite
suojattu (patentilla, tekijänoikeudella tai muuten)
ps/2 -hiiri
nykyhakemisto
muistilevy, näennäislevy
käyttömuisti, Random Access Memory, muisti johon voi sekä kirjoittaa että josta voi lukea, keskusmuisti on tällaista
bitti bitiltä, kirjoita levylle
tehdä uudelleenkäynnistys, uudelleenkäynnistys
julkaista
levitysversio (?)
alkuarvojen palautus, palauttaa oletusarvoihin, "resetoida"
ristikkomerkki
lukumuisti, Read Only Memory, muisti johon ei voi kirjoittaa
juurihakemisto
juuriosio
pääkäyttäjän oikeudet
pääkäyttäjä
kuvanlukija, "skanneri"
aliluku, kohta [chapter, subsection]
sarjahiiri
palvelin(kone)
asetusvalikko
ottaa käyttöön, tehdä alkuasetukset
varjosalasana
varjomuisti
komentotulkki
Symmetric MultiProcessor, symmetrinen moniprosessori, tietokone jossa on useita samanlaisia prosessoreita ja niitä pystytään ajamaan samanaikaisesti
tilannevedos
lähdekoodi
välinäppäin
tyhjämerkki
sanaväli, välilyönti
roskaposti
käynnistysviestit
massamuisti
tuetut laitteet
heittovaihto, käyttöjärjestelmä siirtää kokonaisen prosessin levylle kun käyttömuisti täyttyy (nykyaikaisissa käyttöjärjestelmissä on tämän tilalla sivutus) [paging]
järjestelmän ylläpitäjä, pääkäyttäjä
laiteväylä
järjestelmäkutsu
järjestelmä
käyttöympäristö
laitteistovaatimukset
tietokonelaitteisto
sarkain
taksamerkki, 'kissanhäntä', 'miuku', at-merkki
teksturi, muokkausohjelma, tekstintoimitin
tämä asennusohje
ajastin
troijalainen, Troijan hevonen, ohjelma johon on kätketty yleensä vahinkoa tekevä toiminto
irroittaa
purkaa
päivittää
laitetoimittaja, myyjä
vinoviiva, kauttaviiva
virtuaalikonsoli
virtuaalikonsoli (onko kumpikaan sana suomea?)
näennäismuisti, virtuaalimuisti
virtuaalimuisti (onko tällä suomennos?)
virusten torjunta
'lämmin käynnistys', uudelleenkäynnistys, siten että sähköt on päällä koko ajan, esimerkiksi Control-Alt-Del
Web-selain, seittiselain
seitti (miksi seitti? eikö web ole verkko? verkossa monta seittiä), webbi, www
webbi
näköisnäyttö, What You See Is What You Get
graafinen käyttöliittymä, yleinen Unix-koneissa
X Window
[X Window]
[X Window]
yhdysmerkki
~
data
timer
section
reset
boot
boot loader
boot manager
Advanced Power Management
installation system
install over a network
configuration
configuration file
setup menu
non proprietary
open bug
BIOS setup menu
BIOS caching
bit
raw mode, write to disk in
boot method
CPU
Debian mirror
daemon
defragment
defragmenter
mainboard
motherboard
primary
FAQ
Gb
GB
graphical user interface
X Window
MAC
swap
freeware
download
umount
distribution
release
hang
root
root partition
debug
installation
system call
system administrator
system
crash
double click
paragraph
prompt
illegal instruction
\
hard disk
font
document
shell
instruction
hostaname
firmware
scanner
cold boot
boot floppies
boot parameters
bootable CD-ROM
boot device
boot drive
boot sector
startup messages
account
operating system
RAM
license
system
device driver
platform
architecture
hardware configuration
device
driver
vendor
system bus
hardware configuration
hardware
system requirements
release
broadcast
disk image
disk block
disk compression
partition
mount point
link
mount
pane
chapter
ROM
source code
warm boot
laptop
installation profile
manual page
storage device
Mb
MB
MMU
procedure
character based
disk manager
modem
multiprosessing
multiboot
multiple prosessors
multiprocessor
RAM disk
configure
μ
name server
arrow keys
pwd
virtual memory
WYSIWYG
graphical interface
package
bug
default gateway
online
help
partition
partition table
mouse
pointing device
header
set up
archive, zip archive
packaging system
server
parity RAM
parity
base system
pathname
mailing list
PPP
process
architecture
ps/2 mouse
unpack
upgrade
master boot record
MBR
root privileges
root
main distribution
interface
dependency
parallel port
#
enter
CD-ROM
spam
full screen
group
multicast
custom
space
serial mouse
tab
world wide web
port
port
jumper block
jumpering
jumper
pager
paging
dialup connection
generic
embedded
closed hardware
closed bug
proprietary
executable
processor
SMP
APM
@
media
checksum
byte
reboot
editor
text editor
file system
filename
mirror
system
snapshot
mode
trojan horse
supported hardware
printer
corrupt
probe hardware
auto-probing
flush the cache
space character
desktop machine
this document
conflict
dialog box
plugin
free software
open source software
shadow RAM
shadow password
backup
NIC
domain name
network installation
network card
network interface card
network address
netmask
massaging
bug report
/
virtual console
virtual console
virtual memory
virus protection
cache
space bar
www
web browser
X
X Window
X11
kernel
gateway
-
administrator
kernel image
[1] | engl. network support |
[2] | laitetiedostot (eli /dev/ hakemiston tiedostot) ovat Linuxin (ja muiden UNIX-varianttien) ominaisuus, joiden toiminnallisuuden selittäminen vaatisi tarkempaa perehtymistä Linuxin virtuaaliseen tiedostojärjestelmään ja ytimen saloihin. Tähän tarkoitukseen on olemassa kuitenkin omat dokumenttinsa ja koska asiasta ei tarvitse käytön kannalta tietää aivan kaikkea, niin sen selittäminen on jätetty tämän FAQ:n ulkopuolelle. |
[3] | Jos haluat käsitellä osioita ohi tiedostojärjestelmän, kuten kopioida koko kovalevysi toiselle samanlaiselle kovalevylle, voit käyttää laitetiedostoja suoraan. Tätä ei kuitenkaan kannata tehdä, jollet ymmärrä täysin varmasti mitä olet tekemässä ja mitä laitetiedostot todella ovat. |
[4] | Tai mistä tahansa verkosta. |
[5] | Eräänlainen ylläpitotila. |
[6] | Tai myös StarOfficen, joka perustuu OpenOfficeen. Nämä ohjeet pätevät kumpaankin. |