USO_Tema4

6

Click here to load reader

description

utilizarea sistemelor de operare

Transcript of USO_Tema4

Page 1: USO_Tema4

Utilizarea Sistemelor de Operare: Tema 4Termen de predare: Luni, 13 Ianuarie 2013, ora 23:55

Page 2: USO_Tema4

Utilizarea Sistemelor de Operare - Tema 4

Descriere

Tema consta ın realizarea unui set de task-uri asupra unui sistem de operare Linux, gata instalat ıntr-o

mas, ina virtuala.

Pentru predarea temei sunt necesare:

• conexiunea la internet

Termen de predare:

• Timpul de lucru efectiv este de 7 de zile

• Uploadarea codului: 13 ianuarie 2013, ora 23:55

• Uploadarea se face pe formularul de la adresa urmatoare:

https://docs.google.com/forms/d/1u_ctor_1_MQJAtDu1Fl9ZsOBEI5WrXj1JdnJwJdpdFU/viewform

• adaugarea de detalii pentru o cale specificata

Deadline-ul temei este hard. NU se accepta ıntarzieri dupa 12 ianuarie, ora 23:55.

Atent, ie!

Chiar s, i dupa ce at, i predat codul, NU s,terget, i arhiva cu mas, ina virtuala pana nu va aflat, i nota! Daca vor

exista probleme ın corectarea temei, fara arhiva NU se pot face contestat, ii sau rezolva eventualele probleme

aparute.

Pagina 1/ 5

Page 3: USO_Tema4

Utilizarea Sistemelor de Operare - Tema 4

Testare

Testarea temei se va face DOAR autentificat ca utilizator root, folosind programul instalat uso. Programul

uso implementeaza testele pentru toate task-urile din aceasta tema. Acesta poate fi executat ın orice moment

pentru a verifica daca au fost rezolvate corect task-urile.

Versiunea programului check este afis,ata pe prima linie a output-ului.

Versiunea curenta este: v14. Codename: I solemnly swear that I’m up to no good.

In cazul ın care testele vor fi actualizate, modificarile ajung ın mod automat pe mas, inile virtuale. Comanda

uso update va descarca ultima versiune a programului uso folosit pentru testarea temei. Pentru a actualiza

manual checker-ul, putet, i apela uso update ca utilizator root.

Testarea finala a temei se realizeaza prin intermediul utilitarului automat de verificare a temelor. Tot ce

trebuie voi sa facet, i este sa rulat, i uso submit s, i sa ıncarcat, i codul ın formularul descris ın pagina anterioara.

Pentru a us,ura testarea, recomandam:

• Setarile mas, inii virtuale NU ar trebui modificate (nici macar o actualizare a VMWare Tools). Daca

totus, i considerat, i ca este necesara o modificare ıntrebat, i ıntai pe forum-ul temei daca este acceptata.

• Mas, ina virtuala sa porneasca iar sistemul de operare sa se ıncarce complet fara interact, iune din

exterior

• Parola de root sa ramana cea implicita (”student”)

ATENT, IE: Mas, ina virtuala vine implicit cu aceste condit, ii ındeplinite s, i nici un task nu va afecta vreuna

din ele. Va rugam sa NU alterat, i vreuna din aceste componente deoarece riscat, i sa primit, i 0 puncte pe

tema.

Notare

Nota pe ıntreaga tema este data de punctajul acumulat pe toate task-urile, punctaj afis,at de catre programul

check la execut, ia fara nici un parametru.

Se pot lua maxim 100 de puncte pe ıntreaga tema. Acest punctaj este echivalent cu 0.5 puncte din nota

finala.

Nu este obligatorie rezolvarea tuturor task-urilor. Task-urile pot fi rezolvate ın orice ordine, mai put, in ın

situat, ia ın care un task depinde de rezolvarea unui alt task.

Pagina 2/ 5

Page 4: USO_Tema4

Utilizarea Sistemelor de Operare - Tema 4

Task 1 (100p)

Backup

De multe ori se ıntampla sa ne dorim sa pastram o varianta a datelor sub forma unui backup. Aceasta tema

consta ın implementarea unui astfel de sistem de backup, care este defapt un wrapper peste tar.

Funct, ionalitatea de baza a acestui sistem de backup consta ın:

• crearea de arhive backup pentru o cale specificata

• restaurarea backupului

• afis,area de detalii privind un backup

Scriptul se va numi mybackup.sh.

Un BACKUP consta ıntr-o arhiva care cont, ine fis, ierele al caror backup ıl vrei, dar s, i un fis, ier numit

BACKUP README care cont, ine informat, ii privind arhiva. Cand se face restore, fis, ierul README -

BACKUP nu trebuie sa apara.

Structura BACKUP README:

COMMENT: $COMMENT

AUTHOR: $AUTHOR

DATE: $DATE

TIME: $TIME

PATH: $INITIAL PATH

Exemplu BACKUP README:

COMMENT: USO Homework

AUTHOR: student

DATE: 06-01-2014

TIME: 11:55

PATH: /home/student

Mai exact, trebuie sa construies,ti un script mybackup.sh aflat ın /home/student care sa accepte urmatoarele

moduri de apelare:

• mybackup.sh help - afis,eaza un mesaj de help cu argumentele acceptate

• mybackup.sh create

– fara alte argument - se creeaza o arhiva a folderului curent s, i se plaseaza ın folderul ./BACKUP.

Fis, ierul de readme nu va cont, ine sect, iunea COMMENT, iar AUTHOR va fi user-ul care ruleaza

comanda.

– --no-readme - ın arhiva nu se mai pune fis, ierul de readme.

– --comment COMMENT - readme va cont, ine sect, iunea COMMENT.

– --author AUTHOR - readme va cont, ine sect, iunea AUTHOR, iar numele backupului se va modifica

corespunzator.

• mybackup.sh restore path/to/backup - face restore backup-ului specificat ın folderul curent.

Pagina 3/ 5

Page 5: USO_Tema4

Utilizarea Sistemelor de Operare - Tema 4

– --path PATH - fis, ierele dezarhivate sunt plasate ın PATH.

– --remove-backup - backup-ul este s,ters dupa restore.

• mybackup.sh info path/to/backup - afis,eaza informat, iile din BACKUP README

– --list - se afis,eaza o lista a fis, ierelor cont, inute de backup, cate un fisier pe linie. In acest caz

informatiile din BACKUP README nu se mai afiseaza.

Backup-ul va avea numele de forma user-dd-mm-yyyy-hourmin. Exemplu: alex-05-01-2014-1631.tar.gz.

Backup-ul creat nu trebuie sa contina folderul BACKUP si mybackup.sh.

Mesajul de USAGE este urmatorul:

mybackup.sh USAGE:

help - prints this message and exits

create [--no-readme] [--comment COMMENT] [--author AUTHOR] - creates a backup

restore [--path PATH] [--remove-backup] - restores a backup to the current folder

or to a specified path

info [--list] - displays information about a backup based on the readme generated

Indentarea mesajului de USAGE se face cu tab.

In caz de eroare de apel trebuie afis,at mesaj corespunzator s, i ıntors cod de eroare 1.

Sintaxa mesajelor este script: mesaj argumente.

Atent, ie Tot cont, inutul scriptului trebuie sa se afle ıntr-un singur fis, ier. Nu folosit, i fis, iere auxiliare pentru

ca pot duce la pierderea punctajului pe anumite teste!

./mybackup.sh info BACKUP/alex-09-01-2014-1803.tar.gz --list

BACKUP_README

check

director/

director/f3

f1

f2

Comenzile testate:

Test 1 - ./mybackup.sh help

Test 2 - ./mybackup.sh create

Test 3 - ./mybackup.sh create --no-readme

Test 4 - ./mybackup.sh create --comment $COMMENT

Test 5 - ./mybackup.sh create --comment $COMMENT --author $AUTHOR

Test 6 - ./mybackup.sh info $BACKUP_PATH

Test 7 - ./mybackup.sh info $BACKUP_PATH --list

Test 8 - ./mybackup.sh restore $BACKUP_PATH

Test 9 - ./mybackup.sh restore $BACKUP_PATH --path $RESTORE_PATH --remove-backup

Pagina 4/ 5

Page 6: USO_Tema4

Lista schimbarilor

5