epic
User
Inregistrat: acum 17 ani
Postari: 1896
|
|
Generalităţi
Sistemul de fişiere reprezintă o construcţie logică ce oferă posibilitatea stocării şi regăsirii informaţiei ce se află pe un dispozitiv de stocare cu acces aleator. Un sistem de fişiere este parte integrantă a sistemului de operare şi este format din fişiere, directoare precum şi informaţii necesare pentru localizarea şi accesul acestora. Sistemul de fişiere UNIX ordonează şi grupează din punct de vedere logic fişierele într-o manieră eficientă, prin cuprinderea acestora în directoare ce sunt asemănătoare dosarelor ce conţin mai multe documente. UNIX posedă un sistem de fişiere ierarhic, cu o structură arborescentă multi-nivel ce pleacă de la directorul rădăcină (root), simbolizată prin caracterul „/” (slash), putând de fapt să fie suportate mai multe sisteme de fişiere simultan pe acelaşi disc. Fiecare disc este divizat în porţiuni (partiţii) ce pot găzdui un sistem de fişiere, un domeniu de swap sau un domeniu de date speciale.
Directorul "root"
Reprezintă nivelul cel mai de sus din sistemul de fişiere şi este simbolizat de caracterul "/" (slash). Nu poate exista decât un singur director root într-un sistem de fişiere UNIX. ÃŽn UNIX fişierele sunt interpretate sub forma unor şiruri de octeţi; astfel, cu toate că o aplicaţie face o cerere pentru un fişier cu o structură specială, nucleul stochează acel fişier pe disc ca o simplă secvenţă de octeţi, organizând fişierele în directoare. Funcţia de bază a sistemului de fişiere este aceea de a oferi servicii de fişiere aplicaţiilor respective fără ca acestea să fie preocupate de structura specială de stocare hardware. Un fişier reprezintă un şir de octeţi ce aparţine unui director. Conceptual, un fişier UNIX este precum un document îndosariat (dosarul este directorul din care face parte). Fişierul poate stoca informaţii diverse: text, grafică, video, sunet, imagine etc. Orice fişier din sistem are un nume lungimea numelor de fişiere UNIX este în general limitată la 255 de caractere. Caracterele valide sunt: orice caracter alfabetic, numeric, liniuţa de subliniere underscore ( _ ) şi punctul (.). Nu se folosesc spaţii în numele fişierelor, precum şi următoarele caractere speciale: ! " ` ' ; / $ * & < > ( ) | { } [ ] ~.
Directorul este un caz particular de fişier ce arată ca un cuprins de carte. El conţine două coloane de informaţie - numerele inode ale fişierelor şi numele fişierelor. Fiecare director conţine o referinţă către el însuşi (identificat prin semnul „.”) şi către directorul părinte (identificat prin „..”). Chiar şi directorul rădăcină – root – conţine o referinţă către directorul părinte, care în acest caz este o referinţă către el însuşi. Directoarele pot conţine subdirectoare şi fişiere. La rândul lor, subdirectoarele pot conţine alte subdirectoare şi alte fişiere. Orice sistem de operare posedă o anumită modalitate de structură a directoarelor pentru organizarea informaţiei pe hard-disc; în UNIX un director se numeşte directory, iar în Windows şi MacOS un director se numeşte folder, având însă aceeaşi semnificaţie. Chiar dacă detaliile sistemului de fişiere pot diferi în funcţie de tipul sistemului, următoarele componente sunt comune pentru majoritatea sistemelor de fişiere:
(vezi poza)
O caracteristică aparte a sistemului de fişiere UNIX o constituie legăturile. O legătură (link) reprezintă o posibilitate a unui fişier sau de acces la acesta prin mai multe nume. O legătură este, de fapt, o intrare într-un director ce face redirectarea spre un fişier stocat în alt director sau chiar spre un întreg alt director. Directorul root are o serie de subdirectoare (ce diferă în funcţie de implementarea UNIX), printre care cele mai importante sunt, de regulă: "bin", "dev", "etc", "opt", "lib","mnt", "tmp","home" şi "usr". Aceste directoare au următorul conţinut: /bin Comenzi UNIX /dev Director pentru dispozitive speciale /etc Programe şi fişiere de date suplimentare /lib Directorul bibliotecii de programe C /mnt Directorul mount; rezervat pentru montarea sistemelor de fişiere /opt Conţine aşa numitele „software storage objects” (SSO's) /tmp Director temporar /usr Conţine rutine utilizator /var Fişiere obiect nepartajate /home Directorul utilizatorilor sistemului
Unele dintre directoarele UNIX sunt mai „interesante” decât altele; existenţa şi conţinutul acestor directoare depinde de varianta de UNIX utilizată. Nu există practic reguli foarte stricte cu privire la localizarea fişierelor. Spre exemplu, pentru a găsi anumite fişiere sistem binare, putem căuta într-unul din directoarele: /bin, /usr/bin, /sbin, /usr/sbin şi chiar în /etc. Fişierele binare moştenite se pot găsi în /usr/ucb sau /usr/bsd. Alte fişiere executabile se pot găsi în alte locuri din structura de directoare. Şi legăturile simbolice trebuie considerate cu atenţie; directorul /home poate fi definit ca având propriul sistem de fişiere (montat separat) sau poate fi definit ca subdirector al rădăcinii. Pe serverele Solaris, spre exemplu, el este găsit ca subdirector al directorului /export; de regulă, acest director conţine directoarele home ale utilizatorilor existenţi în sistem.
Spaţiul dedicat stocărilor temporare este localizat, de regulă, în directorul /tmp. Acest director poate fi accesat pe majoritatea sistemelor ca /tmp, /usr/tmp sau /var/tmp. Două dintre cele trei referinţe vor fi directoare reale iar cea de-a treia va fi o legătură simbolică (symlink) către una din primele două. Varianta de UNIX utilizată va influenţa care dintre aceste referinţe este legătura simbolică.
Se recomandă totuşi ca aceste directoare să fie reconfigurate astfel încât o singură referinţă să fie un director real, iar celelalte două să fie legături simbolice către acest director. Mai mult, acest director se recomandă a fi montat separat. Deoarece utilizatorii pot scrie fişiere de dimensiuni mari în spaţiul temporar /tmp, montarea separată asigură protecţia directoarelor „/” şi „/usr” faţă de umplerea cu fişiere temporare. O regulă general valabilă în acest sens este aceea că utilizatorii nu trebuie să aibă drept de creare şi ştergere de fişiere în locaţiile „/” şi „/usr”.
Directorul /tmp trebuie să aibă permisiuni de acces 1777, nu 777. Dreptul de acces 777 permite ca orice utilizator să aibă drepturi depline în directorul /tmp, în timp ce 1777 setează aşa-numitul „sticky bit” ce înseamnă că directorul poate fi modificat sau şters doar de către proprietar.
Directorul /usr poate fi montat separat sau poate fi subdirector al lui „/”. Subdirectoarele sale pot fi: bin – fişiere binare include – fişiere pentru programare lib – biblioteci de programe local – pachete software locale, biblioteci, fişiere include, fişiere binare (de regulă /usr/local se montează separat pentru a nu umple directorul /usr). sbin – fişiere de sistem binare share – informaţie partajată, inclusiv pagini de manual. Directorul /var poate fi montat separat (ceea ce este recomandat) sau poate fi subdirector al lui „/” sau „/usr”. Subdirectoarele sale pot fi: adm – stocare fişiere log (Solaris) crash – diagnostic în situaţii de oprire bruscă log – stocare fişiere log (Solaris şi Linux Red Hat) mail – zona de stocare pentru poşta electronică spool – zona de spool pentru printare, utilitarul cron şi alte servicii yp – zona de stocare pentru fişierul de configurare NIS.
33.1KB
_______________________________________ :< 4 8 15 16 23 42 *execute* TOATA LUMEA ESTE INVITATA PE NOUL FORUM!
|
|