Curs №15 - sisteme de fișiere de montare

Curs №15 - sisteme de fișiere de montare. montura

La prelegerile anterioare au atins în mod repetat pe sistemele de fișiere mount. Astăzi (și în capitolul următor), ne vom concentra mai detaliat cu privire la această chestiune. În distributii moderne de montare sisteme de fișiere în cele mai multe cazuri, în mod automat. Când introduceți o unitate flash USB în conector USB-PC, aveți un director director / mass-media apare cu numele de stick-ul și puteți lucra imediat cu dispozitivul (citește scrie fișiere). Anterior (înainte de subsistemul udev), înainte de a lucra cu stick-ul (și orice alt dispozitiv de blocare) necesare pentru a efectua operația de montare. Când este conectat unitatea flash (flash drive va folosi, de exemplu, înseamnă orice dispozitiv bloc) apare în memoria fizică a sistemului (în directorul / dev), care poate funcționa ca un dispozitiv bloc. De exemplu, luați informațiile cu dd. Dar avem nevoie pentru a accesa sistemul de fișiere al dispozitivului, mai degrabă decât dispozitivul în sine, și, prin urmare, este necesar să se efectueze operația de montare.

În montarea, există două componente principale: un dispozitiv fizic sau o partiție a unui dispozitiv fizic cu un sistem de fișiere particular (adică CE mount) și punctul de montare (adică UNDE mount). Muntele punct - acesta este un director obișnuit oriunde în sistem, care va fi părintele unui dispozitiv montat sistem de fișiere. Catalogul poate fi fie gol (de obicei), și informații. În cazul în care este instalat într-un director cu informații, apoi conținutul anterioare ale directorului va fi înlocuit cu conținutul sistemului de fișiere al dispozitivului pentru a monta, dar numai pe timpul muntele. Este foarte important să se înțeleagă și amintiți-vă. După ce directorul demontează, informațiile pe care era în ea la muntele va fi disponibil din nou. Dar acesta este un caz special. Tot la fel, în cele mai multe cazuri, sunt montate în directoare goale.

Pentru a monta folosind comanda mount. Cel mai adesea, această comandă este folosit ca un mount tip -t dir dispozitiv. în care după cheie -t specifică tipul de sistem de fișiere montat, apoi se specifică dispozitivul montabil (dispozitiv), și apoi un director (punctul de montare - dir). De exemplu, există o unitate flash USB - un dispozitiv / dev / sdc. Ea are o secțiune pe / dev / sdc1. Ai nevoie pentru a monta o partiție - / dev / sdc1 - formatat zonă, mai degrabă decât un dispozitiv fizic / dev / sdc. Montura pentru acest caz ar arata astfel: mount -t vfat / dev / sdc1 / media / fleshka. trebuie să existe director Fleshka (punctul de montare), și, dacă nu, atunci celălalt trebuie să-l creeze MKDIR comanda sau alege - director existent. Deoarece unitatea flash a fost formatat în FAT32. După ce sistemul de fișiere vfat de tip utilizat. În cazul în care montate pe partiții NTFS pentru Windows. aceasta ar trebui să specifice sistemul de fișiere NTFS. Toate tipurile de sisteme de fișiere acceptate pot fi găsite în om muntele.

demontează sistemul de fișiere al sistemului se realizează folosind umount punctul de montare al echipei | dispozitiv. Din exemplul nostru a unui stick de umount / media / fleshka sau umount / dev / sdc1. Comanda umount nu va fi capabil de a demonta dispozitivul dacă acesta este ocupat sau de un program. De exemplu, dacă te duci la o consolă la directorul montat pe CD-ROM-drive, și apoi încercați să execute o altă consolă komanduumount. atunci obținem o eroare:

/ Linux $ umount / media / cdrom0
umount: / media / cdrom0: dispozitiv este ocupat.
(În unele cazuri, informații utile despre procesele care utilizează
dispozitivul este găsit de lsof (8) sau cuptorului (1))

Comanda lsof / media / cdrom0 arată ce fișiere sunt deschise din directorul / media / cdrom0 și de către cine:

/ Linux $ lsof / media / cdrom0
COMMAND PID USER FD TIP DISPOZITIV SIZE / OFF NOD NAME
bash 4908 igor cwd DIR 2048 1664 11,0 / media / cdrom0
19323 mai puțin igor cwd DIR 2048 1664 11,0 / media / cdrom0
19323 mai puțin igor 4r REG 32 11,0 1669 /media/cdrom0/config.txt

După cum puteți vedea, există într-adevăr este orice fișiere deschise și directoare. Pentru a demonta corect sistemul de fișiere, trebuie să închideți toate fișierele deschise și ieșiți din toate directoarele sau executa umount cu cheie -f - umount -f / media / cdrom0.

În acest sens, următoarea situație apare adesea în -Utilizatorii Linux novice. Inserat CD-ROM-ul în unitatea de CD-și lucrează cu fișiere pe disc. Utilizatorul apasă apoi butonul de acționare pentru a scoate discul și nu se întâmplă nimic. Unii chiar reporni computerul, deoarece ei nu înțeleg ce se întâmplă. Și totul este faptul că discul nu poate fi scos până când este nemontate, și demontată, el nu poate fi, deoarece el ar avea un fișier deschis (utilizat). Este necesar să se închidă toate fișierele din toate directoarele și unitatea „da“, discul prin apăsarea butonului de scoatere. Dacă discul nu este scos, atunci ai nevoie pentru a efectua comanda umount pe disc și apoi apăsați butonul de ejectare.

Pentru a vedea care sistemele de fișiere sunt deja instalate în sistem poate executa comanda mount fără nici un parametru sau de a executa -a comanda df. Puteți vedea, de asemenea, conținutul fișierului / etc / mtab. Komandamount atunci când montați un nou sistem de fișier se adaugă la linia de fișier cu informații despre sistem care urmează să fie adăugate. O comandă umount șterge un rând, respectiv referitoare la demount partiția.

Am act de faptul că comanda mount / umount nu produc modificări în cursul activității lor cu sistemul de fișiere al dispozitivului și nu le poate deteriora. Blocări de multe ori se întâmplă ca urmare a unor încercări anormale de a demonta sistemul de fișiere, cum ar fi apăsarea butonului de resetare de pe unitatea de sistem. Încercați să evitați această acțiune și să o aplice numai în cazuri extreme. În cazul în care linia de comandă disponibilă, înainte de a reporni computerul folosind butonul de resetare. sincronizare de comandă. Această comandă spune kernel-ul pe care ar trebui să scrie imediat în jos toate informațiile stocate în memoria tampon de pe dispozitivul fizic corespunzător. Acest lucru va reduce riscul de a pierde informații.

Comanda mount poate fi montat nu numai dispozitivul, dar, de asemenea, fișierele. În acest scop, un astfel de dispozitiv ca / ​​dev / bucla. De obicei, sistemul are mai multe astfel de pseudo-bloc:

Ceea ce am putea avea nevoie pentru a instala fișierele? Cel mai evident exemplu este atunci când avem o imagine de disc în format iso. Deoarece monta direct fișierul în directorul pe care nu se poate, atunci procedați după cum urmează: a monta un fișier de dispozitiv bloc / dev / bucla. și apoi dispozitivul bloc / dev / bucla montat la un punct de montare. Pentru a face acest lucru, trebuie să efectuați o comandă mount cu opțiunea o- prin care trec bucla:

/ Linux $ sudo mount bucla /home/igor/downloads/Ubuntu_DocsPack_9.04.2.iso o- / home / igor / Linux / docpack /
igor @-adm ubuntu:

/ Linux $ ls ./docpack/
Document HTML Jurnal_FullCircle.tar.gz Jurnal_OpenSource.tar.gz Ubuntu_Docs.tar.gz
Jurnal_BlenderEmpire.tar.gz Jurnal_LGT.tar.gz readme.txt Video_Lesson.tar.gz

Așa că am mount fișier Ubuntu_DocsPack_9.04.2.iso și se poate referi acum la ea ca o unitate.

La sfârșitul acestui curs doresc să arate echipa care ne va arăta toate secțiunile de toate dispozitivele bloc din sistem. Vom lua în considerare în detaliu comanda mai târziu. Pentru a uita-te la toate secțiunile care sunt în sistem ca root, tastați comanda fdisk -L:

Disk / dev / sda: 250,1 GB, 250059350016 bytes
255 capete, 63 sectoare / pistă, 30401 cilindri
Units = cilindri de 16065 * 512 = 8225280 bytes
Identificator de disc: 0xd4b146b8

Dispozitiv de încărcare a sistemului Start End Blocks Id-ul
/ Dev / hda1 * ianuarie 2304 18506848+ 7 HPFS / NTFS
/ Dev / sda2 2305 2472 1349460 e W95 FAT16 (LBA)
/ Dev / sda3 2473 10263 62581207+ 7 HPFS / NTFS
/ Dev / sda4 10264 30401 161 758 485 f W95 extinde. (LBA)
/ Dev / sda5 10264 12826 20587266 83 Linux
/ Dev / sda6 12827 12947 971901 82 Linux de swap / Solaris
/ Dev / sda7 12948 18184 42066171 7 HPFS / NTFS
/ Dev / sda8 18185 27967 78581916 7 HPFS / NTFS
/ Dev / sda9 27968 30401 19551073+ 7 HPFS / NTFS

Disk / dev / sdb: 40.0 GB, 40020664320 bytes
255 capete, 63 sectoare / pistă, 4865 cilindri
Units = cilindri de 16065 * 512 = 8225280 bytes
Identificator de disc: 0xb292b292

Dispozitiv de încărcare a sistemului Start End Blocks Id-ul
/ Dev / hdb1 1 4660 37431418+ 83 Linux
/ Dev / sdb2 4661 4865 1646662+ 5 avansată
/ Dev / sdb5 1526143+ 4661 4850 82 Linux de swap / Solaris
/ Dev / sdb6 4851 4865 120456 83 Linux

Dispozitiv de încărcare a sistemului Start End Blocks Id-ul
/ Dev / sdc1 4 3487 3917824 b W95 FAT32

Această echipă este bună, deoarece arată nu numai numele partiției, dar sistemul de fișiere partiție. De exemplu, partiția de sistem de fișiere / dev / sdc1 - FAT32.