USO_Tema4
Click here to load reader
-
Upload
udrea-mihai-madalin -
Category
Documents
-
view
8 -
download
3
description
Transcript of USO_Tema4
Utilizarea Sistemelor de Operare: Tema 4Termen de predare: Luni, 13 Ianuarie 2013, ora 23:55
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
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
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
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
Lista schimbarilor
5