mount

Linux.fista
Versio hetkellä 6. maaliskuuta 2015 kello 20.36 – tehnyt Pyscowicz (keskustelu | muokkaukset) (→‎Katso myös)
Siirry navigaatioon Siirry hakuun

Komentorivikomennolla mount liitetään hakemistopuuhun eri tiedostojärjestelmiä, esimerkiksi levyosioita, verkkolevyjä ja levykuvia. Linuxissa mihin tahansa hakemistoon voidaan liittää erillinen tiedostojärjestelmä: esimerkiksi juurihakemisto / voi olla yhdellä levyosiolla, alihakemisto /home toisella ja cd-asema vaikkapa hakemistossa /home/pentti/tavaraa/linux.

Liittäminen ("mounttaaminen") on edellytys tiedostojärjestelmän sisällön näyttämiselle käyttöjärjestelmässä. Jos esimerkiksi jotakin kiintolevyosiota tai cd-levyä ei ole liitetty, näkyy se Linuxissa ainoastaan laitetiedostona /dev-hakemiston alla. Esimerkiksi DVD-elokuvan toistaminen tai cd-levyn polttaminen ei edellytä levyn liittämistä (levyn sisältöä ei tällöin käsitellä tiedosto tiedostolta). Liittäminen sen sijaan vaaditaan, mikäli levyn/tiedostojärjestelmän sisältöä halutaan käsitellä tiedostomuodossa esimerkiksi tiedostonhallintaohjelmassa.

Liitoksen purkamista kutsutaan irrottamiseksi (engl. unmounting). Liitoksen voi irrottaa joko käsin tai antaa käyttöjärjestelmän hoitaa se automaattisesti esimerkiksi järjestelmän (hallitun) sulkemisen yhteydessä.

Mikäli liitetyn tiedostojärjestelmän sisältävä media (esimerkiksi USB-muistitikku tai verkkolevylle johtava kaapeli) otetaan fyysisesti irti koneesta irrottamatta ensin sillä sijaitsevaa tiedostojärjestelmää, jäävät monet väliaikaistiedostot kirjoittamatta tiedostojärjestelmään (mikä vahingoittaa tiedostojärjestelmää) ja lisäksi sen sisältö jää "kummittelemaan" hakemistopuuhun.

Uusissa työpöytäkäyttöön suunnitelluissa Linux-järjestelmissä cd- ja dvd-levyt yleensä sekä liitetään että irrotetaan automaattisesti, joten käsin irrottaminen on niiden osalta yleensä tarpeen vain silloin, kun levy on myös liitetty käsin (mount-komennolla). Verkkoyhteyden takana sijaitsevat tiedostojärjestelmät (verkkolevyt) täytyy irrottaa käsin, mikäli verkkoyhteys on katkeamassa kesken järjestelmän päälläolon. USB-muistitikut ja ulkoiset kiintolevyt on irrotettava käsin, mikäli ne aiotaan ottaa irti koneesta ennen sen sulkemista. Graafisessa ympäristössä tiedostojärjestelmän irrottaminen tapahtuu yleensä klikkaamalla sen kuvaketta hiiren toisella näppäimellä sekä valitsemalla "Irrota", "Remove safely", "Unmount" ym. Komentorivillä tähän voidaan käyttää komentoa umount (ks alla).

Tiedostojärjestelmän liittämiseen ja irrottamiseen tarvitaan pääkäyttäjän oikeudet, ellei tiettyä liittämistä (esimerkiksi USB-muistitikun liittämistä polkuun /media/usb-muisti) ole erikseen sallittu /etc/fstab-tiedostossa.

Käyttö

Yleinen muoto mount-komennolle on seuraava:

mount [valitsimet] [-o liitosasetukset] mistä minne

Liitosasetukset ovat samat kuin /etc/fstab-tiedostossa käytettävät asetukset.

Esimerkiksi ensimmäisen kiintolevyn ensimmäinen osio (vastaa Microsoft Windows -järjestelmässä C-asemaa) liitettäisiin hakemistoon /home komennolla:

mount /dev/hda1 /home

Tässä /dev/hda1 on liitettävän osion laitetiedosto. Riippuen käytettävästä ajurista (esimerkiksi libata) sekä kiintolevyn liitäntätavasta saattaa yllämainittuna laitetiedostona olla myös /dev/sda1.

Useissa järjestelmissä liitettävän osion määrittelemiseen voi käyttää myös sen nimeä (label), UUID-tunnusta, väyläosoitetta tai valmistajan laiteelle antamaa nimeä. Näitä vastaavat udevin ylläpitämät laitetiedostot löytyvät tällöin /dev/disk-hakemiston alta.

Jos mount ei tunnista automaattisesti levyosion tiedostojärjestelmää, voidaan se kertoa valitsimella -t:

mount -t ext3 /dev/hda1 /home

Mount-komennolla voi liittää myös levykuvia (.iso). Tiedoston levy.iso sisältö liitettäisiin hakemistoon /home/kayttaja/levy seuraavasti:

mount -o loop levy.iso /home/kayttaja/levy

Levykuvien liittäminen vaatii ytimeen "Loopback device support" -tuen joko sisäänkäännettynä tai moduulina (mikäli käytetään moduulia, on moduulin oltava ladattuna komennolla modprobe loop). Lisätietoja artikkelissa ISO 9660.

Yhdellä laitteella voi olla useampia liitoskohtia. Seuraava liittäisi laitteen /dev/sdf4 alkuperäiset liitoskohdan /mnt/sdf4 ohella myös liitoskohtaan /mnt/kuvat:

mount --bind /mnt/sdf4 /mnt/kuvat

Liitoskohta on mahdollista siirtää ilman sen irrottamista. Tämä tapahtuu käyttäen valitsinta --move:

mount --move /vanha/sijainti /uusi/sijainti

remount-optiolla voidaan vaihtaa jo liitetyn tiedostojärjestelmän asetuksia: esimerkiksi komento

mount -o remount,ro /home

asettaisi /home-osion vain luku -tilaan, jolloin se voidaan esimerkiksi tarkistaa fsck-ohjelmalla.

Jos tiedostojärjestelmän liitos on mainittu /etc/fstab-tiedostossa, voidaan mount-komennolle antaa argumentiksi pelkän liitoskohdan tai liitettävän laitteen. Mount-komento lukee tällöin tarvittavan muun tiedon /etc/fstab-tiedostosta. Esimerkki:

mount /mnt/cdrom

Pelkkä komento

mount

listaa kaikki liitetyt tiedostojärjestelmät.

Valitsimia

Mount-komennolle voidaan antaa seuraavia valitsimia (luettelo ei ole täydellinen):

  • -a: Liittää kaikki tiedostojärjestelmät jotka on määritelty tiedostossa /etc/fstab ilman määritettä noauto.
  • -n: /etc/mtab-tiedostoa ei päivitetä. Käytettävä kun /etc on kirjoitussuojattu, muutoin tarpeeton.
  • -o asetukset: Liittää tietyin liitosasetuksin, kts. fstab.
  • -r: Liitos vain luku -tilassa. Sama kuin -o ro.
  • -w: Liitos luku/kirjoitus-tilassa. Oletusasetus, sama kuin -o rw.
  • -t tiedostojärjestelmä: Kertoo tiedostojärjestelmän tyypin. Esim. ext2, reiserfs, ISO 9660 tai auto. Tiedostojärjestelmän tyypin eteen voidaan myös lisätä sana no, jolloin se kääntää valinnan päinvastaiseksi. Esimerkiksi komento mount -a -t nomsdos,ext liittäisi kaikki fstabissa määritetyt tiedostojärjestelmät paitsi ne, joiden tyyppi on ext tai msdos.
  • -L Osion liittäminen sen nimen (label) perusteella. Tarpeellinen, mikäli labeleille ei ole omia laitetiedostoja esimerkiksi hakemiston /dev/disk/by-label alla.
  • -U Osion liittäminen sen UUID-tunnuksen perusteella. Tarpeellinen, jos niille ei ole omia laitetiedostoja esimerkiksi hakemistossa /dev/disk/by-uuid.

Irrotus umount-komennolla

Liitetty tiedostojärjestelmä irrotetaan komennolla umount:

umount laitetiedosto

tai

umount liitoshakemisto

Esimerkiksi

umount /dev/hda1

tai

umount /mnt/varasto

Jos irrottaminen ei onnistu vaan ohjelma antaa virheilmoituksen umount: /hakemisto: device is busy, käyttää jokin prosessi jotain irrotettavassa tiedostojärjestelmässä olevaa tiedostoa tai hakemistoa. Jotta irrottaminen onnistuisi, on nämä sovellukset lopetettava tai saatava ne vapauttamaan hakemisto. Yleinen syy miksi laite on varattu on se, että komentotulkki on käynnissä ja sen työhakemisto on irrotettavan tiedostojärjestelmän sisällä. Ongelma ratkeaa vaihtamalla komentotulkin työhakemisto (cd-komennolla) hakemistoksi, joka on irrotettavan tiedostojärjestelmän ulkopuolella.

Komennolla fuser voi selvittää, mikä prosessi käyttää tiettyä tiedostojärjestelmää.

Katso myös