Ero sivun ”Mount” versioiden välillä
Pb (keskustelu | muokkaukset) (bind ja move) |
p (→Käyttö) |
||
(15 välissä olevaa versiota 7 käyttäjän tekeminä ei näytetä) | |||
Rivi 1: | Rivi 1: | ||
{{DISPLAYTITLE:{{lcfirst:{{PAGENAME}}}}}} | |||
[[Komentorivi]]komennolla mount ''liitetään'' [[Linuxin hakemistorakenne|hakemistopuuhun]] eri tiedostojärjestelmiä, esimerkiksi levyosioita, [[verkkolevy]]jä ja [[levykuva|levykuvia]]. Linuxissa mihin tahansa hakemistoon voidaan liittää erillinen [[tiedostojärjestelmä]]: esimerkiksi [[juurihakemisto]] <tt>/</tt> voi olla yhdellä levyosiolla, alihakemisto <tt>[[kotihakemisto|/home]]</tt> toisella ja cd-asema vaikkapa hakemistossa <tt>/home/pentti/tavaraa/linux</tt>. | |||
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 [[laitetiedosto]]na /dev-hakemiston alla. Esimerkiksi [[DVD-elokuvat|DVD-elokuva]]n toistaminen tai cd-levyn [[levyn polttaminen|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 [[:Luokka:Tiedostonhallinta|tiedostonhallintaohjelmassa]]. | |||
Jos mount ei tunnista automaattisesti levyosion tiedostojärjestelmää se | 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-muisti]]tikku 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. [[GUI|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 <tt>umount</tt> (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 <tt>/media/usb-muisti</tt>) ole erikseen sallittu <tt>[[fstab|/etc/fstab]]</tt>-tiedostossa. | |||
== Käyttö == | |||
Yleinen muoto mount-komennolle on seuraava: | |||
mount [valitsimet] [-o liitosasetukset] <mistä> <minne> | |||
Liitosasetukset ovat samat kuin [[fstab|/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 <tt>/home</tt> komennolla: | |||
mount /dev/hda1 /home | |||
Tässä <tt>/dev/hda1</tt> 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 <tt>/dev/sda1</tt>. | |||
Useissa järjestelmissä liitettävän osion määrittelemiseen voi käyttää myös sen nimeä (label), [[wikipedia:UUID|UUID]]-tunnusta, väyläosoitetta tai valmistajan laiteelle antamaa nimeä. Näitä vastaavat [[udev]]in ylläpitämät laitetiedostot löytyvät tällöin <tt>/dev/disk</tt>-hakemiston alta. | |||
Jos mount ei tunnista automaattisesti levyosion tiedostojärjestelmää, voidaan se kertoa valitsimella <tt>-t</tt>: | |||
mount -t [[ext3]] /dev/hda1 /home | mount -t [[ext3]] /dev/hda1 /home | ||
Mount-komennolla voi liittää myös | Mount-komennolla voi liittää myös levykuvia (.iso). Tiedoston <tt>levy.iso</tt> sisältö liitettäisiin hakemistoon <tt>/home/kayttaja/levy</tt> seuraavasti: | ||
mount -o loop levy.iso /home/kayttaja/levy | mount -o [[loop]] levy.iso /home/kayttaja/levy | ||
Levykuvien liittäminen vaatii [[ydin|ytimeen]] "''Loopback device support''" -tuen joko sisäänkäännettynä tai [[moduuli]]na (mikäli käytetään moduulia, on moduulin oltava ladattuna komennolla <tt>[[modprobe]] loop</tt>). 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 | Yhdellä laitteella voi olla useampia liitoskohtia. Seuraava liittäisi laitteen <tt>/dev/sdf4</tt> alkuperäiset liitoskohdan <tt>/mnt/sdf4</tt> ohella myös liitoskohtaan <tt>/mnt/kuvat</tt>: | ||
mount --bind /mnt/sdf4 /mnt/kuvat | mount --bind /mnt/sdf4 /mnt/kuvat | ||
Liitoskohta on mahdollista siirtää ilman sen irrottamista. Tämä tapahtuu | Liitoskohta on mahdollista siirtää ilman sen irrottamista. Tämä tapahtuu käyttäen valitsinta <tt>--move</tt>: | ||
mount --move /vanha/sijainti /uusi/sijainti | 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 [[fstab|/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 [[fstab|/etc/fstab]]-tiedostosta. Esimerkki: | |||
mount /mnt/cdrom | |||
mount / | |||
=== | Pelkkä komento | ||
Mount-komennolle voidaan antaa seuraavia | mount | ||
*-a: Liittää kaikki tiedostojärjestelmät jotka on määritelty tiedostossa [[fstab|/etc/fstab]]. | listaa kaikki liitetyt tiedostojärjestelmät. | ||
*-n: /etc/mtab-tiedostoa ei päivitetä. Käytettävä kun /etc on kirjoitussuojattu, muutoin tarpeeton. | |||
=== Valitsimia === | |||
Mount-komennolle voidaan antaa seuraavia [[valitsin|valitsimia]] (luettelo ei ole täydellinen): | |||
*-a: Liittää kaikki tiedostojärjestelmät jotka on määritelty tiedostossa [[fstab|/etc/fstab]] ilman määritettä ''noauto''. | |||
*-n: /etc/mtab-tiedostoa ei päivitetä. Käytettävä kun <tt>/etc</tt> on kirjoitussuojattu, muutoin tarpeeton. | |||
*-o <tt>asetukset</tt>: Liittää tietyin liitosasetuksin, kts. [[fstab]]. | *-o <tt>asetukset</tt>: Liittää tietyin liitosasetuksin, kts. [[fstab]]. | ||
*-r: Liitos vain luku -tilassa. Sama kuin -o ro. | *-r: Liitos vain luku -tilassa. Sama kuin -o ro. | ||
*-w: Liitos luku/kirjoitus-tilassa. Oletusasetus, sama kuin -o rw. | *-w: Liitos luku/kirjoitus-tilassa. Oletusasetus, sama kuin -o rw. | ||
*-t <tt>tiedostojärjestelmä</tt>: 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 <tt>mount -a -t nomsdos,ext</tt> liittäisi kaikki [[fstab|fstabissa]] määritetyt tiedostojärjestelmät paitsi ne, joiden tyyppi on ext tai msdos. | *-t <tt>tiedostojärjestelmä</tt>: 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 <tt>mount -a -t nomsdos,ext</tt> liittäisi kaikki [[fstab|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 <tt>/dev/disk/by-label</tt> alla. | |||
*-U Osion liittäminen sen UUID-tunnuksen perusteella. Tarpeellinen, jos niille ei ole omia laitetiedostoja esimerkiksi hakemistossa <tt>/dev/disk/by-uuid</tt>. | |||
== Irrotus == | == Irrotus umount-komennolla == | ||
Liitetty tiedostojärjestelmä irrotetaan komennolla umount: | Liitetty tiedostojärjestelmä irrotetaan komennolla <tt>umount</tt>: | ||
umount | umount laitetiedosto | ||
tai | tai | ||
umount liitoshakemisto | umount liitoshakemisto | ||
Esimerkiksi | Esimerkiksi | ||
umount /dev/hda1 | umount /dev/hda1 | ||
tai | |||
umount /mnt/varasto | |||
Jos irrottaminen ei onnistu vaan ohjelma antaa virheilmoituksen <tt>umount: /hakemisto: device is busy</tt>, 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 == | == Katso myös == | ||
*[[ | *[[fstab]] | ||
*[[NTFS-3G]] | |||
*[[UnionFS]] | |||
*[[gISOMount]] on graafinen ohjelma iso-tiedostojen liittämiseksi tiedostojärjestelmään. | |||
[[Luokka:Tiedostojärjestelmät]] | [[Luokka:Tiedostojärjestelmät]] | ||
[[Luokka:Osiot]] | [[Luokka:Osiot]] | ||
[[Luokka:Komentorivin perustyökalut]] | [[Luokka:Komentorivin perustyökalut]] | ||
[[pl:Mount]] |
Nykyinen versio 13. lokakuuta 2021 kello 07.37
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ö[muokkaa]
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[muokkaa]
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[muokkaa]
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ää.