Você está na página 1de 3

Elektrotehnički fakultet

Banja Luka

OPERATIVNI SISTEMI 1
Laboratorijska vježba 6
- Arhiviranje, hard i simbolički linkovi-

Zadaci i uputstva za rad

[1] Kreiranje naloga sa kojim radim i učlanjivanje korisnika u grupe.


Prijavite se na sistem kao korisnik student (login: student , password: student).
Kreirajte novi korisnički nalog komandom adduser. Parametri za novi nalog su sljedeći:
• username: korisnik, password: 123456, puno ime: Probni korisnik
• home direktorijum: /home/korisnik, shell: /bin/bash
Odjavite se sa sistema i prijavite kao regularan korisnik (login: korisnik, password: 123456). Vježbu na dalje radite
pod ovim nalogom

[2] tar: kreiranje i uslovno/bezuslovno ažuriranje arhive.


Na home direktorijumu treba napraviti tri datoteke (a.a, b.b i c.c) i upisati neki tekst u njih. Zatim se ove tri
datoteke arhiviraju u simulacionu datoteku proba.tar. Nakon kreiranja arhive, izlistati sadržaj arhive pomoću tar tvf
komande. Zatim se sa postojećom arhivom demonstrira komanda za ažuriranje u i komanda za dodavanje na kraj r.
Najprije će se isprobati –u (update) komanda u dva slučaja: u prvom slučaju ukoliko su sve datoteke (a.a, b.b i c.c)
nepromijenjene, a u drugom slučaju ukoliko se promijeni sadržaj samo jedne datoteke, na primjer a.a. Potom će se
isprobati r komanda, dodavanjem nepromijenjene datoteke b.b komandom –r (append). Obratititi pažnju gdje se u
arhivi nalaze nove datoteke!
Na svom home direktorijumu pripremite tri datoteke koje ćete arhivirati:
cd
ls -l / >a.a
cp /etc/passwd b.b
cp /etc/hosts c.c

Kreirajte arhivu i u nju dodajte te tri datoteke: tar cvf proba.tar a.a b.b c.c
Izlistajte sadržaj arhive: tar tvf proba.tar
Pokušajte da ažurirate arhivu sa nepromenjenom datotekom: tar uvf proba.tar a.a
Izlistajte sadržaj arhive: tar tvf proba.tar
Da li je transfer izvršen, tj. da li je u arhivi nešto promenjeno?
Promijenite sadržaj datoteke a.a komandom: cp /etc/fstab a.a
Ažurirajte arhivu sa datotekom sa promenjenim sadržajem: tar uvf proba.tar a.a
Izlistajte sadržaj arhive: tar tvf proba.tar
Odredite gdje se u arhivi nalazi datoteka a.a sa novim sadržajem. Da li je stara datoteka a.a izbrisana?
Bezuslovno dodajte identičnu datoteku u arhivu: tar rvf proba.tar b.b
Izlistajte sadržaj arhive: tar tvf proba.tar
Obrišite datoteku c.c sa tekućeg direktorijuma: rm c.c
Izvucite datoteku c.c iz arhive: tar xvf proba.tar c.c
Obrišite datoteke: rm a.a b.b c.c proba.tar
Zaključak:
• datoteka se uvijek dodaje isključivo na kraj arhive
• komanda -u dodaje datoteke pod uslovom da su izmjenjene,
• komanda -r uvek dodaje datoteke, bez obzira na to da li su izmjenjene ili ne.
[3] tar: ekstrakcija datoteka iz arhive
Prilikom ekstrakcije, ime datoteke mora da se navede onako kako je navedeno u arhivi, uključujući i putanju
ukoliko je ima. Datoteka se zove a, ali se u arhivi nalazi sa putanjom svoje roditeljske grane dir1. Primjer ilustruje
bezuspješan pokušaj ekstrakcije datoteke a po imenu, i uspješan pokušaj ekstrakcije iste datoteke sa navođenjem
putanje pre imena.
Pripremite datoteke:
cd
mkdir dir1
cp /etc/fstab >dir1/a.a
cp /etc/passwd >dir1/b.b
cp /etc/hosts >dir1/c.c
Kreirajte arhivu i u nju dodajte te tri datoteke: tar cvf proba1.tar dir1/a dir1/b dir1/c
Uklonite originalne datoteka: rm dir1/*
Probajte da izvučete datoteku a iz arive bez navođenja putanje: tar xvf proba1.tar a
Jeste li uspjeli u tome? Izlistajte sadžaj direktorijuma dir1: ls –l dir1
Probajte sad to isto, ali navedite putanju: tar xvf proba1.tar dir1/a
Jeste li uspjeli u tome? Izlistajte sadžaj direktorijuma dir1: ls –l dir1
Obrišite direktorijum dir1: rm -rf dir1

[4] tar: arhiviranje cijelog direktorijuma


Za arhiviranje cijelog direktorijuma dovoljno je navesti ime direktorijuma u listi datoteka tar komande, a tar će
arhivirati čitavo stablo po dubini sa svim pripadajućim datotekama. Za potrebe ovog primera potrebno je na home
direktorijumu napraviti direktorijum dir1 i u njemu tri datoteke (a.a, b.b i c.c). Arhivirati cijeli direktorijum dir1 u
simulacionu datoteku arh1.tar. Obrisati dir1 sa home direktorijuma, a potom raspakovati arhivu arh1. Kreirati dir2
na home direktorijumu, preći na dir2 i u njemu raspakovati arhivu arh1. Pogledati gdje su datoteke raspakovane.
Priprema direktorijuma i datoteka:
cd
mkdir dir1
cp /etc/fstab dir1/a.a
cp /etc/passwd dir1/b.b
cp /etc/hosts dir1/c.c
Arhiviranje cijelog direktorijuma: tar cvf arh1 dir1
Izlistajte sadržaj arhive: tar tvf arh1
Obrišite original: rm dir1/*
Ekstrakcija cijelog direktorijuma: tar xvf arh1 dir1
Ekstrakcija cijelog direktorijuma na drugo mesto (dir2):
mk dir2
cd dir2
tar xvf arh1 dir1
Pregledajte kako su raspakovane datoteke:
cd
ls -l dir1
ls -l dir2
ls -l dir2/dir1
Obrišite direktorijume dir1 i dir2: rm -rf dir1 dir2

Zaključak:
• prilikom ekstrakcije arhive treba obratiti pažnju na tekuću poziciju, odnosno tekući direktorijum.
• direktorijumi koje arhiva sadrži biće kreirani u njemu, ukoliko tamo već ne postoje
• u novonastale (i/ili postojeće) direktorijume biće raspakovane odgovarajuće datoteke
[5] tar: arhiviranje i gzip kompresija
Za potrebe ovog primjera na home direktorijumu treba napraviti tri datoteke (a.a, b.b i c.c). Arhivirati ih u
simulacionu datoteku proba.tar bez kompresije, potom u simulacionu datoteku proba.tar.Z uz korišćenje programa
compress, i na kraju u simulacionu datoteku proba.tar.gz uz korišćenje programa gzip. Uporediti veličine
novonastalih arhiva. Obrisati datoteke a.a, b.b i c.c i raspakovati jednu kompresovanu arhivu.
Priprema datoteka:
cd
cp /etc/fstab a.a
cp /etc/passwd b.b
cp /etc/hosts c.c
Kreiranje arhiva bez kompresije: tar cf proba.tar a.a b.b c.c
Kreiranje arhiva sa compress programom: tar cfZ proba.tar.Z a.a b.b c.c
Kreiranje arhiva sa gzip programom: tar cfz proba.tar.gz a.a b.b c.c
Izlistajte sadržaj direktorijuma i uporedite veličine arhiva: ls -l
Obrišite polazne datoteke: rm a.a b.b c.c
Ekstrakcija datoteka iz komprimovane arhive:
• Pogrešno: tar xvf proba.tar.gz
• Ispravno: tar xvfz proba.tar.gz
Obrišite datoteke i arhive: rm a.a b.b c.c proba.*
Zaključak:
• kompresija smanjuje veličinu arhive, gzip je najbolji
• prilikom ekstrakcije datoteka iz arhive mora da se navede tip kompresije (Z – compress, z – gzip) koji je korišćen
za kreiranje arhive. Ukoliko se to ne navede, tar smatra arhivu standardnom (nekompresovanom) i vraća poruku o
grešci

[6] Hard linkovi


Postavite umask na 027: umask 027
Napravićete hard link datoteke /etc/passwd u svom home direktorijumu.
Pogledajte broj linkova originalne datoteke: ls -l /etc/passwd.

Napravite hard link: cp -l /etc/passwd hard_passwd


Pogledajte i-nodove za obe datoteke: ls -l /etc/passwd hard_passwd
Uporedite, vlasnika, grupu i prava pristupa hard linka i originalne datoteke.
Pogledajte broj linkova datoteke i linka: ls -l /etc/passwd hard_passwd
Obrišite link: rm hard_passwd
Pogledajte broj linkova originala nakon brisanja linka: ls -l /etc/passwd

[7] Simbolički linkovi


Napravićete simbolički link na datoteku /etc/passwd u svom home direktorijumu.
Pogledajte broj linkova originalne datoteke: ls -l /etc/passwd
Napravite simbolički link : cp -s /etc/passwd sym_passwd
Pogledajte i-nodove za obe datoteke: ls -l /etc/passwd sym_passwd
Obratite pažnju na deskriptor simboličkog linka lrwxrwxrwx. Da li je umask “ukinuo” neka prava?
Uporedite, vlasnika, grupu i prava pristupa hard linka i originalne datoteke.
Pogledajte broj linkova datoteke i linka: ls -l /etc/passwd sym_passwd

[8] Kopiranje sa flegom -d


Probajte kopiranje sa -d flegom: cp -d sym_passwd d_passwd
Probajte kopiranje bez -d flega: cp sym_passwd no_d_passwd
Pogledajte kontekst za originalnu datoteku, simboličku link i dvije kopije koje ste dobili i utvrdite šta se dešava kada
kopirate simbolički link sa -d flegom, a šta se dobija kada kopirate link bez -d flega.
ls -l /etc/passwd sym_passwd d_passwd no_d_passwd
Obrišite datoteke i linkove koje ste napravili: rm sym_passwd file_d file_no_d

Você também pode gostar