Sve što trebate znati o radu sa diskovima
Uvod
Kako je rad sa diskovima i ostalim blok uređajima (USB stickovima, CD/DVD medijima) specifičan u odnosu na neke druge operacijske sustave, smatramo bitnim da se ova tema malo detaljnije razjasni na ovim stranicama. |
|
Sadržaj
Općenito
Za razliku od npr. Windows-a koji sve uređaje za pohranu podataka imenuje velikim slovom i dvotočkom (npr. C: D: E:....), a svaki od njih ima svoje zasebno stablo direktorija, Linux na drugi način pristupa radu sa diskovima.
Ako ste već pokušali ponešto raditi pod Linuxom zasigurno ste uvidjeli da ne postoje oznake diskova po principu "C: D: E:", nego postoji jedno jedino stablo direktorija koje vas vjerojatno pomalo i muči, jer ne znate što pripada određenom diskovnom uređaju.
Da bi mogli nastaviti dalje, moramo maknuti "veo tajni" upravo sa ovog područja. Tek kada bude jasno kako Linux "razumije" diskovne i ostale blok uređaje, moći ćemo sa njima i nešto konkretno raditi. No idemo redom.
Diskovi
Kada govorimo o diskovima, prvenstveno mislimo na tvrde diskove, CD/DVD medije, USB stickove (pa čak i zastarjele diskete koje danas rijetko tko koristi). Osnovna namjena ovih uređaja jest fizičko spremanje podataka (informacija u obliku programa, vaših tekstova, slika i ostaloga) na površinu nekog medija:
- Tvrdi diskovi i diskete podatke spremaju na površinu magnetnog medija
- CD/DVD diskovi podatke spremaju na optički čitljivu površinu (pomoću lasera prepoznavaju se udubine u mediju, te na taj način rapoznaje stanje 0 i 1)
- USB stickovi spremaju podatke u tzv. Flash memorijske čipove.
Svima njima je zajedničko što se podaci na njih spremaju u obliku datoteka i direktorija, preko nekog datotečnog sustava i što se ti podaci ne brišu nakon isključivanja uređaja iz izvora napajanja (da ne kažemo "iz struje").
U današnje vrijeme za svakodnevnu pohranu podataka u računalu koriste se isključivo tvrdi diskovi kapaciteta od 100 GB, pa sve do i preko 500 GB. Za izmjenu podataka između računala koriste se CD i DVD diskovi, te USB stickovi koji zbog toga spadaju u grupu izmjenljivih diskova, jer ih tijekom rada možemo izmjenjivati u CD/DVD čitaču, odnosno stavljati/vaditi iz USB sabirnice računala, već ovisno o tome koji nam podaci na njima trebaju.
Radi povećanja kapaciteta i pouzdanosti čuvanja podataka diskove možemo organizirati i u tzv. RAID polja gdje cijelu seriju diskova proglašavamo jednim logičkim uređajem. No vo već spada u naprednu domenu, pa se nećemo sa time ovdje baviti.
No, kako su to zapravo samo "sirovi" uređaji, prije spremanja podataka na njih, potrebno je poznavati još neke stvari oko njih.
Particije
Particije su vezane uz tvrde diskove, a zapravo si ih možemo predočiti kao područja na nekom tvrdom disku (fizičkom disku), koja se opet ponašaju kao disk (logički disk). Na taj način možemo postići privid kao da na jednom disku imamo više diskova ali manjeg kapaciteta. Zašto je to uopće potrebno?
- Ako želimo instalirati više od jednog operacijskog sustava. Nemoguće je instalirati više od jednog operacijskog sustava po jednog particiji
- Ako operacisjki sustav treba više od jedne particije za svoj uredan rad
- Ako želimo dodatno podijeliti disk za različite namjene
- Ako želimo na istom fizičkom disku koristiti više od jednog datotečnog sustava
Kod primjera Linuxa imamo bar dvije particije. Jednu za operacijski sustav i drugu za tzv. swap, odnosno privremenu radnu memoriju kada ponestane one u računalu (RAM-a).
Svaki tvrdi disk mora imati bar jednu particiju. Što konkretno znači da se baš svaki tvrdi disk mora particionirati, jer je to uvjet da se na njega postavi neki datotečni sustav.
Kod particija moramo tazlikovati Primarne i Extended particije. Razlika je u ovome:
- Primarna particija: Ona je nosioc datotečnog sustava. Zbog ograničenja u BIOS-u računala na jedan fizički tvrdi disk moguće je postavit najviše 4 primarne particije što bi značilo prilično ograničenje.
- Extended particija: Ona je nosioc (okvir) drugih primarnih particija. Na taj način moguće je na jedan tvrdi disk postaviti 3 primarne particije, jednu extended particiju koja u sebi opet ima npr. dvije primarne particije. Tako na kraju imamo 5 primarnih particija.
Datotečni sustavi
Da bi spremali svoje podatke u organiziranom obliku datoteka i direktorija na particiju je potrebno postaviti datotečni sustav. Za razliku od nekih drugih operacijskih sustava Linux ima popriličan broj raznih datotečnih sustava koje možemo koristiti prema vlastitim potrebama. Neki bitniji datotečni sustavi prikazani su ovdje:
- Ext3 (uskoro Ext4): Linuxov uobičajeni datotečni sustav
- RaiserFS: Linuxov, manje zastupljeni datotečni sustav
- NTFS: Datotečni sustav kojeg koriste MS Windows. Linux može raditi sa ovim datotečnim sustavom
- FAT: njega se nalazi na gotovo svim USB stickovima
- ISO 9660 i UDF: su datotečni sustavi CD/DVD diskova
Osim spremanja podataka, datotečni sustavi nude još neke opcije pri radu sa podacima kao što su linkovi i journaling.
Struktura Linuxovog stabla direktorija
Dolazimo do možda i najbitnijeg dijela cijele ove priče. Naime, na početku smo rekli da za razliku od MS Windows operacijskog sustava koji diskove označava po slovu (C: D: E:...), te svaki takav disk ima svoje stablo direktorija, Linux sve drži unutar jednog jedinog stabla direktorija koje počinje od korijenskog (root) direktorija čija je oznaka "/" (kosa crta).
Kako Linux baš sve podatke predstavlja kao datoteke (obične i specijalne) unutar tog stabla direktorija, tako se onda predstavljaju i diskovi, odnosno datotečni sustavi. Ovdje je dobro napomenuti da predstavljanje tvrdog diska kao uređaja i datotečnog sustava nisu jedna te ista stvar i Linux ih unutar svog Stabla prikazuje kao odvojene stvari.
Predstavljanje uređaja u Linux stablu
Na Linuxu postoji jedan poseban direktorij unutar Stabla koji se zove /dev. Unutar njega Linux postavlja specijalne datoteke za baš svaki uređaj koji je na računalo spojen, pa tako i za diskove. Naravno, diskovi ovdje imaju posebnu nomenklaturu koju je potrebno dobro razjasniti. Svi fizički tvrdi diskovi nazivaju se ovako:
/dev/sdx
Gdje je x slovo oznake tvrdog diska u računalu, onako kako su spojeni na kontroler i kako ih BIOS vidi, počevši od slova "a"
Primjeri:
/dev/sda /dev/sdb /dev/sdc ...
Također, u ovom direktoriju označeni su i logički diskovi, odnosno particije i to ovako:
/dev/sdxy
Gdje je x slovo oznake tvrdog diska u računalu, a y redni broj particije na x-ovom tvrdom disku počevši od broja jedan, uz napomenu da nije nužno da ti brojevi idu po redu.
Primjeri:
/dev/sda1 /dev/sda2 /dev/sda5
Predstavljanje datotečnog sustava u Linux stablu
Da bi se moglo pristupati podacima na nekom datotečnom sustavu koji se nalazi na disku (ili ljepše rečeno, da bi se pristupilo podacima na disku) potrebno je isti montirati na Linuxovo stablo direktorija preko tzv. točke montiranja. Na taj način se bilo koja disk particija (koja na sebi ima datotečni sustav) može namontirati (prikvačiti) na neki direktorij unutar Linuxovog stabla direktorija, te će se podaci iz te particije reprezentirati kao sadržaj direktorija koji predstavlja točku montiranja particije.
Za bolje objašnjenje slijedi primjer:
- Imamo disk particiju koja se u direktoriju uređaja zove /dev/sdb1,te je želimo namontirati u Linuxovo stablo kao direktorij /media/Disk
- Da bi to napravili moramo imati već kreirani direktorij koji se zove /media/Disk
- Nakon izvršavanja naredbe za montiranje diska na Linux stablo (mount naredba, bit će kasnije detaljno objašnjena), pristup toj particiji diska istovjetan je pristupu direktoriju /media/Disk, odnosno sve što radimo u tom direktoriju, zapravo radimo na montiranoj particiji tvrdog diska.
Dakle, umjesto da se diskovne particije nazivaju kao C:, D: itd. na Linuxu im pristupamo preko direktorija na kojeg su namontirane. Naravno, ovdje nam nitko ne diktira kako ćemo nazvati direktorije na koji želimo namontirati diskovne particije, te tako možemo davati i bolje opise onoga što se na tim diskovima nalazi.
Primjere sa slike desno napravit ćemo u poglavlju Montiranje/Odmontiranje datotečnog sustava
Praktični rad
U sljedećim poglavljima obraditi ćemo konkretne primjere u radu sa particijama i datotečnim sustavima.
Rad sa particijama
|
Vrlo često imamo potrebu podijeliti neki tvrdi disk na particije, odnosno učiniti nešto sa već particioniranim diskom, kao npr. ukloniti particije, dodati particije ili im promijeniti veličinu. Osim particioniranja diska potrebno je na određenu particiju postaviti i datotečni sustav, odnosno izvršiti formatiranje particije na određeni datotečni sustav.
Radi boljeg i lakšeg razumijevanja onoga što nad particijama radimo, primjere ćemo obraditi u popularnom Linuxovom programu za rad sa particijama - Gparted-om. Gparted je GUI alat koji se oslanja na rad dviju CLI naredbi:
- fdisk: - naredba kojom se vrše poslovi particioniranja diskova
- mkfs: - naredba koja služi za postavljanje datotečnog sustava na particiju. (Zapravo vrši formatiranje particije na neki datotečni sustav)
Predradnje i napomene
Kako se ovakvi poslovi sa diskovima mogu raditi isključivo na odmontiranim diskovima (onima koji ne pripadaju Linuxovom stablu) svakako je preporuka da se Linux podigne sa LiveCD-a koji ne ovisi o stanju niti jednog tvrdog diska.
U našim primjerima poslužili smo se sa Ubuntu 8.10 LiveCD distribucijom.
Često puta Gparted i neki manje bitni alati za rad sa diskovima nisu odmah instalirani u operacijski sustav, pa se tako i Gparted uredno nalazi na LiveCD-u, ali ga nema u Linux Ubuntu instalaciji na tvrdom disku, nego se ga instalira preko Synaptica ili ovako:
sudo apt-get install gparted
Particioniranje novog diska
Ugradili smo novi disk u računalo i želimo ga pripremiti za rad sa GNU/Linux operacijskim sustavom. Podižemo Linux preko LiveCD-a ili ako disk još nije u upotrebi (nije montiran na Linux stablo) radimo direktno iz Linuxa na tvrdom disku.
Gparted pozivamo: Sustav -> Administracija -> Partition Editor, zadajemo šifru superusera i Gparted se otvara.
Evo kako mora izgledati Gpartedov prozor kada odaberemo potpuno novi disk: