Differences

This shows you the differences between two versions of the page.

Link to this comparison view

uso:teme:tema-2 [2022/12/17 18:32]
rares.constantin02 [Informații generale]
uso:teme:tema-2 [2023/11/14 16:46] (current)
rares.constantin02 [Task 07 (20p)]
Line 24: Line 24:
  
 <note important>​ <note important>​
-Deadline: **20 Decembrie ​2022 ora 23:55**\\ +Deadline: **Decembrie ​2023 ora 23:55**\\ 
-Timp de lucru: **14 zile**\\+Timp de lucru: **21 zile**\\
 Punctaj: **1.0 punct** din nota finală\\ Punctaj: **1.0 punct** din nota finală\\
 </​note>​ </​note>​
Line 31: Line 31:
 <​note>​ <​note>​
 Actualizări enunț:\\ Actualizări enunț:\\
- +  ​* **Task 4** Configurarea identității trebuie sa aiba scop local
-  ​* **Actualizare task 6 - fără folosirea unui alias sau a unei variabile!** +
-  * Actualizați și checker-ul folosind "sudo uso update"​ și "sudo uso start 2".+
 </​note>​ </​note>​
  
 <​note>​ <​note>​
 Actualizări checker:\\ Actualizări checker:\\
-  * Ultimul update**Ora 18:3017 Decembrie 2022** +  * 19:0012 Noiembrie 2023 
-  * <color green>**Rulati ​''​sudo uso update''​**</​color>​+  * <color green>**Rulați ​''​sudo uso update''​**</​color>​
 </​note>​ </​note>​
 ===== Cunoștințe evaluate ===== ===== Cunoștințe evaluate =====
Line 129: Line 127:
  
  
-==== Task 01 (15p) ====+==== Task 01 (10p) ====
  
-=== Verificarea conexiunii la Internet pe mașina virtuală ===+=== Verificarea conexiunii la Internet pe mașina virtuală ​[4p] ===
  
 Găsiți prin orice comandă interfața disponibilă si verificați că aveți IP pe interfața găsită. Găsiți prin orice comandă interfața disponibilă si verificați că aveți IP pe interfața găsită.
 Salvați acest output într-un fișier numit: "/​home/​student/​tema2/​task1/​conexiune_internet.txt"​ Salvați acest output într-un fișier numit: "/​home/​student/​tema2/​task1/​conexiune_internet.txt"​
  
-=== Verificați conectivitatea către un IP din Internet=== +=== Verificați conectivitatea către un IP din Internet ​[3p] === 
  
 Trimiteți exact 8 pachete la un interval de 4 secunde fiecare către serverul DNS Google 8.8.8.8 folosind utilitarul ping. Trimiteți exact 8 pachete la un interval de 4 secunde fiecare către serverul DNS Google 8.8.8.8 folosind utilitarul ping.
 Salvați outputul într-un fișier numit: "/​home/​student/​tema2/​task1/​conexiune_server.txt"​ Salvați outputul într-un fișier numit: "/​home/​student/​tema2/​task1/​conexiune_server.txt"​
  
-=== Verificați conectivitatea către un site=== +=== Verificați conectivitatea către un site [3p] === 
  
 Trimiteți exact 5 pachete la un interval de 2 secunde fiecare la adresa www.google.com folosind utilitarul ping. Trimiteți exact 5 pachete la un interval de 2 secunde fiecare la adresa www.google.com folosind utilitarul ping.
Line 147: Line 145:
  
  
-==== Task 02 (10p) ====+==== Task 02 (5p) ====
  
  
Line 204: Line 202:
   * un fork propriu al proiectului Unikraft, care apoi va fi clonat în mașina de teme [4p]   * un fork propriu al proiectului Unikraft, care apoi va fi clonat în mașina de teme [4p]
   * configurarea git, pe mașina de teme, adăugând o identitate (nume și email) [4p]   * configurarea git, pe mașina de teme, adăugând o identitate (nume și email) [4p]
-  * crearea unui branch nou, pe fork-ul clonat; numele ​brach-ului trebuie să fie același cu username-ul de pe GitHub [4p]+  * crearea unui branch nou, pe fork-ul clonat; numele ​branch-ului trebuie să fie același cu username-ul de pe GitHub [4p]
   * un commit semnat, care să aducă o modificare repository-ului (ex. creați un fișier gol) [4p]   * un commit semnat, care să aducă o modificare repository-ului (ex. creați un fișier gol) [4p]
  
 <note important>​ <note important>​
 +  * configurarea identității trebuie sa aiba scop **local**
   * repository-ul clonat se va afla in folderul /​home/​student/​tema2/​task4/​   * repository-ul clonat se va afla in folderul /​home/​student/​tema2/​task4/​
   * cautati informatii despre ''​git config''​ si ''​Sign Off''​ pentru a realiza task-urile   * cautati informatii despre ''​git config''​ si ''​Sign Off''​ pentru a realiza task-urile
Line 214: Line 213:
 <note tip> <note tip>
   * Fisierul ''​CONTRIBUTING.md''​ din Unikraft contine informatii utile, care va pot ajuta in rezolvarea cerintelor.   * Fisierul ''​CONTRIBUTING.md''​ din Unikraft contine informatii utile, care va pot ajuta in rezolvarea cerintelor.
 +</​note>​
 +
 +<​note>​
 +Aveți în vedere și să marcați proiectul ca fiind **starred**.
 </​note>​ </​note>​
  
Line 260: Line 263:
  
 Creați un fișier ''/​home/​student/​tema2/​task7.sh''​ care să conțină comenzile ce realizează următoarele:​ Creați un fișier ''/​home/​student/​tema2/​task7.sh''​ care să conțină comenzile ce realizează următoarele:​
-    * Trimite o cerere HTTP de tip GET la ''​$TASK_API/​uso/​part1/​$SECRET_KEY''​. ​Aceasta vă va întoarce ​un token cu o durată ​de viață ​de 3 minute+    * Trimite o cerere HTTP de tip GET la ''​141.85.232.81:​5000/​uso/​part1/​$USERNAME''​. ​Prin USERNAME vom simula modul de acces utilizand ​un username pe un server. USERNAME va trebui setat de voi ca variabila ​de mediu la username-ul personal de Teams (e.g. marcel.gigel02) pentru ca checker-ul sa functioneze. Token-ul primit prin aceasta cerere va fi disponibil un minut, dupa aceea va fi resetat si username-ul va fi sters
-    * Trimite o cerere HTTP de tip POST la ''​$TASK_API/uso/part2/''​ cu un body de tip JSON de forma ''​{"​secret_key":​ $SECRET_KEY, ​"​token":​ <​token_primit>​}''​.+    * Trimite o cerere HTTP de tip POST la ''​141.85.232.81:​5000/​uso/​part2''​ cu un body de tip JSON de forma ''​{"​token":​ <​token_primit>​}''​.
  
 La final, dacă se rulează comenzile din fișier, ar trebui să fie afișat doar rezultatul primit după a doua cerere, fără ''​newline''​ (''​\n''​). La final, dacă se rulează comenzile din fișier, ar trebui să fie afișat doar rezultatul primit după a doua cerere, fără ''​newline''​ (''​\n''​).
  
 [[https://​linuxhint.com/​http-get-vs-post-methods/​|GET vs POST methods]] [[https://​linuxhint.com/​http-get-vs-post-methods/​|GET vs POST methods]]
 +
 +==== Task 08 (10p) ====
 +
 +[2p] 1. Obțineți repository-ul următor la voi pe calculator: https://​github.com/​andreistan26/​server-data și salvați-l la adresa ''/​home/​student/​tema2/​task8'',​ rezultând directorul ''/​home/​student/​tema2/​task8/​server-data''​. Apoi copiați fisierul **connection-logs.txt** in directorul ''/​home/​student/​tema2/​task8''​.
 +
 +[4p] 2. Dupa ce ați rezolvat pasul anterior veți avea in director fișierul **connection-logs.txt**,​ care conține in formatul **<​user-id>​ <​inactive/​active>​ <​duration>​** date despre conexiunile utilizatorilor la un serviciu. Afișați conexiunile **inactive** in formatul **<​user-id>​ <​duration>​** si pe ultima linie **Total: <numar conexiuni inactive>​** in fișierul ​ **inactive_connections_out.txt**. Salvați oneliner-ul in fișierul **inactive_connections.sh**.
 +
 +[4p] 3. Gasiti cei 8 utilizatori care au cea mai lunga conexiune activă. Afișarea se va face in formatul **<​index>​. <​user-id>​ <​duration>​** si salvată in fișierul **longest_connections_out.txt**. Salvați oneliner-ul in fișierul **longest_connections.sh**.
  
 <note important>​ <note important>​
-**Dacă nu se află nimic în cele două variabile de mediu, restartațmașina virtuală.**\\  +  ​toate căile din fișierele ​**"​.sh"​** trebuie sa fie căi absolute 
-Aveți grijă atunci când dați check/​submittoken-ul dat de GET se va reseta odată la minute.+  * fișierele **".sh"** trebuie sa conțină o singura linienu este nevoie ​de ''#​!/​bin/​bash''​ 
 +  * taskurile 2 si se vor rezolva exclusiv in directorul ''/​home/​student/​tema2/​task8/''​
 </​note>​ </​note>​
 +
  
 ==== Task obligatoriu pentru toate temele la final ==== ==== Task obligatoriu pentru toate temele la final ====
uso/teme/tema-2.1671294720.txt.gz · Last modified: 2022/12/17 18:32 by rares.constantin02
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0