Levykkeet ja CD-asemat


mount-komento ja CD-asema, levykkeet, mdir ja mcopy (DOS-levykkeille), /etc/fstab-tiedosto, USB-muistit, Virittelyä

Koska Linuxissa kaikki levyosiot ovat yhden juurihakemiston alla, myös levykeasemat, CD-asemat ja muut vastaavat vaihdettavat levyt (zip-levyt yms...) pitää asettaa näkyviin samaan puuhun. Tämä tapahtuu mount-komennolla. Vastaavasti kun vaihdetaan levyä, pitää umount-komennolla "vapauttaa" levy.

Mountin saa Linuxissa suorittaa oletusarvoisesti suorittaa vain pääkäyttäjä. Asian voi perustella tietoturvasyillä; näin ulkopuoliset eivät voi siirtää tiedostojaan järjestelmään. Kotikäyttäjän koneessa voi aivan perustellusti antaa mount-oikeuden myös muille. Tämä tehdään muokkaamalla tiedostoa /etc/fstab. Tästä tiedostosta enemmän tämän dokumentin lopussa.

DOS/Windows-levykkeiden käsittelyyn on olemassa oma mtools-pakettinsa. Tässä paketissa on muun muassa ohjelmat mdir ja mcopy, joilla voi katsella ja kopioida DOS-levykkeiden sisältöä ilman levykeasemalle tehtävää mount-komentoa. Paketin käyttöön saaminen edellyttää asennusvaiheessa "DOS/Windows Connectivity"-paketin valitsemista asennettavaksi. (tai sopivan RPM:n) asentamista jälkikäteen.

HUOM! Missään tapauksessa levykettä ei saa vaihtaa ilman umount -komentoa! Järjestelmä ei muuten huomaa levykkeen vaihtoa, vaan koneen muistiin jää väärän levykkeen sisältö. Tästä seuraa vuoren varmasti sekaisin mennyt levyke, jos talletat vaihdetulle levykkeelle.

Mount-komento ja CD-asema

mount-komennolle kerrotaan kolme asiaa:

  • minkä tyyppinen levy liitetään ("mountataan")
  • mikä on laitteen nimi (/dev/...)
  • mihin hakemistoon levy liitetään (yleensä /mnt/...).

CD-aseman liittäminen tapahtuu näin:

mount -t iso9660 /dev/hdc /mnt/cdrom

Tässä esimerkissä:

  • -t iso9660 on cd-levyn tyyppi. (normaalin CD:n tyyppi on juuri tuo)
  • CD-asema on järjestelmän kolmas ide-levy (toisen liittimen ensimmäinen)
  • /mnt/cdrom on hakemisto, johon romppuasema liitetään. Hakemisto pitää olla fyysisesti olemassa ennen liittämistä.

HUOM! Yleensä operaatiota on kuitenkin helpotettu kahdellakin tavalla:

  1. cd-aseman ide-liitin on liitetty laitteeseen /dev/cdrom
  2. lisäksi ainakin RedHat:ssa cd-asema on listattu jo valmiina /etc/fstabissa. Näin ei tarvitse erikseen määrittää laitetaa ja hakemistoa, jonne liitetään.

2-kohdan ansiosta CD-aseman voi liittää lopulta näin: (/mnt/cdrom-hakemisto on valmiiksi olemassa ja määritelty /etc/fstab-tiedostossaa)

mount /mnt/cdrom

CD-levy poistetaan asemasta umount-komennolla:

umount /mnt/cdrom

Tämän jälkeen voit ottaa rompun pois asemasta. (joissakin koneissa ei edes luukku aukea ilman umount-komentoa.)

HUOM! Kun toteutat umount-komennon, et voi olla liitetyssä hakemistossa. Saat tällöin "directory is busy"-ilmoituksen.


Levykkeet

Kuten CD-asemankin kohdalla, RedHatin /etc/fstab-tiedostossa on yksi rivi myös levykkeelle. Sen takia levykkeen voi liittää /mnt/floppy -hakemistoon näin:

mount /mnt/floppy

Asiassa on kuitenkin yksi asia, joka on syytä huomioida: Linuxin tiedostojärjestelmä levykkeillä ei ole samanlainen kuin DOS/Windows-ympäristössä. Näin ollen tällä mount-komennolla ei välttämättä pysty lukemaan DOS/Windows-levykkeitä ilman muutoksia /etc/fstab-tiedostoon. DOS/Windows-levykkeet (FAT-levykkeet) voit liittää näin:

mount -t vfat /dev/fd0 /mnt/floppy

mount -t msdos /dev/fd0 /mnt/floppy

Nyky-distribuutioissa levykkeen tiedostotyypiksi on yleensä määritelty /etc/fstab-tiedostossa "auto" (eli järjestelmä tarkistaa liitoksessa tiedostojärjestelmän), joten pelkkä mount /mnt/floppy riittää.

vfat-tiedostojärjestelmä ymmärtää pitkät tiedostonimet ja ymmärtää myös FAT32-tiedostojärjestelmän, vaikka se hieman harhaanjohtava saattaa ollakin. msdos-tyyppi on alkuperäinen FAT lyhyillä 8+3-muotoisilla tiedostonimillä. Sitä ei siis ole enää mielekästä käyttää.

umount /mnt/floppy

Taaskaan et voi itse olla levykkeen hakemistossa tämän operaation aikana.

DOS/Windows-levykkeiden käsittelyyn on olemassa lisäksi käteviä komentoja. Niistä seuraavassa:


mdir ja mcopy

Mtools-paketissa on käteviä ohjelmia DOS-levykkeiden käsittelyyn. Näiden komentoriviltä toimivien ohjelmien avulla voit käsitellä DOS-levykkeitä aivan kuin työskentelisit DOS-käyttöjärjestelmässä. Kaksi varmaankin hyödyllisintä ohjelmaa ovat mdir ja mcopy:

mdir a: Näyttää levykkeen sisällön. Huomaa, voit todellakin viitata levykkeeseen a: -tunnuksella aivan kuten DOS:ssa (tai Windowsissa)
mcopy a:/teht/nimi.xls . kopioi levykkeeltä hakemistosta /teht tiedoston nimi.xls työhakemistoosi.

Näiden käskyjen käyttämiseen riittävät tavallisen käyttäjän oikeudet.


/etc/fstab-tiedosto

/etc-hakemistossa oleva fstab-tekstitiedosto pitää sisällään tiedot asemista, jotka ovat liitetään järjestelmään järjestelmän käynnistyessä ja mitkä ovat liitettävissä siihen viittaamalla hakemistoon, johon nämä liitetään. /etc/fstab-tiedostoa voi muokata vain pääkäyttäjä, mutta sen sisältöä voi tutkia tavallinenkin käyttäjä komennolla

less /etc/fstab

Tyypillisesti tiedosto pitää sisällään jotain seuraavannäköistä:

LABEL=/                 /                       ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
none                    /dev/pts                devpts  gid=5,mode=620  0 0
LABEL=/home             /home                   ext3    defaults        1 2
none                    /proc                   proc    defaults        0 0
none                    /dev/shm                tmpfs   defaults        0 0
/dev/hda3               swap                    swap    defaults        0 0
/dev/fd0                /mnt/floppy             auto    noauto,owner,kudzu 0 0
/dev/cdrom              /mnt/cdrom              udf,iso9660 noauto,owner,kudzu,ro 0 0

Nyky-distribuutiot käyttävät usein Label-määritystä osoioille, joten ne voivat sillä tavoin peittää todellisen osion tiedoston. Kuitenkin taulukostata näkee, että levy on kolmessa osiossa: /, /boot ja /home. Näiden tiedostojärjestelmä on ext3, joka on nykyisin yleisimmin käytetty Linuxin tiedostojärjestelmä. Se on todellisuudessa sama kuin ext2 lisättynä ns. journalointiominaisuudella. Tämä tarkoittaa sitä, että järjestelmä pitää kirjaa muutoksista ja helpottaa näin toipumista virhetilanteista.

"defaults"-määritys kertoo, että ko. osiot liitetään oletusasetuksilla järjestelmään. Levykkeen (/dev/fd0) ja cd-aseman (/dev/cdrom) kohdalla lukee mm. "noauto", joka tarkoittaa sitä, ettei näitä liitetä automaattisesti järjestelmään järjestelmän käynnistyessä. Tämä onkin loogista, koska harvemmin näissä on joku levy sisällä valmiiksi. Levykkeen tiedostojärjestelmäksi on merkitty "auto", joka tarkoittaa sitä, että levykkeen tiedostojärjestelmä tarkastetaan liittämisen yhteydessä. Näin se on siten aina oikein.

Jos haluat, että tavallinenkin käyttäjä voi romppuaseman ja levykkeen mountata, kirjoita valinta "user" romppu ja/tai levykeriville, näin:

/dev/fd0         /mnt/floppy    auto    noauto,users     0 0

Huomaa paikka, jonne kirjoitat. Muista myös, että jokaista osiota kohti tiedostossa on yksi rivi, joten lisäyksen johdosta mitään ei saa mennä toiselle riville. Jos näin käy, voit huoleti ottaa välilyöntejä/sarkainmerkkejä pois välistä; tekstien ei tarvitse välttämättä olla tiukasti sarakkeissa.

Nykyisissä distribuutioissa tosin levykkeen ja cd-aseman liittäminen on oletusarvoisesti sallittu käyttäjältä.

USB-muistit

USB-muistit ovat USB-porttiin liitettäviä muistilaitteita. Linux on tukenut näitä ytimen 2.4-versiosta alkaen. Tällainen USB-muisti näkyy laitteena /dev/sda, eli muisti näkyy todellisuudena eräänlaisena SCSI-laitteena. A-kirjaimen paikalla voi olla muukin kirjain, liittyen laitteen kokoonpanosta ja muistien määrästä.

Liittämisen esityönä on syytä tehdä hakemisto liittämistä varten. Ulkopuolisille muistilaitteille on tarkoitettu /mnt-hakemisto. Tehdään pääkäyttäjänä sinne uusi hakemisto:

mkdir /mnt/tikku

Luonnollisesti "tikku"-nimisen hakemiston sijaan voi laittaa ihan sen nimisen hakemiston kuin haluaa.

Sitten liitetään laite ko. hakemistoon:

mount -t vfat /dev/sda /mnt/tikku

Nyt ko. hakemistossa näkyy muistin sisältö, esimerkiksi jotain tällaista:

Umount-komennolla tällainenkin muisti irrotetaan hakemistopuusta. Huomaa, että edellisessä esimerkissä oletettiin, että USB-muistin tiedostojärjestelmäksi oletettiin FAT.

Virittelyä

Seuraavaksi luodaan mahdollisuus liittää USB-muisti komentamalla pelkästään mount /mnt/tikku komentorivillä. Se toteutetaan lisäämällä /etc/fstab -tiedostoon seuraavanlainen rivi:

/dev/sda          /mnt/tikku            auto    noauto,users    0 0

users-optio antaa mahdollisuuden jokaiselle käyttäjälle liittää muistikortti.

Tämä viritys tuottaa pari muutakin ominaisuutta. Disk Management-nimisen "User Mount Tool"-työkalun valikkoon tulee mukaan myös USB-muisti:

Nyt levyä voi käsitellä tätäkin kautta. Levy näkyy myös oikeanpuoleisen hiiren näppäimen antaman valikon takaa työpöydällä:


Alkuun