Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ
  • në shtëpi
  • OS
  • Struktura e sistemit të skedarëve. Sistemi i skedarëve Linux dhe struktura e drejtorisë

Struktura e sistemit të skedarëve. Sistemi i skedarëve Linux dhe struktura e drejtorisë

Sistemi i skedarëve Linux OS

Një nga më komponentë të rëndësishëm në Linux OS është sistemi i skedarëve. V këtë seksion do të shqyrtojë konceptin sistemi i skedarëve dhe qëllimin e tij; hierarkia e sistemit të skedarëve Linux OS; Llojet e skedarëve të Linux OS. Pjesa tjetër e çështjeve që lidhen me administrimin e sistemit të skedarëve do të trajtohen më në detaje në Modulin 3.

Qëllimi i sistemit të skedarëve

Në Linux, si në çdo sistem tjetër operativ UNIX, çdo objekt është një skedar i ruajtur në sistemin e skedarëve. Një sistem skedarësh është një pajisje (siç është një hard disk) i formatuar për të ruajtur skedarët. Sistemet e skedarëve mund të vendosen në hard disqet, floppy disqe, CD-ROM ose media të tjera që lejojnë akses të rastësishëm ose të njëpasnjëshëm në të dhëna.

Në mënyrë konvencionale, sistemi i skedarëve Linux mund të ndahet në komponentët e mëposhtëm.

Hapësira e emrave - metoda për emërtimin e objekteve në sistemin e skedarëve dhe organizimi i tyre hierarkik.

Ndërfaqja e programimit të aplikacionit (API) - një grup thirrjesh sistemi dhe bibliotekash të krijuara për të menaxhuar objektet në sistemin e skedarëve.

Modeli i sigurisë - përmban skema e përgjithshme mbrojtjen, ndarjen e të drejtave të aksesit në objekte dhe ndarjen objektet.

Zbatimi teknik - kodi i programit duke u lidhur modele logjike sistemi i skedarëve me harduer.

Detyrat kryesore të sistemit të skedarëve janë:

renditja e të dhënave të ruajtura;

e thjeshtë dhe akses i shpejtë për të dhënat e ruajtura;

duke siguruar integritetin e të dhënave të ruajtura.

Formati dhe mënyra e saktë e ruajtjes së skedarëve në Linux nuk ka rëndësi, siç e siguron sistemi ndërfaqe e përbashkët për të gjitha llojet e sistemeve të skedarëve që njeh. Në OS Skedar Linux sistemi i paracaktuar është ext3fs. Kur hyni në ndonjë sistem skedar nga sistemi operativ Të dhënat Linux paraqiten në formën e një hierarkie drejtorish me skedarë të vendosur në to, së bashku me identifikuesit e pronarëve dhe grupeve, pjesët e lejeve dhe atributet e tjera.

Hierarkia e sistemit të skedarëve

Hierarkia e dosjeve të sistemit të skedarëve Linux përputhet me sistemin e hierarkisë së sistemit të skedarëve standard UNIX (FHS). Avantazhi kryesor të këtij standardi gjë është lloje të caktuara skedarët janë të vendosur në drejtoritë e tyre përkatëse.

Për shembull, shumica e skedarëve të konfigurimit ndodhen në drejtorinë / etc, dhe skedarët e regjistrit për shërbime të ndryshme ndodhen në drejtorinë / var / log.

Përshkrimi i drejtorive të sistemit të skedarëve OS Linux

Drejtoritë / bin, / usr / bin, / usr / locl / bin, / sbin, / usr / sbin dhe / usr / lokale / sbin përmbajnë komandat e instaluara në sistem. Kur punoni në një sistem nën përdorues i rregullt, do të keni akses vetëm në komandat / bin, / usr / bin dhe / usr / locl / bin, pasi standardi FHS specifikon që drejtoritë sbin duhet të përmbajnë vetëm komanda administrative.


Figura 1.2 Struktura e drejtorisë së Linux OS

Drejtoria kryesore e sistemit të skedarëve Linux OS është direktoria rrënjësore /. Nën drejtorinë rrënjë janë të gjitha drejtoritë e tjera të krijuara në lokal nënsistemi i diskut ose montuar nga pajisje të jashtme. Të montoni një sistem skedari do të thotë të lidhni një drejtori të një sistemi skedar ekzistues, të quajtur pikë montimi, me direktorinë rrënjë të një sistemi të ri skedarësh.

Sistemi i skedarëve është montuar në një pikë montimi duke përdorur komandën mount. Lista e mëposhtme tregon një shembull të montimit DVD drive a, që përmban shpërndarjen e sistemit operativ RedHatEnterpriseLinux 5.

# montim / dev / hdc / mnt /

montimi: bllokimi i pajisjes / dev / hdc është i mbrojtur nga shkrimi, montimi vetëm për lexim

Si rezultat i ekzekutimit të komandës së montimit, sistemi shfaqi informacionin që pajisja e bllokimit (në në këtë rast DVD drive) ishte montuar në modalitetin e leximit.

Lista e sistemeve të skedarëve të montuar ruhet në skedarin / etc / fstab. Kjo e bën të mundur kontroll automatik integriteti i sistemit të skedarëve duke përdorur komandën fsck dhe montimin e sistemeve të skedarëve në bootstrap si dhe ekzekutimin e komandave stenografi si mont / var / spool. Informacioni i përfshirë në këtë skedar pasqyron vendndodhjen e sistemeve të skedarëve në disk. Skedari / etc / fstab do të trajtohet më në detaje në Modulin 3.

Çmontimi i sistemeve të skedarëve bëhet me komandën umount. Një sistem skedari "i kyçur" nuk mund të çmontohet. Nuk duhet të përmbajë asnjë skedarë të hapur as drejtoritë aktuale të proceseve të ekzekutimit. Nëse sistemi i skedarëve që po çmontohet përmban programe të ekzekutueshme, ato nuk duhet të funksionojnë. Lista e mëposhtme tregon një shembull të çmontimit të një sistemi skedarësh të montuar më parë në drejtorinë / mnt.

# shuma / mnt # Është -1 / mnt gjithsej 0

Për të gjetur se cilat pajisje janë montuar në sistem ky moment duhet të ekzekutoni komandën mount pa parametra. Lista e mëposhtme tregon një shembull të përcaktimit të pajisjeve të montuara.

# montimi / dev / sda2 aktiv / shkruani ext3 (rw)

proc on / proc lloji proc (rw)

sunrpc aktivizuar / var / lib / nfs / rpc_pipefs lloji rpc_pipefs (rw) / dev / hdc aktiv / mnt lloji iso9660 (ro)

Siç mund ta shihni, dalja e komandës mount shfaq në mënyrë sekuenciale pajisjen e montuar, pikën e montimit, llojin e sistemit të skedarëve dhe opsione shtesë montoj.

Llojet e skedarëve

Kur punoni me Linux OS, është e rëndësishme të kuptoni se çdo objekt OS është një skedar. Ky është një tipar kyç i Linux-it në krahasim me sistemet operative Windows.

Skedarët ndryshojnë si në strukturën e tyre ashtu edhe në qëllimin e tyre. Linux OS përcakton shtatë lloje skedarësh:

skedarë të rregullt (skedarë të rregullt);

drejtoritë;

tuba me emër;

bllokoni skedarët e pajisjes;

skedarët e pajisjes me karakter.

Ju mund të përcaktoni llojin e skedarit duke përdorur komandën Is -Id. Karakteri i parë në vijën e daljes tregon llojin e skedarit. Lista e mëposhtme jep informacion rreth skedarit

/ dev / hdc. # Is -Id / dev / hdc

Skedarët e rregullt

Skedarët e rregullt përfshijnë binare, biblioteka, skedarë teksti dhe skedarë të ndryshëm aplikacionesh. Linux OS nuk vendos asnjë kufizim në strukturën e të dhënave të skedarëve. Qasja sekuenciale dhe e drejtpërdrejtë në përmbajtjen e tyre është e mundur.

Katalogjet

Linux ka të ashtuquajturat drejtori speciale. Drejtori të veçanta të tilla si "." dhe ".." tregojnë përkatësisht direktorinë aktuale të punës dhe drejtorinë e saj mëmë.

Në Linux OS, është zakon të bëhet dallimi midis lidhjeve simbolike dhe të forta, secila prej të cilave ka një kuptim të veçantë.

Një lidhje simbolike ju lejon të specifikoni një pseudonim skedari në vend të një emri skedari. Në procesin e kërkimit të një skedari duke përdorur lidhje simbolike, kerneli nxjerr emrat e ruajtur në to. Një lidhje e fortë është e drejtpërdrejtë, d.m.th. tregon drejtpërdrejt në inodin e një skedari, ndërsa një lidhje simbolike tregon një skedar me emrin e tij. Skedari i referuar nga një lidhje simbolike dhe vetë lidhja janë objekte të ndryshme në sistemin e skedarëve.

Lidhjet simbolike mund të përmbajnë një emër arbitrar, d.m.th. atyre u lejohet të tregojnë skedarët e ruajtur në sisteme të tjera skedarësh dhe madje edhe në skedarë që nuk ekzistojnë... Lidhjet e forta nuk mund të tregojnë një skedar në një sistem skedar tjetër.

Linux OS numëron numrin e lidhjeve për çdo skedar dhe kur fshihet një skedar nuk lëshon blloqe të dhënash derisa të fshihet lidhja e fundit me të.

Prizat

Një fole është një lloj i veçantë skedari që përdoret nga proceset për të komunikuar me njëri-tjetrin. Lidhjet e krijuara mbi priza lejojnë që proceset të komunikojnë pa u ndikuar nga procese të tjera. Ekzistojnë disa lloje prizash në OS Linux, përdorimi i të cilave supozon praninë infrastrukturës së rrjetit... Prizat lokale janë të disponueshme vetëm në kompjuterin lokal, ato aksesohen përmes objekteve të veçanta të sistemit të skedarëve dhe jo përmes portet e rrjetit... Këto priza zakonisht quhen priza domeni UNIX (UNIXdomainsocket). Përveç prizave lokale, ka priza rrjeti që lejojnë proceset të komunikojnë përmes rrjetit.

Edhe pse proceset e tjera i njohin skedarët e folesë si hyrje në direktori, vetëm proceset që janë të lidhura siç duhet mund të lexojnë dhe shkruajnë skedarë prizë. Prizat lokale funksionojnë shërbime të ndryshme Linux OS - CUPS, XWindow dhe Syslog.

Tuba me emër ( FIFO)

Skedarët të këtij lloji janë të ngjashme me prizat në atë që përdoren gjithashtu për komunikim ndërmjet proceseve, por ndryshe nga prizat, tubat e emërtuar transferojnë të dhëna vetëm në një drejtim.

Blloko dhe karaktere skedarët e pajisjes

Skedarët e pajisjes së bllokimit dhe karaktereve lejojnë që aplikacionet të kenë akses në harduerin dhe pajisjet periferike të sistemit. Në fazën e konfigurimit, modulet e nevojshme ngarkohen në mënyrë dinamike në kernelin Linux për menaxhimin e harduerit të sistemit. Për menaxhim pajisje specifike përgjegjës është një modul i veçantë i quajtur drejtues pajisjeje.

Drejtuesit e pajisjes formojnë një ndërfaqe standarde komunikimi që perceptohet nga përdoruesi si një koleksion skedarësh të rregullt. Me marrjen e një kërkese për një skedar të pajisjes me karakter ose bllok, kerneli ia kalon kërkesën drejtuesit të duhur. Skedarët e pajisjes së bllokut dhe karaktereve nuk janë drejtues në vetvete. Ato mund të mendohen si porta përmes të cilave shoferi pranon kërkesat për të kryer operacionet e synuara.

Skedarët e pajisjes së karaktereve nuk ruhen gjatë operacioneve I/O. Të gjitha operacionet I/O kryhen menjëherë pasi merren. Pajisjet e karaktereve përfshijnë terminale virtuale, modemë dhe pajisje të tjera që nuk mbështesin aksesin e rastësishëm në të dhëna.

Linux (Linux) është një sistem operativ, i cili sot është në fakt i vetmi zëvendësim alternativ Windows OS nga Microsoft. Linux e ka origjinën nga viti 1991, kur një programues i ri nga Finlanda Linus Torvalds filloi punën në versionin e parë të sistemit, i cili u emërua pas emrit të tij. Linux u bë i njohur që nga fillimi i tij. Kjo është kryesisht për faktin se kerneli i këtij OS, si shumica e programeve të shkruara për të, ka cilësi shumë të rëndësishme.

Kernel Kernel është një sistem operativ i nivelit të ulët Pjesa tradicionale e nivelit të varur nga makina që përpunon skedarët dhe ekzekuton nga kerneli UNIX përfshin komponentët e mëposhtëm: disqe, rrjet dhe të tjera operacionet e nevojshme... (ndërsa varet nga karakteristikat e pajisjes); Kerneli i sistemit operativ Linux është elementet e një sistemi monolit të arkitekturës së mikrokernelit. rrotullimi dhe inicializimi i sistemit në një nivel të ulët me ndërprerje; Kur përpiloni kernelin, mund të aktivizoni përpunimin primar dinamik të brendshëm dhe menaxhimi i jashtëm memoria (në pjesën që ka të bëjë me ngarkimin dhe shkarkimin e shumë komponentëve të kernelit - veçoritë e mbështetjes harduerike për të ashtuquajturat module virtuale. Në momentin e ngarkimit të një moduli memorie); kodi i tij ngarkohet në nivelin e sistemit dhe lidhet me pjesën tjetër të kernelit. Funksionet mund të përdoren brenda modulit. çdo kontekst procesi i eksportuar nga kernel kalon ndërmjet modaliteteve të përdoruesit dhe kernelit; pjesët specifike të platformës së synuar të drejtuesve të pajisjes.

Struktura e skedarit(sistemi) / bin - binarët kryesorë të përdoruesit / boot - skedarë statikë të nisjes / cdrom - pika e montimit e zgjedhur historikisht për CD / dev - skedarët e pajisjes / etj - skedarët e konfigurimit/ shtëpi - drejtoritë kryesore / lib - bibliotekat kryesore të përbashkëta / të humbur + të gjetur - skedarë të rikuperuar / media - media e lëvizshme / proc - skedarë kerneli dhe procesi / rrënjë - drejtoria kryesore përdorues rrënjë/ srv - të dhëna shërbimet e shërbimit/ tmp - skedarë të përkohshëm/ usr - me porosi binare dhe të dhëna vetëm për lexim (treguar në foto)

Ndërfaqja ( guaskë grafike) Është një program që organizon ndërveprimin e përdoruesit me një kompjuter. Ofron mbështetje për dritare, menu, ikona, miun dhe elementë të tjerë të njohur GUI - ndërfaqe grafike përdorues. Mbi X janë ndërtuar mjedise grafike më komplekse; më të njohurit janë KDE dhe GNOME. GUI është një koleksion ikonash, menysh, dialogësh, panelesh, dritaresh dhe të tjera elementet grafike duke i lejuar përdoruesit të ndërveprojnë lehtësisht me kompjuterin dhe aplikacionet. KDE dhe Gnome janë mjedise të integruara të desktopit. Përdoruesit punojnë me elementë dhe programe të ndërfaqes.

Utilities Utility (anglisht mjet ose mjet) - ndihmës program kompjuterik në Embedded në Linux shërbimet e softuerit dhe gjuhët. si pjesë e përpiluesit g ++ -GNU C ++; Perl është një gjuhë shumë e fuqishme skriptimi; g 77 - përpiluesi GNU FORTRAN; (parametrat, cilësimet, cilësimet), ose bëni procesin f 2 c - një transkoder nga FORTRAN në C; ndryshimet e parametrave (automatizoni atë). Fort 77 është një përpilues FORTRAN. Ekzekuton f 2 c dhe më pas të përgjithshme software për të kryer detyra tipike të specializuara. Shërbimet ofrojnë akses te veçoritë Llojet e shërbimeve të komunikimit OS përdorin gcc ose g ++; Shërbimet e pavarura që nuk kërkojnë një sistem operativ për funksionimin e tyre, Grep - kërkoni për një fragment teksti në skedarë që përputhet me maskën e shtypur. Maska përcaktohet me Shërbimet e sistemit përfshihet në ofrimin e OS dhe kërkon ndihmën e tij sistemi standard shënimi i quajtur prani " shprehjet e rregullta"; Llojet e shërbimeve sipas funksionit Menaxherët e skedarëve; Arkivuesit (me kompresim i mundshëm të dhëna); Shikuesit; Çinstalues ​​- softuer [; programi për Tr - mjeti i përkthimit (me fjalë të tjera - zëvendësimi i shkronjave në një skedar teksti); Gawk - GNU awk (përdoret për përpunimin e skedarëve të tekstit të formatuar); hiqni softuerin sed - mjet për përpunimin e skedarëve të tekstit;

Shumë ndryshe nga pajisja në Windows. Si fillim, nuk ka disqe C ose D në Linux. Një disk fizik(ose disa) kur instaloni, sistemi ndahet në drejtori dhe nëndrejtori. Drejtoria kryesore, rrënjësore tregohet nga simboli / (slash) Në vend të një skedari shkëmbimi, ekziston një seksion i veçantë / këmbejnë... Çdo drejtori mund të formatohet në sistemin e skedarëve të dëshiruar, në varësi të detyrave të përdoruesit. Për shembull Ext3, ReiserFS, JFS ose të tjerë.
Në shpërndarje të ndryshme Linux, skema dhe qëllimi i disa drejtorive mund të ndryshojnë pak.
Ju mund të krijoni katalogët tuaj. Unë kam një drejtori me filma në një hard disk të veçantë. Në seksionin rrënjë, duket si / filma.

Përshkrimi i drejtorive kryesore dhe nëndirektorive në linux:
/ kosh- Ai përmban
skedarët e komandës kryesore.

/ çizme- Kjo direktori përmban ngarkuesin e sistemit (Grub ose Lilo) dhe skedarët e nevojshëm për të nisur sistemin.

/ dev- Drejtoria e dev përmban skedarë që përshkruajnë pajisjet kompjuterike. Në linux, të gjitha pajisjet konsiderohen skedarë. Edhe portet, disqet, printerët - gjithçka është një skedar.

/ etj- Drejtoria në të cilën ndodhen skedarët e konfigurimit të sistemit, programet, skriptet e fillimit.
/etc/rc.d- skedarët e komandës që nisin aplikacionet kur sistemi niset.
/ etc / passwd- të gjitha të dhënat e përdoruesit janë të koduara në skedar.
/ etj / fstab- skedari përmban informacione rreth sistemeve të skedarëve që montohen automatikisht në fillimin e sistemit

/ shtëpi- Përdoruesi, drejtoria kryesore. Mund të ketë shumë përdorues në Linux. Çdo përdorues ka direktoriumin e tij (Për shembull / shtëpi / përdorues) Kjo përmban çdo skedar përdoruesi në të cilin ai ka qasje të drejtpërdrejtë
shkruani / fshini. Gjithashtu në drejtorinë kryesore janë programet e përdoruesit, cilësimet. Emrat e tyre fillojnë me një pikë dhe duken, për shembull, kështu - .kde .fonts

/ lib- Biblioteka të ndryshme të sistemit, module kernel janë të vendosura këtu
/ lib / firmware- module jo të lira të kernelit të pronarit
/ lib / modulet- module të kernelit të ngarkueshëm. Për shembull drejtuesit e pajisjes, sistemet e skedarëve.

/ mnt- Pajisje të ndryshme plug-in janë montuar përkohësisht në këtë drejtori. Flash drives, floppy disqe, disqe

/ zgjedh- Drejtoria është e instaluar pako shtesë programet.

/ proc- Drejtori me një sistem skedarësh virtual. Ai, në formën e skedarëve, përmban informacion në lidhje me proceset që ndodhin në sistem.
/ proc / module- ky skedar përmban informacion në lidhje me listën e moduleve të kernelit të ngarkuara.
/ proc / cpuinfo - informacion i detajuar në lidhje me procesorin.
/ proc / meminfo -
informacion rreth kujtesë e gjallë.
/ proc / pajisje- drejtuesit e pajisjes të integruar në kernelin e sistemit.
/ proc / kohë e funksionimit- informacion në lidhje me kohën e funksionimit të sistemit. ato. Koha e ekzekutimit pa rindezje.
/ proc / version- versioni i kernelit linux i përdorur nga sistemi.
Të gjitha këto të dhëna mund të dalin në tastierë duke përdorur komandën Mace.
për shembull cat / proc / cpuinfo

/ rrënjë- Drejtoria kryesore e administratorit të sistemit (superpërdoruesi). Përdoret nga administratori nëse drejtoria kryesore e shtëpisë nuk është e disponueshme për ndonjë arsye.

/ sbin- Këtu ndodhen programet kryesore të drejtuara nga root.

/ tmp- Drejtoria për ruajtjen e përkohshme të të dhënave sipas programeve.

/ usr- Drejtoria kryesore për instalimin e programeve. Përveç programeve, ai përmban skedarë dokumentacioni, kodet burimore të programeve, kernelet.
/ usr / lokale- kjo direktori përmban
paketa softuerike të instaluara veçmas.
/ usr / src- burimet programet e instaluara dhe bërthamat.
/ usr / njeri- skedarët e manualeve për programet e instaluara.
/ usr / lib- skedarët e konfigurimit të pandryshueshëm dhe të dhënat e programit.

/ var- Drejtoria var përmban të dhëna që ndryshojnë shpesh gjatë funksionimit të sistemit. Për shembull regjistrat, memoriet e programit.
/ var / lokal- të dhëna të ndryshueshme të programit, vendosur nga administratori në / usr / lokale.
/ var / log- shkrimet e ndryshme programet e sistemit.
/ var / drejtuar- skedarë të përkohshëm. Informacioni në to ruhet deri në rindezjen tjetër të sistemit.
/ var / tmp- drejtoria për skedarët e përkohshëm.

Struktura e skedarëve të Linux është shumë e ndryshme nga ajo në Windows, prandaj, nëse vendosni të studioni seriozisht sistemet e ngjashme me UNIX, atëherë, për mendimin tim, është më mirë të filloni me strukturën e drejtorisë.

Historia njeh dhjetëra raste kur një pilot i papërgatitur ul me sukses një aeroplan. Ose, për shembull, një mjek fillestar kreu me sukses një operacion në kushtet e terrenit... Sidoqoftë, mendoj se vështirë se dikush do të pranonte vullnetarisht të zërë vendin e tyre ...

Ku po çoj? Dhe për faktin se përdorues i Windows, i cili pa Linux për herë të parë, natyrisht, do të jetë në gjendje ta përballojë atë (shkoni në internet ose shikoni një video), megjithatë, sapo të krijohet një situatë jonormale, ai nuk do të dijë më çfarë të bëjë!

Prandaj, për të mos qenë një përdorues kaq injorant, duhet të studioni të paktën bazat dhe parimet e sistemit operativ me të cilin planifikoni të punoni. Dhe në artikullin e sotëm do të shikojmë strukturën e direktoriumit Linux, si dhe veçoritë e ndarjes së diskut dhe montimit të ndarjeve.

Siç thotë fjala, pamjen mund të jetë mashtruese. Shpërndarjet moderne Linux mund, nga jashtë dhe sipas parimeve bazë të punës, në shumë mënyra të kopjojnë të njohurit për shumë Mjedisi Windows... Megjithatë, mjafton vetëm të “gërmojmë” më thellë dhe menjëherë do të shohim se kemi diçka krejtësisht të ndryshme dhe të pakuptueshme :)

Është e lehtë ta verifikosh këtë me një shembull. Linux Mint... Le të hapim dosjen "Computer" në Desktop dhe të shikojmë përmbajtjen e tij:

Siç mund ta shihni, këtu, përveç flash drive-it të lidhur, nuk ka asnjë ndarje të vetme të diskut të ngurtë me të cilën jemi mësuar, përveç pajisjes "File system". Është këtu (ose më mirë, në direktorinë rrënjësore të quajtur "/", e cila nganjëherë quhet gabimisht "/ root /", megjithëse kjo dosje të veçantë në "/") si parazgjedhje dhe ruan të gjitha të dhënat, duke përfshirë skedarët e sistemit dhe të përdoruesit! Shumë e çuditshme dhe e pakuptueshme në shikim të parë. Le ta kuptojmë ...

Fakti është se Linux ka një qasje rrënjësisht të ndryshme për organizimin dhe punën me sistemin e skedarëve nga Windows. Nëse në bazuar në Windows janë ndarje të diskut të ngurtë në të cilat mund të krijojmë dosje arbitrare me skedarë, atëherë në Linux gjithçka bazohet në një hierarki të qartë direktorie që nuk varet nga ndarja e hard drive-it dhe rregullohet nga standardi FHS (shkurtuar si "Standard i Hierarkisë së Skedarëve " - "standard për hierarkinë e sistemit të skedarëve ").

Koncepti i disqeve dhe ndarjeve të tyre, natyrisht, ekziston edhe në Linux, por këtu kryesorja është pikërisht struktura e dosjes, në njërën prej të cilave (si rregull, "/ media /", "/ dev /" ose "/ mnt /") dhe të montuar tipe te ndryshme disqe. Vetë disqet zakonisht emërtohen në varësi të llojit të lidhjes së tyre: SATA - sda (sdb, etj., në varësi të numrit të tyre), dhe IDE - hda (hdb ...). Ndarjet në disqe thjesht numërohen (për shembull, sda1, hdb2).

Drejtoritë e veçanta Linux mund të zhvendosen në ndarje të ndryshme disqe të ndryshme dhe madje edhe në distancë ruajtja e rrjetit... Kushti i vetëm është që të gjitha ato duhet të montohen përpara se sistemi të nisë. Kjo zakonisht bëhet automatikisht kur duke ekzekutuar Linux, por ndonjëherë mund të jetë e nevojshme të modifikoni manualisht parametrat.

Unë mendoj se kemi kuptuar pak për parimet bazë të organizimit të ruajtjes së informacionit në Linux, kështu që ju sugjeroj që të njiheni me strukturën e drejtorisë në mënyrë specifike.

Dosjet kryesore Linux

Përkundër faktit se ka qindra shpërndarje Linux, shumica e tyre kanë një strukturë të ngjashme të drejtorive. Nga njëra anë, kjo siguron njëfarë përputhshmërie me standardet, dhe nga ana tjetër, lehtësinë e përdorimit: një përdorues që është mësuar të organizojë sistemin e skedarëve në një shpërndarje Linux do ta ketë mjaft të lehtë të kalojë në një tjetër nëse është e nevojshme.

Në parim, nuk është e nevojshme të dihet qëllimi i të gjitha dosjeve përmendësh, megjithatë, një njohuri e tillë është e mirëpritur. Prandaj, unë propozoj të shqyrtojmë në formën e një tabele katalogët kryesorë, qëllimin e tyre dhe krahasimin e pjesshëm me Komponentët e Windows(Unë e përshkruaj atë me Linux Mint që kam, kështu që lista e dosjeve në sistemet e tjera mund të ndryshojë pak).

Katalogu Emërimi Windows analog (nëse ka)
/ Ruan të gjithë strukturën e drejtorive të sistemit Disku C:
/ kosh / Ruan skedarët binare të ekzekutueshëm të shërbimeve të sistemit C: \ Windows \ System32
/ boot / Ruan kernelin e sistemit dhe skedarët e tjerë të nisjes C: \ Windows
/ CD ROM / Ruan pikat e montimit për disqet -
/ dev / Ruan skedarët e pajisjeve të lidhura sipas llojit ( hard disqet, pajisje video, etj.) ose pseudo pajisje (p.sh. / dev / null dhe / dev / zero) -
/ etj / Ruan disa skedarë të cilësimeve të sistemit dhe cilësime të programeve të instaluara Pjesërisht C: \ Windows \ System32, pjesërisht C: \ Program Files
/ shtëpi / Ruan dosjet kryesore të përdoruesve të sistemit me cilësimet dhe të dhënat e tyre C: \ Documents and Settings ose C: \ Users
/ lib / Ruan shumicën e bibliotekave programe standarde dhe disa të themeluara Pjesërisht C: \ Windows dhe C: \ Windows \ System32
/ humbur + gjetur / Ruan skedarët që zakonisht mbeten të paregjistruar në ndonjë nga drejtoritë si rezultat i disa dështimeve, por në të njëjtën kohë nuk janë shënuar për mbishkrim. Përdoruesi zakonisht nuk ka qasje në të. Pjesërisht C: \ Ricikluesi (Koshi i riciklimit)
/ media / Ruan pikat e montimit për të gjithë media e lëvizshme(disqe flash, disqe, disqe të lëvizshëm) -
/ mnt / Ruan pikat e përkohshme të montimit të pajisjeve dhe sistemet e tyre të skedarëve që janë shtuar manualisht -
/ zgjedh / Ruan paketa shtesë të programeve të ndryshme C: \ Përdoruesit \ Admin \ Të dhënat e aplikacionit
/ proc / Ruan të dhënat rreth proceset e ekzekutimit dhe puna e kernelit të sistemit Pjesërisht Task Manager
/ rrënjë / Ruan të dhënat për superpërdoruesin (rrënjën) e sistemit Pjesërisht C: \ Përdoruesit \ Admin
/ vraponi / Ruan skedarët e përkohshëm që ekzekutohen gjatë nisjes së sistemit
/ sbin / Ruan shumicën e programeve të sistemit për administrim dhe cilësimet e OS Pjesërisht C: \ Windows \ System32
/ srv / Ruan skedarët përgjegjës për funksionimin e anës së serverit të sistemit dhe protokollet e ndryshme për transferimin e të dhënave përmes rrjetit (HTTP, FTP, etj.) Pjesërisht C: \ Windows \ System32
/ sys / Ruan një sistem skedar virtual me të dhëna rreth pajisjet e instaluara dhe shoferët Pjesërisht Menaxheri i pajisjes
/ tmp / Ruan skedarë të përkohshëm C: / Windows / Temp
/ usr / Ruan të dhënat e përdoruesve të sistemit dhe skedarët e programeve të instaluara manualisht. Pjesërisht C: \ Përdoruesit \
/ var / Ruan skedarë me të dhëna të ndryshme në ndryshim, regjistra, cache, etj. -

Përveç dosjeve në vetë drejtorinë rrënjësore, duhet t'i kushtoni vëmendje edhe disa nëndrejtorive:

Katalogu Emërimi Windows analog (nëse ka)
/ etj / X11 / Ruan skedarët e cilësimeve të sistemit të dritares X -
/ etj / samba / Ruan skedarët e konfigurimit për serverin Samba, i cili përdoret për komunikim me të dosjet e rrjetit Dritaret -
/ shtëpia / emri i përdoruesit / Ruan skedarët dhe konfigurimin e një llogarie specifike përdoruesi (Dosja kryesore) C: \ Përdoruesit \ Emri i përdoruesit
/ usr / bin / Ruan një numër programesh që nevojiten për të punuar në modalitetin me shumë përdorues -
/ usr / share / Ruan të dhënat e përgjithshme të programeve të instaluara -
/ usr / src / Ruan skedarët me kodet burimore të kernelit të sistemit -
/ var / cache / Ruan memoriet e softuerit dhe paketat e softuerit të shkarkuar nga depoja -
/ var / lojëra / Ruan kursimet dhe arritjet e lojërave të instaluara -
/ var / log / Ruan regjistrat (regjistrat) e sistemit dhe programet e instaluara -
/ var / mail / Cilësimet e dyqaneve kuti postare përdoruesit -
/ var / run / Ruan të dhëna në lidhje me proceset e ekzekutimit dhe demonët Pjesërisht Task Manager
/ var / tmp / Ruan skedarët e përkohshëm të ruajtur gjatë rindezjeve të sistemit -
/ var / www / Ruan faqet e internetit që përpunohen me anë të serverit lokal -

Pak për sistemet e skedarëve

Meqenëse vendosëm të kuptojmë pak a shumë plotësisht strukturën e drejtorive Linux, nuk mund të mos përmendim një gjë kaq të rëndësishme siç është sistemi i skedarëve.

Në Windows, ne jemi mësuar të përdorim NTFS tradicionale dhe të mos mashtrojmë veten (epo, gjithashtu FAT32 në disqet flash ose UDF në disqe). Sidoqoftë, në botën Linux, gjithçka është shumë më e larmishme. Ekziston mbështetje për të gjitha Windows FS, por rekomandohet të përdoret sisteme të veçanta optimizuar për OS të ngjashëm me UNIX.

Të gjitha sistemet e skedarëve mund të ndahen me kusht në dy grupe: journaled dhe journaled. Sistemet e skedarëve të ditarit caktojnë një vend të caktuar për ruajtjen e një regjistri me një listë skedarësh në një PC, atributet dhe vendndodhjen e tyre. Ata janë më tolerantë ndaj gabimeve dhe garantojnë integritet më të madh të të dhënave. Sistemet jo ditar janë më të shpejta dhe nuk kërkojnë hapësirë ​​për ruajtjen e regjistrit, megjithatë, ato nuk garantojnë ruajtjen e qëndrueshme të informacionit, pasi kryejnë të gjitha veprimet me skedarë drejtpërdrejt, pa shkruar në regjistër.

Për të mos renditur të gjitha sistemet e skedarëve të disponueshëm sot, mendoj se është më mirë të përmendim vetëm më të mirët, të cilët janë zgjidhja më e mirë për Linux.

  1. Ext4është një sistem skedarësh me ditar që është standard në shumicën e shpërndarjeve moderne Linux. Është i mbrojtur mirë nga problemet e fragmentimit dhe është i optimizuar për të punuar me të skedarë të mëdhenj... Nëse gjatë instalimit nuk e keni formatuar me dorë ndarjen për sistemin, atëherë ka shumë të ngjarë që të keni Ext4.
  2. Ext2- sistemi i skedarëve pa ditar, i cili ishte kryesori për shpërndarjet e vjetra Linux (deri në vitet 2000). Ka një numër kufizimesh për të punuar me skedarë të mëdhenj, megjithatë, në të njëjtën kohë, është FS më i shpejtë, kështu që shpesh përdoret në të ndryshme teste krahasuese si referencë.
  3. Reiser4është një sistem skedari ditar që shumë përdorues të avancuar rekomandojnë për përdorim në Linux. Avantazhi i tij është stabiliteti i mirë dhe shpejtësi e lartë punë, e cila, për më tepër, mund të përmirësohet më tej duke aktivizuar një plug-in të veçantë për kompresimin e të dhënave.
  4. btrfs(gjithashtu B-tree FS) është një sistem skedari ditar i zhvilluar nga një kompani e njohur Oracle kohët e fundit (në 2007). Veçoritë e tij përfshijnë ruajtjen e indeksit të skedarëve në të ashtuquajturat "pemë B" - struktura hierarkike që shfrytëzojnë sa më shumë burimet RAM për shkak të thellësisë së vogël të foleve të të dhënave.
  5. SHKËRBIMI- një lloj i veçantë i sistemit të skedarëve jo ditar që zbaton një strukturë të ruajtjes së të dhënave të ngjashme me strukturën celulare të kujtesës me akses të rastësishëm. Për shkak të kësaj, përdoret për të implementuar skedarin swap në Linux.

Shumica e shpërndarjeve moderne kanë parazgjedhjen HDD formatuar në Ext4, si dhe SWAP, për të cilat është caktuar një madhësi e ngjashme me madhësinë e RAM-it të instaluar. Kjo është, për shembull, faqosja standarde e diskut për Linux Mint, e cila prodhohet nëse nuk keni ndonjë ndikim në ndarjen manuale:

Megjithatë, përdoruesit e avancuar këshillohen të para-ndarin diskun në një mënyrë më "të sofistikuar" përpara instalimit për të siguruar siguri më të mirë të të dhënave gjatë një riinstalimi të detyruar të sistemit duke montuar drejtori të veçanta në ndarjet e krijuara. Le të shqyrtojmë disa "receta" të ngjashme për ndarjen e një disku.

Paraqitja e diskut

Unë mendoj se e keni kuptuar tashmë pse gjithë kjo kërcim me seksione të ndryshme. Nëse, për shembull, prishni diçka në instalimin në mënyrë të rregullt(për ndarje) Sistemi Linux, në mënyrë të pashmangshme do të humbni të gjitha të dhënat tuaja të përdoruesit kur riinstaloni! Megjithatë, nëse ato ruhen veçmas nga skedarët e sistemit, atëherë riinstalimi do të duhet vetëm të prekë direktoritë e sistemit dhe të montoni më vonë drejtoritë ekzistuese të përdoruesve.

Opsioni i parë për ndarje është zhvendosja e drejtorisë "/ home /" në një ndarje të veçantë të diskut. Kjo është, në fakt, ne duhet të ndajmë diskun në tre ndarje:

Nëse jeni duke planifikuar ngarkim i dyfishtë me instalimin e Windows, atëherë është më mirë të zëvendësoni sda1 dhe sda2 me dy ndarje të formatuara në NTFS për tre ndarjet e mësipërme: njëra për Disk C dhe e dyta për Disk D, përkatësisht.

Përdoruesit më të avancuar priren të bëjnë një plan urbanistik më kompleks të diskut, duke marrë parasysh ndarjen e tij në zona të veçanta të nisjes dhe zona të ekzekutimit të programit:

Në thelb, disa përdorues montojnë drejtoritë e lartpërmendura në sda4 në ndarje të veçanta, dhe disa nuk i zgjedhin fare. E gjitha varet nga detyrat që planifikoni të zgjidhni në kompjuterin tuaj. Nëse nuk keni vendosur ende se si do të përdorni drejtoritë individuale, atëherë unë rekomandoj të lini disa dhjetëra gigabajt hapësirë ​​në hard disk të pashpërndara "në rezervë". Kështu që ju mund t'i rimontoni drejtoritë e nevojshme në ndarjet e krijuara rishtazi në çdo kohë direkt nga sistemi juaj.

Dhe gjëja më e rëndësishme është se si të krijohen këto seksione! Për ta bërë këtë, unë rekomandoj të shkarkoni programin e përmendur tashmë në formular imazhi i çizmes, shkruani këtë imazh në një USB flash drive ose disk dhe niseni prej tij.

Gjatë procesit të nisjes nga LiveCD, do t'ju bëhen një sërë pyetjesh në lidhje me opsionet e nisjes. Kudo lëmë gjithçka si parazgjedhje, përveç ekranit me zgjedhjen e gjuhës. Aty do t'ju duhet të vendosni numrin që korrespondon Ndërfaqja në gjuhën ruse(E kisha "22"). Në të gjitha pyetjet e tjera, thjesht shtypni Enter dhe si rezultat do të arrijmë në desktopin virtual të Debian OS me GParted që funksionon:

Nëse keni zgjedhur ndërfaqen ruse, atëherë nuk do të keni probleme me punën në program edhe nëse vendosni të rindani diskun me tashmë sistemi i instaluar... Algoritmi i veprimeve është si më poshtë:

  1. Zgjidhni seksionin ekzistues që dëshironi të ndani dhe klikoni butonin "Ndrysho përmasën ose Zhvendos", ose paragraf i ngjashëm në menynë e kontekstit.
  2. Në dritaren që hapet, duke përdorur rrëshqitës ose dritare për futjen e numrave, vendosni madhësinë e re të ndarjes dhe zhvendosjen e saj nga fillimi ose fundi i diskut (mos harroni se rrënja dhe shkëmbimi vendosen më mirë më afër fillimit).
  3. Zgjidhni zonën e sapokrijuar të pacaktuar dhe klikoni butonin "I ri" në shiritin e veglave ose në menunë e kontekstit.
  4. Në dritaren që hapet, vendosni llojin e sistemit të skedarëve, etiketën e vëllimit dhe parametrat e tjerë.
  5. I përsërisim hapat e mësipërm sa herë të jetë e nevojshme, pas së cilës i zbatojmë të gjitha ndryshimet dhe presim derisa ato të përfundojnë.

Tani nuk ka mbetur shumë. Instaloni sistemin në direktorinë rrënjë (nëse nuk është instaluar ende) dhe niseni atë. Tani të gjitha drejtoritë janë në një ndarje dhe ne duhet t'i rimontojmë në zona të tjera të diskut të krijuar posaçërisht. Kjo mund të bëhet pothuajse tërësisht në modalitetin vizual ose duke përdorur terminalin. Për ta bërë më të qartë, le të shohim procesin e transferimit duke përdorur shembullin e drejtorisë / home / në modalitetin gjysmë vizual.

Nëse vendosni të bëni gjithçka vizualisht, atëherë hapni, për shembull, dosjen / mnt / ose / media / dhe në të krijoni një dosje të përkohshme (le ta quajmë / newhome /) për të transferuar të dhëna. Tani duhet të fillojmë terminalin në mënyrë që të montojmë dosjen e krijuar rishtazi në ndarjen në të cilën duam të transferojmë dosjen / home /. Kjo bëhet me një komandë të formularit:

Natyrisht, në vend të "ext4" do të specifikoni sistemin tuaj të skedarëve dhe në vend të "sda5" ndarjen në të cilën do të transferoni dosjen. Kur ndarja është montuar dhe dosja është në të, hapeni atë dhe kopjoni të gjitha përmbajtjet aktuale të drejtorisë / home / atje. Pasi të përfundojë kopjimi, çmontoni ndarjen nga dosja me komandën e mëposhtme:

$ sudo shuma / mnt / shtëpi e re

Tani dosje ekzistuese/ home / mund të fshihet plotësisht (ose më mirë të riemërtohet, për shembull, në / Oldhome /) dhe të rikrijohet, ose thjesht të pastrohet plotësisht. Gjëja kryesore është që ne kemi një drejtori bosh / shtëpi /. Tani le të montojmë seksionin tonë me të dhënat e kopjuara këtu:

$ sudo montimi / dev / sda5 / shtëpi

Nëse gjithçka shkoi mirë, atëherë të gjithë skedarët që kopjuam do të shfaqen në drejtorinë / home /. Kjo është, në fakt, transferimi u përfundua me sukses. Mbetet vetëm për të konsoliduar suksesin dhe për t'u siguruar që nuk kemi nevojë ta montojmë manualisht drejtorinë tonë sa herë që sistemi niset. Për ta bërë këtë, ne do të përdorim redaktimin e skedarit fstab (shkurtuar nga anglishtja "tabela e sistemeve të skedarëve" - ​​"tabela e sistemit të skedarëve"), i cili ndodhet në drejtorinë / etc /. Ne do ta hapim atë me ndonjë redaktori i tekstit dhe në fund shtojmë rreshtin e mëposhtëm:

/ dev / sda5 / home ext4 nodev, nosuid 0 2

Me këtë ne fjalë për fjalë "i tregojmë" sistemit si më poshtë: në ndarjen / dev / sda5 ekziston një drejtori / shtëpi / e formatuar në sistemin ext4, në të cilin nuk mund të krijoni një drejtori me konfigurimin e pajisjes (/ dev /) dhe operacionet me bit suid dhe sgid janë gjithashtu të ndaluara, të çaktivizuara rezervë dhe sistemi i skedarëve është montuar në kalimin e dytë (sistemi rrënjë është gjithmonë i montuar në të parën).

Rindizni dhe gëzohuni :) Për magjepsësit e vërtetë, do të them që të gjitha operacionet (përveç redaktimit të fstab) mund të kryhen direkt në tastierë me afërsisht sekuencën e mëposhtme të komandave:

$ sudo mkdir / mnt / newhome

$ sudo mount -t ext4 / dev / sda5 / mnt / newhome

$ gjeni. -thellësia -print0 | sudo cpio --null --sparse -pvd / mnt / newhome /

$ sudo shuma / mnt / shtëpi e re

$ sudo mv / shtëpi / shtëpi e vjetër

$ sudo mkdir / shtëpi

$ sudo montimi / dev / sda5 / shtëpi

sudo gedit / etj / fstab

konkluzionet

Kuptimi i strukturës së drejtorisë dhe zbatimi i së parës komandat e konsolës i jep një përdoruesi fillestar një ide mjaft të mirë të strukturës së sistemit dhe i mëson të menduarit Kategoritë Linux... Në praktikë, nuk ka asgjë veçanërisht të vështirë në ndarjen dhe montimin e ndarjeve të diskut, por këto veprime rrisin ndjeshëm stabilitetin e OS, prandaj rekomandohet që ato të bëhen para së gjithash kur instaloni një sistem të ri.

Duke shpenzuar pak kohë në optimizimin e strukturës së drejtorisë, ju do ta bëni Linux-in tuaj më të besueshëm për sa i përket ruajtjes së informacionit dhe në të ardhmen do të kurseni shumë nga nervat dhe përpjekjet tuaja!

P.S. Ju lejohet të kopjoni dhe citoni lirisht këtë artikull, me kusht që të tregoni një të hapur lidhje aktive për burimin dhe ruajtjen e autorësisë së Ruslan Tertyshny.

Konceptet bazë

Sistemi operativ Linux është projektuar në përputhje me kërkesat e standardit ndërkombëtar për sistemet e pajtueshme me UNIX IEEE POSIX, kështu që do të ishte logjike që së pari të shqyrtohet shkurtimisht struktura e sistemit të skedarëve UNIX OS.

Një nga avantazhet e UNIX OS është se sistemi bazohet në numër i vogël koncepte të qarta intuitivisht. Sidoqoftë, përkundër thjeshtësisë së këtyre koncepteve, duhet të mësoheni me to. Pa këtë, është e pamundur të kuptohet thelbi i sistemit operativ UNIX.

Përdoruesi

Që në fillim, UNIX u konceptua si një sistem ndërveprues. Me fjalë të tjera, UNIX është për punë terminale... Për të filluar punën, një person duhet të "hyhet" në sistem duke futur emrin e llogarisë së tij dhe, ndoshta, fjalëkalimin nga një terminal falas. Personi që është i regjistruar në llogaritë e sistemit, dhe për rrjedhojë ka emrin e llogarisë, quhet përdorues i regjistruar i sistemit. Regjistrimi i përdoruesve të rinj zakonisht bëhet nga administratori i sistemit. Përdoruesi nuk mund të ndryshojë emrin e llogarisë së tij, por mund të vendosë dhe/ose ndryshojë fjalëkalimin e tij. Fjalëkalimet ruhen në skedar të veçantë në formë të koduar. Mos harroni fjalëkalimin tuaj, edhe administratori nuk do të ndihmojë për ta zbuluar atë!

Të gjithë përdoruesit e UNIX punojnë me skedarë, në mënyrë të qartë ose të nënkuptuar. Sistemi i skedarëve UNIX OS ka një strukturë peme. Nyjet e ndërmjetme të pemës janë drejtori me lidhje me drejtoritë ose skedarët e tjerë, dhe gjethet e pemës korrespondojnë me skedarë ose drejtori boshe. Çdo përdorues i regjistruar ka një direktori përkatëse në sistemin e skedarëve, e cila quhet direktoria "home" e përdoruesit. Kur një përdorues regjistrohet, ai ka akses të pakufizuar në drejtorinë e tij kryesore dhe të gjitha drejtoritë dhe skedarët që gjenden aty. Përdoruesi mund të krijojë, fshijë dhe modifikojë drejtoritë dhe skedarët që gjenden në direktorinë kryesore. Qasja në të gjithë skedarët e tjerë është potencialisht e mundur, por mund të kufizohet nëse përdoruesi nuk ka privilegje të mjaftueshme.

Sistemi i skedarëve

Koncepti i një skedari është një nga më të rëndësishmit për UNIX OS. Të gjithë skedarët që përdoruesit mund të manipulojnë janë të vendosura në sistemin e skedarëve, i cili është një pemë me nyje të ndërmjetme që korrespondojnë me drejtoritë, dhe gjethet - skedarët dhe drejtoritë boshe. Një strukturë shembullore e sistemit të skedarëve UNIX është paraqitur në figurën 2.1. Me të vërtetë për të gjithë shtytje logjike(seksioni fizik paketa e diskut) është një hierarki e veçantë drejtorish dhe skedarësh. Për të marrë një pemë të përbashkët në dinamikë, hierarki të veçanta "montohen" në një sistem skedari fiks rrënjë.

Koment: Në botën e UNIX, për arsye historike, termi "sistemin e skedarëve" është një term i mbingarkuar, që do të thotë hierarki e direktoriumit dhe skedarit dhe pjesa e kernelit që menaxhon drejtoritë dhe skedarët. Me sa duket, do të ishte më e saktë të quhej hierarkia e drejtorive dhe skedarëve një arkiv skedarësh dhe të përdorej termi "skedar sistem" vetëm në kuptimin e dytë. Megjithatë, duke ndjekur traditën e UNIX OS, ne do ta përdorim këtë term në dy kuptime, duke dalluar kuptimet në kontekst.

Çdo drejtori dhe skedar në sistemin e skedarëve ka një unik emri i plotë(Në UNIX OS, ky emër zakonisht quhet emri i plotë i rrugës - emri që specifikon shtegun e plotë, pasi në të vërtetë specifikon shtegun e plotë nga rrënja e sistemit të skedarëve përmes zinxhirit të drejtorive deri te drejtoria ose skedari përkatës; unë do të përdor termi "emër i plotë", pasi nuk ka asnjë emër eufonik të rrugës analoge ruse). Një direktori që është rrënja e një sistemi skedarësh (drejtoria rrënjësore) ka një emër të paracaktuar "/" (slash) në çdo sistem skedari. Një emër skedari plotësisht i kualifikuar si / bin / sh do të thotë që direktoria rrënjësore duhet të përmbajë emrin e drejtorisë bin dhe drejtoria bin duhet të përmbajë emrin e skedarit sh. Një emër skedari i shkurtër ose relativ (emri relativ i rrugës) është një emër (ndoshta i përbërë) që specifikon shtegun për në skedar nga direktoria aktuale e punës (ekziston një komandë dhe një thirrje sistemi përkatës që ju lejon të vendosni direktorinë aktuale të punës).

Çdo drejtori përmban dy emra të veçantë, emrin ".", i cili emërton vetë direktorinë dhe emrin "..", i cili emërton direktorinë "prind" të kësaj drejtorie, d.m.th. direktoriumin që i paraprin atij të dhënë në hierarkinë e drejtorive.

Oriz. 2.1. Struktura e dosjeve të sistemit të skedarëve

UNIX mbështet programe të shumta që ju lejojnë të punoni me sistemin e skedarëve dhe janë të disponueshme si komanda shell. Këtu janë disa prej tyre (më të zakonshmet):

Struktura e sistemit të skedarëve

Sistemi i skedarëve zakonisht ndodhet në disqe ose pajisje të tjera memorie të jashtme duke pasur një strukturë blloku. Përveç blloqeve që ruajnë drejtoritë dhe skedarët, disa zona të tjera shërbimi mbështeten në memorien e jashtme.

Në botën UNIX, ekzistojnë disa lloje të ndryshme të sistemeve të skedarëve me strukturën e tyre të memories së jashtme. Më i famshmi është skedari tradicional Sistemi UNIX Sistemi V (s5) dhe sistemi i skedarëve UNIX BSD (ufs). Sistemi i skedarëve s5 përbëhet nga katër seksione (Figura 2.2, a). Në sistemin e skedarëve ufs në një disk logjik (një ndarje e një disku të vërtetë) ekziston një sekuencë e seksioneve të sistemit të skedarëve (Figura 2.2, b).

Oriz. 2.2. Struktura e memories së jashtme të sistemeve të skedarëve s5 dhe ufs

Le të përshkruajmë shkurtimisht thelbin dhe qëllimin e secilës zonë të diskut.

    Blloku i nisjes përmban një program përforcues që përdoret për të nisur UNIX OS për herë të parë. Në sistemet e skedarëve s5, në të vërtetë përdoret vetëm blloku i nisjes së sistemit të skedarëve rrënjë. Sistemet e skedarëve shtesë e kanë këtë zonë, por nuk përdoren.

    Superblloku është zona më kritike e sistemit të skedarëve, që përmban informacione që janë të nevojshme për të punuar me sistemin e skedarëve në tërësi. Superblloku përmban një listë të blloqeve të lira dhe i-nyjeve të lira (nyjet e informacionit). Kopje të shumta të superbllokut mbahen në sistemet e skedarëve ufs për të përmirësuar elasticitetin (siç shihet në Figurën 2.2b, një kopje për grup cilindri). Çdo kopje e superbllokut është 8196 bajt në madhësi dhe vetëm një kopje e superbllokut përdoret kur sistemi i skedarëve montohet (shih më poshtë). Megjithatë, nëse montimi përcakton që kopja kryesore e superbllokut është e dëmtuar ose nuk i plotëson kriteret e integritetit, përdoret rezervimi.

    Një bllok i grupit të cilindrave përmban numrin e nyjeve i të specifikuara në listën e nyjeve i për një grup të caktuar cilindrash dhe numrin e blloqeve të të dhënave që lidhen me këto i-nyje. Madhësia e bllokut të grupit të cilindrave varet nga madhësia e sistemit të skedarëve. Për të përmirësuar efikasitetin, sistemi i skedarëve ufs përpiqet të vendosë nyjet i dhe blloqet e të dhënave në të njëjtin grup cilindrash.

    Lista e nyjeve i (ilist) përmban një listë të nyjeve i që korrespondojnë me skedarët në sistemin e skedarëve të dhënë. Numri maksimal Numri i skedarëve që mund të krijohen në një sistem skedari përcaktohet nga numri i i-nyjeve të disponueshme. I-node ruan informacione që përshkruajnë skedarin: mënyrat e hyrjes në skedar, kohën e krijimit dhe modifikimin e fundit, ID-në e përdoruesit dhe ID-në e grupit të krijuesit të skedarit, përshkrimin e strukturës së bllokut të skedarit, etj.

    Blloqet e të dhënave - Kjo pjesë e sistemit të skedarëve ruan të dhënat aktuale të skedarëve. Në rastin e sistemit të skedarëve ufs, të gjitha blloqet e të dhënave të një skedari tentohen të vendosen në të njëjtin grup cilindrash. Madhësia e bllokut të të dhënave përcaktohet gjatë formatimit të sistemit të skedarëve me komandën mkfs dhe mund të vendoset në 512, 1024, 2048, 4096 ose 8192 bajt.

Sistemet e skedarëve të montueshëm

Skedarët e çdo sistemi skedar bëhen të aksesueshëm vetëm pas "montimit" të këtij sistemi skedarësh. Skedarët në një sistem skedarësh "të pamontuar" nuk janë të dukshëm për sistemin operativ.

Thirrja e sistemit të montimit përdoret për të montuar sistemin e skedarëve. Montimi i një sistemi skedari nënkupton sa vijon. Pema e drejtorive dhe skedarëve ekzistues në momentin e montimit duhet të ketë një nyje fletë - një direktori boshe (në terminologjinë UNIX, një direktori e tillë e përdorur për montimin e një sistemi skedari quhet pikë e montimit të drejtorisë). Çdo sistem skedari ka një direktori rrënjësore. Gjatë ekzekutimit të thirrjes së sistemit të montimit, direktoria rrënjësore e sistemit të skedarëve të montuar kombinohet me direktorinë - pikën e montimit, si rezultat i së cilës formohet një hierarki e re me emrat plotësisht të kualifikuar të drejtorive dhe skedarëve.

Sistemi i skedarëve të montuar më pas mund të shkëputet nga hierarkia e përgjithshme duke përdorur thirrjen e sistemit umount. Ekzekutimi i suksesshëm i kësaj thirrjeje sistemi kërkon që sistemi i skedarëve që do të shkëputet të mos jetë në përdorim në këtë moment (d.m.th. asnjë skedar nga ky sistem skedari nuk është hapur). Sistemi i skedarëve rrënjë është gjithmonë i montuar dhe thirrja e sistemit umount nuk mund të zbatohet në të.

Siç e përmenda më lart, një sistem skedar i veçantë zakonisht ndodhet në një disk logjik, d.m.th. në një ndarje fizike të diskut. Asnjë thirrje e veçantë e sistemit nuk mbështetet për të inicializuar sistemin e skedarëve. Sistemi i ri i skedarëve krijohet në një disk të formatuar duke përdorur mjetin (komandën) mkfs. Sistemi i skedarëve të krijuar rishtazi është inicializuar në një gjendje që korrespondon me praninë e vetëm një direktorie të zbrazët rrënjë. Komanda mkfs kryen inicializimin duke shkruar të dhënat e duhura direkt në disk.

Ndërfaqja e sistemit të skedarëve

Kerneli UNIX mbështet thirrjet e shumta të sistemit për të manipuluar skedarët. Midis tyre, më të rëndësishmet janë hapja, krijimtaria, leximi, shkrimi, kërkimi dhe mbyllja.

Është e rëndësishme të theksohet se megjithëse një skedar i rregullt përfaqësohet si një grup blloqesh të memories së jashtme brenda nënsistemit të menaxhimit të skedarëve, përdoruesve u sigurohet një paraqitje e skedarit si një sekuencë lineare bajtash. Ky paraqitje lejon përdorimin e abstraksionit të skedarit kur punoni në pajisje të jashtme, gjatë organizimit të komunikimeve ndërprocesore etj.

Një skedar në thirrjet e sistemit që ofrojnë akses real në të dhëna identifikohet nga përshkruesi i tij (vlera e plotë). Përshkruesi i skedarit lëshohet nga thirrjet e sistemit të hapur (hap një skedar) dhe krijo (krijo një skedar). Parametri kryesor i operacioneve të hapjes dhe krijimit të një skedari është emri i plotë ose relativ i skedarit. Për më tepër, kur hapni një skedar, tregohet gjithashtu mënyra e hapjes (vetëm për lexim, vetëm për shkrim, shkrim dhe lexim, etj.) dhe një karakteristikë që përcakton aftësinë për të hyrë në skedar:

hapur (emri i rrugës, vonesa [, modaliteti])

Një nga shenjat që mund të marrë pjesë në parametrin oflag është shenja O_CREAT, prania e së cilës tregon nevojën për të krijuar një skedar nëse, gjatë ekzekutimit të thirrjes së sistemit të hapur, një skedar me emri i specifikuar nuk ekziston (parametri i modalitetit ka kuptim vetëm nëse ky flamur është i pranishëm). Megjithatë, për arsye historike dhe për të siguruar përputhshmërinë me versionet e mëparshme Sistemi operativ UNIX mbështet veçmas thirrjen e sistemit të krijimit, i cili kryen në thelb të njëjtat funksione.

Një skedar i hapur mund të përdoret për të lexuar dhe shkruar sekuenca të bajteve. Dy thirrje sistemore mbështeten për këtë:

lexoni (fd, buffer, count) dhe shkruani (fd, buffer, count)

Aty ku fd është një përshkrues skedari (i marrë nga një thirrje sistemi i hapur ose i krijuar më parë), buffer është një tregues i grupit të karaktereve dhe numërimi është numri i bajteve që duhet lexuar ose shkruar në skedar. Funksioni i leximit ose i shkrimit është një numër i plotë që është i njëjtë me numërimin nëse operacioni ka sukses, zero kur arrihet fundi i skedarit dhe negativ kur ndodhin gabime.

Çdo skedar i hapur ka një pozicion aktual. Menjëherë pas hapjes, skedari pozicionohet në bajtin e parë. Me fjalë të tjera, nëse thirrja e sistemit për lexim (ose shkrim) ekzekutohet menjëherë pas hapjes së skedarit, bajtët e parë të numërimit të përmbajtjes së skedarit do të lexohen (ose shkruhen) (natyrisht, ato do të lexohen me sukses vetëm nëse skedari në të vërtetë përmban të paktën numërimin e bajteve). Pasi të ekzekutohet thirrja e sistemit për lexim (ose shkrim), treguesi i leximit / shkrimit të skedarit do të vendoset të numërojë + 1, e kështu me radhë.

Një stil i tillë i thjeshtë i njëpasnjëshëm i punës rezulton i mjaftueshëm në shumë raste, por shpesh është e nevojshme të lexohet ose modifikohet një skedar nga një pozicion arbitrar (për shembull, si mund t'i ruajmë grupet e të dhënave të indeksuara drejtpërdrejt në skedar pa një mundësi të tillë ?). Për të pozicionuar në mënyrë të qartë skedarin, përdorni thirrjen e sistemit

lseek (fd, kompensim, origjinë)

Si më parë, këtu fd është një dorezë për një skedar të hapur më parë. Parametri i kompensimit specifikon zhvendosjen relative të treguesit të leximit/shkrimit, dhe parametri i origjinës specifikon se ku duhet të zbatohet kompensimi. Ekzistojnë tre vlera të mundshme për parametrin e origjinës. Një vlerë prej 0 tregon se kompensimi duhet të trajtohet si një kompensim që nga fillimi i skedarit. Një vlerë prej 1 do të thotë se kompensimi është një zhvendosje nga pozicioni aktual i skedarit. Së fundi, një vlerë prej 2 tregon se kompensimi është në lidhje me fundin e skedarit. Vini re se lloji i të dhënave të parametrit offset është i gjatë int. Kjo do të thotë që, së pari, mund të specifikohen kompensime mjaftueshëm të gjata dhe, së dyti, kompensimet mund të jenë pozitive dhe negative.

Për shembull, pas ekzekutimit të thirrjes së sistemit

treguesi i leximit/shkrimit të skedarit përkatës do të vendoset në fillim (bajtin e parë) të skedarit. Thirrja e sistemit

UNIX Filesystem ... komandat. Figura 1.2. Struktura Drejtoritë e OS Linux Drejtoria kryesore dosje sistemeve OS Linuxështë direktoria rrënjësore ...

  • Instalimi i dhomës së operacionit sistemeve Linux

    Abstrakt >> Informatikë

    Metoda të fuqishme dhe fleksibël të menaxhimit dosje sistemeve Linux ose Linux-si sistemet operative. Në shumë ... një pemë strukturën katalogë dhe kjo strukturën mund të përfshijë disa seksione. Kur dosje sistemi montuar...

  • Artikujt kryesorë të lidhur