Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Sposoby korzystania z komendy mount w Linuksie

pidpawel 06 Lip 2009 14:59 6146 0
  • #1
    pidpawel
    Poziom 26  
    Jak wiadomo w Linuksie można montować urządzenia, pliki,... na bardzo wiele sposobów. Postaram się przybliżyć te najoryginalniejsze.

    Uwaga numer 1: punkt montowania(katalog w którym montujemy urządzenie) musi istnieć. Nie zakładam w kodach tworzenia katalogów docelowych gdyż jest to czynność jednokrotna.

    Montowanie z jakim spotykamy się na co dzień:
    Listujemy partycję:
    Code:
    :~$ fdisk -l
    
    Disk /dev/sdb: 250.0 GB, 250059350016 bytes
    255 heads, 63 sectors/track, 30401 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Disk identifier: 0xb556b556

       Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1               1       30401   244196001   83  Linux

    Właściwe montowanie:
    Code:
    :~$ mount /dev/sda1 /media/sda1

    Sprawdzenie:
    Code:
    :~$ mount
    
    /dev/sda1 on /media/sda1 type ext3 (rw,relatime,errors=remount-ro)



    Montowanie obrazów płyt,...
    Szukamy obrazu:
    Code:
    :~$ ls -l
    
    -rwxr-xr-x 1 pawel pawel 52224000 2009-03-22 17:48 dsl-4.4.6.iso

    Montujemy używając loopa w katalogu /media/dsl:
    Code:
    :~$ mount -o loop ./dsl-4.4.6.iso /media/dsl

    Sprawdzamy:
    Code:
    :~$ mount
    
    /dev/sda1 on / type ext3 (rw,relatime,errors=remount-ro)
    /dev/loop0 on /media/dsl type iso9660 (rw)
    :~$ ls -l /media/dsl
    razem 7
    dr-xr-xr-x 3 root root 2048 2004-07-25 10:13 boot
    -r--r--r-- 1 root root  391 2004-05-03 07:00 index.html
    dr-xr-xr-x 2 root root 2048 2008-09-18 00:14 KNOPPIX
    dr-xr-xr-x 2 root root 2048 2004-08-07 02:16 lost+found

    Tym oto sposobem zamontowaliśmy płytę cd... Jako punkt montowania można podać np. /media/cdrom. Wtedy znaczna część aplikacji będzie widziała ten obraz jako lokalny cdrom ;)

    Krótkie przypomnienie jak zgrywamy płytki:
    Code:
    :~$ dd if=/dev/scd0 of=~/plytka.iso


    A teraz tworzenie i montowanie pliku(!) z obrazem partycji
    W ten sposób przygotujemy obraz dysku dla innego komputera. Przydatne jeśli uruchamiamy jakąś starszą maszynę.

    Tworzenie pliku o rozmiarze 1024MB i nazwie obraz.img
    Code:
    :~$ dd if=/dev/zero of=./obraz.img bs=1M count=1024
    

    1024+0 przeczytanych recordów
    1024+0 zapisanych recordów
    skopiowane 1073741824 bajty (1,1 GB), 10,7207 s, 100 MB/s

    Tworzenie systemu plików:
    Code:
    :~$ mkfs.ext2 ./obraz.img
    
    mke2fs 1.41.4 (27-Jan-2009)
    ./obraz.img nie jest specjalnym urządzeniem blokowym.
    Kontynuować mimo to? (t,n) t
    Etykieta systemu plików=
    Typ OS: Linux
    Rozmiar bloku=4096 (log=2)
    Rozmiar fragmentu=4096 (log=2)
    65536 i-węzłów, 262144 bloków
    13107 bloków (5.00%) zarezerwowanych dla superużytkownika
    Pierwszy blok danych=0
    Maksymalna liczba bloków systemu plików=268435456
    8 grup bloków
    32768 bloków w grupie, 32768 fragmentów w grupie
    8192 i-węzłów w grupie
    Kopie zapasowe superbloku zapisane w blokach:
    32768, 98304, 163840, 229376

    Zapis tablicy i-węzłów: zakończono
    Zapis superbloków i podsumowania systemu plików: wykonano

    Ten system plików będzie automatycznie sprawdzany co każde 37 montowań
    lub co 180 dni, zależnie co nastąpi pierwsze. Można to zmienić poprzez
    tune2fs -c lub -i.

    I teraz znane nam już montowanie z użyciem loopa:
    Code:
    :~$ mount -o loop ./obraz.img /media/dysk

    I gotowe. Tak stworzyliśmy obraz dysku i zamontowaliśmy go. Jedna uwaga: zmiany zapisywane są dopiero w momencie odmontowywania dysku. Jeśli więc przeniesiemy plik źródłowy, bądź zrobimy jego backup nie będzie on zawierał aktualnych zmian.

    Tak przygotowany obraz możemy np nagrać na partycję. Uwaga: wykonanie tej komendy spowoduje utratę wszystkich danych na tej partycji! (Coś jak "zerowanie")
    Code:
    dd if=./obraz.img of=/dev/sdb1


    Przejdźmy jednak do ciekawszych zagadnień...

    Montowanie zasobów zdalnego serwera
    Dzięki temu mamy poszerzony horyzont - aplikacje które nie obsługują różnych dziwnych protokołów mogą "normalnie" korzystać z z plików które znajdują się na innych maszynach. Np - można montować tak zasoby dla zrobienia backupu. Zastosowań znajdzie się wiele :)

    SSH:
    Code:
    :~$ sshfs user@serwer:/media/cdrom /home/serwer

    Coś takiego daje nam następujący efekt: montujemy cdrom serwera na lokalnej maszynie w katalogu /home/serwer.

    FTP:
    Code:
    :~$ curlftpfs serwer /home/ftpek -o user=user

    Tutaj w katalogu /home/ftpek zobaczymy katalog domowy użytkownika user na serwerze :)


    Zakończenie:

    Polecenie mount posiada bardzo wiele możliwości. Jednak wszystkich zainteresowanych głębszym ich poznaniem zapraszam na man mount ;) Mam nadzieję, że to, co zostało tutaj zawarte przyda się i będzie służyło przez długi czas...
    Redaktorów zaś zapraszam do opisania pozostałych możliwości jakie drzemią w tej technologii ;)