Ero sivun ”Laitetiedostot” versioiden välillä
p (kh, selkeytystä) |
Pb (keskustelu | muokkaukset) (/dev/console ja /dev/null, johdannon selkeytys) |
||
Rivi 1: | Rivi 1: | ||
Laitetiedostot ovat <tt>/dev</tt>-[[hakemisto]]n alta löytyviä erikoistiedostoja, jotka ovat viittauksia tietokoneen eri laitteisiin. | Laitetiedostot ovat <tt>/dev</tt>-[[hakemisto]]n alta löytyviä erikoistiedostoja, jotka ovat viittauksia tietokoneen eri laitteisiin. Laitetiedostot voivat edustaa kiintolevyjä, äänikortteja ja muita "oikeita laitteita" sekä järjestelmän sisäisiä toimintoja, kuten esimerkiksi satunnaislukugeneraattoria. | ||
==Käyttö== | ==Käyttö== | ||
Rivi 20: | Rivi 20: | ||
*<tt>/dev/hdk4</tt> - Yhdennentoista IDE-liitännäisen kiintolevyn neljäs osio | *<tt>/dev/hdk4</tt> - Yhdennentoista IDE-liitännäisen kiintolevyn neljäs osio | ||
Useimmat [[jakelu]]t ovat nykyään ottaneet käyttöön [[libata]]n, jolloin <tt>/dev/hdX</tt>-muotoiset massamuistit korvautuvat <tt>/dev/sdX</tt>-muotoisilla laitteilla. | |||
Levyosioihin viitattaessa on huomattava, että osiot jaetaan ensisijaisiin ja loogisiin osioihin. Ensisijaisia osioita voi olla 4, ja siten osiot 1-4 ovat ensisijaisia osioita. Suuremmat luvut ovat loogisia osioita. Jos siis esimerkiksi toisella kiintolevyllä olisi yksi ensisijainen ja kaksi loogista osiota, näiden osioiden laitetiedostot olisivat | Levyosioihin viitattaessa on huomattava, että osiot jaetaan ensisijaisiin ja loogisiin osioihin. Ensisijaisia osioita voi olla 4, ja siten osiot 1-4 ovat ensisijaisia osioita. Suuremmat luvut ovat loogisia osioita. Jos siis esimerkiksi toisella kiintolevyllä olisi yksi ensisijainen ja kaksi loogista osiota, näiden osioiden laitetiedostot olisivat | ||
Rivi 58: | Rivi 58: | ||
*<tt>/dev/tty1</tt> - Ensimmäinen [[virtuaalikonsoli]] | *<tt>/dev/tty1</tt> - Ensimmäinen [[virtuaalikonsoli]] | ||
*<tt>/dev/pts/0</tt> - Ensimmäinen [[pseudoterminaali]] (esimerkiksi [[terminaaliemulaattori]]- tai [[SSH]]-istuntoa varten luotu) | *<tt>/dev/pts/0</tt> - Ensimmäinen [[pseudoterminaali]] (esimerkiksi [[terminaaliemulaattori]]- tai [[SSH]]-istuntoa varten luotu) | ||
== /dev/console ja /dev/null == | |||
Useimmat laitetiedostot luodaan yleensä dynaamisesti [[udev]]-ohjelmiston avulla. Laitetiedostot ilmestyvät <tt>/dev</tt>-[[hakemisto]]n alle sitä mukaa, kun tietokoneeseen liitetään laitteita ja niiden ajurit ladataan. | |||
Poikkeuksena tästä ovat <tt>/dev/console</tt> ([[konsole|järjestelmäkonsoli]]) sekä <tt>/dev/null</tt> (nollalaite), jotka ovat /dev-hakemiston alla pysyvästi, eli toisin sanoen myös silloin, kun /dev-hakemisto ei ole [[mount|liitettynä]]. | |||
Jos /dev/console ja /dev/null esimerkiksi [[juurihakemisto]]n siirron seurauksena puuttuvat, on tuloksena yleensä [[kernel panic]] ja siten [[GNU/Linuxin käynnistysprosessi|järjestelmän käynnistyksen]] epäonnistuminen. Virheilmoituksena voi olla esimerkiksi | |||
opening console: No such file or directory | |||
/dev/null: Read only file system | |||
Ratkaisuna on käynnistää kone esimerkiksi [[live-cd]]:ltä, liittää ongelmallinen [[juuriosio]] ja tehdä siitä väliaikainen juurihakemisto komennolla [[chroot]]. Sekä tämän jälkeen antaa komennot | |||
[[mknod]] -m 600 /dev/console c 5 1 | |||
mknod -m 666 /dev/null c 1 3 | |||
jotka luovat em laitetiedostot uudelleen. | |||
[[Luokka:Käsitteet]] | [[Luokka:Käsitteet]] | ||
[[Luokka:Järjestelmä]] | [[Luokka:Järjestelmä]] | ||
[[Luokka:Ohjeet]] | [[Luokka:Ohjeet]] |
Versio 9. helmikuuta 2009 kello 18.36
Laitetiedostot ovat /dev-hakemiston alta löytyviä erikoistiedostoja, jotka ovat viittauksia tietokoneen eri laitteisiin. Laitetiedostot voivat edustaa kiintolevyjä, äänikortteja ja muita "oikeita laitteita" sekä järjestelmän sisäisiä toimintoja, kuten esimerkiksi satunnaislukugeneraattoria.
Käyttö
Prosessoria voi helposti kuormittaa siirtämällä dataa satunnaislukugeneraattorilta (/dev/urandom) mustaan aukkoon (/dev/null):
cat /dev/urandom > /dev/null
Laitetaan kaiuttimista kuulumaan satunnaista kohinaa (satunnaisdataa äänilaitteelle /dev/dsp):
cat /dev/urandom > /dev/dsp
Otetaan levykuva cd-levystä:
cat /dev/cdrom > /home/kalevi/distrot/levykuva.iso
Joitain laitetiedostoja
Kiintolevyt
- /dev/hda - Ensimmäisen IDE-väylän isäntälevy
- /dev/hdb - Ensimmäisen IDE-väylän orjalevy
- /dev/hdc - Toisen IDE-väylän isäntälevy
- /dev/sda - Ensimmäinen sata-levy, USB-muisti tai ensimmäisen IDE-väylän isäntälevy (libataa käyttävä)
- /dev/hdk4 - Yhdennentoista IDE-liitännäisen kiintolevyn neljäs osio
Useimmat jakelut ovat nykyään ottaneet käyttöön libatan, jolloin /dev/hdX-muotoiset massamuistit korvautuvat /dev/sdX-muotoisilla laitteilla.
Levyosioihin viitattaessa on huomattava, että osiot jaetaan ensisijaisiin ja loogisiin osioihin. Ensisijaisia osioita voi olla 4, ja siten osiot 1-4 ovat ensisijaisia osioita. Suuremmat luvut ovat loogisia osioita. Jos siis esimerkiksi toisella kiintolevyllä olisi yksi ensisijainen ja kaksi loogista osiota, näiden osioiden laitetiedostot olisivat
- /dev/hdb1 - ensisijainen osio
- /dev/hdb5 - ensimmäinen looginen osio
- /dev/hdb6 - toinen looginen osio
Järjestelmän levyosiot voi listata fdiskillä antamalla pääkäyttäjänä komennon
fdisk -l
Syötteet
- /dev/input/mice - Järjestelmän hiiret
- /dev/input/mouse0 - Ykköshiiri
Muita oikeita laitteita
- /dev/dsp - Äänikortti
- /dev/mixer - Mikseri
- /dev/cdrom - CD-asema
- /dev/video0 - Ensimmäinen videolaite, esimerkiksi web-kamera.
- /dev/scd0 - Ensimmäinen SCSI-liitännäinen tai libataa käyttävä IDE-liitännäinen CD-asema
- /dev/cdrw - Kirjoittava CD-asema
- /dev/cdwriter - Kirjoittava CD-asema
- /dev/fd0 - Ensimmäinen levykeasema
- /dev/ramdisk - RAM-levy
- /dev/ram0 - Ensimmäinen RAM-levy
- /dev/shm - Tmpfs:n liitoskohta
- /dev/loop0 - Ensimmäinen loopina liitetty tiedostojärjestelmä
- /dev/console - Järjestelmän konsoli (tietokoneen näyttö- ja syöttölaitteiden yhdistelmä)
Erikoislaitteet
- /dev/random - Satunnaislukugeneraattori, tuottaa laadukasta satunnaislukua hitaalla nopeudella
- /dev/urandom - Satunnaislukugeneraattori, tulostus vähemmän laadukasta mutta huomattavasti nopeampaa
- /dev/zero - Pelkkää nollaa tulostava laite
- /dev/null - Bittejä nielevä "musta aukko"
- /dev/stdout - Standarditulostusvirta
- /dev/stdin - Standardisyötevirta
- /dev/tty1 - Ensimmäinen virtuaalikonsoli
- /dev/pts/0 - Ensimmäinen pseudoterminaali (esimerkiksi terminaaliemulaattori- tai SSH-istuntoa varten luotu)
/dev/console ja /dev/null
Useimmat laitetiedostot luodaan yleensä dynaamisesti udev-ohjelmiston avulla. Laitetiedostot ilmestyvät /dev-hakemiston alle sitä mukaa, kun tietokoneeseen liitetään laitteita ja niiden ajurit ladataan.
Poikkeuksena tästä ovat /dev/console (järjestelmäkonsoli) sekä /dev/null (nollalaite), jotka ovat /dev-hakemiston alla pysyvästi, eli toisin sanoen myös silloin, kun /dev-hakemisto ei ole liitettynä.
Jos /dev/console ja /dev/null esimerkiksi juurihakemiston siirron seurauksena puuttuvat, on tuloksena yleensä kernel panic ja siten järjestelmän käynnistyksen epäonnistuminen. Virheilmoituksena voi olla esimerkiksi
opening console: No such file or directory /dev/null: Read only file system
Ratkaisuna on käynnistää kone esimerkiksi live-cd:ltä, liittää ongelmallinen juuriosio ja tehdä siitä väliaikainen juurihakemisto komennolla chroot. Sekä tämän jälkeen antaa komennot
mknod -m 600 /dev/console c 5 1 mknod -m 666 /dev/null c 1 3
jotka luovat em laitetiedostot uudelleen.