Sistemul de operare utilizat pentru laboratorul de SO2 este Linux, distribuția Debian 7.0 (Wheezy). Configurația software în Linux este protejată printr-un sistem de freeze; la repornirea sistemului, orice actualizări sunt modificate.
Sistemele din laborator au configurate două mașini virtuale (o mașină virtuală Linux și o mașină virtuală Windows) care vor fi utilizate pe parcursul orelor de laborator.
Sistemul de freeze permite studenților să efectueze orice tip de modificări asupra configurației software (inclusiv configurări greșite) și asigură refacerea configurației inițiale în momentul repornirii sistemului. Astfel, în laborator, fiecare student beneficiază de condiții identice și, în același timp, sistemele sunt protejate de erori care le-ar putea face neutilizabile.
Pentru rezolvarea exercițiilor de Linux, sunt posibile două moduri de lucru:
ssh root@spook.local
ssh -l root spook.local
).get-lab XX
(se înlocuiește XX cu numărul laboratorului curent). Scheletul va fi descărcat și extras în directorul curent.Ctrl+Shift+T
în terminal pentru a deschide un tab nou și se realizează înca o conexiune SSH în acest tab.Netconsole Terminal
(icon-ul este pe Desktop) pentru a primi mesajele trimise de kernelul mașinii virtuale.Editare surse local (folosind un editor vizual cum ar fi gedit sau gVim); compilare prin SSH
/home/student
de pe mașina virtuală în directorul /home/student/spook-share/
al mașinii gazdă, folosind Mount spook-share
(icon-ul este pe Desktop; dupa rularea scriptului se confirmă montarea apăsând OK, apoi se așteaptă mesajul de succes sau de eroare; nu se va rula scriptul a doua oară inainte de a primi acele mesaje); alternativ, se poate executa într-un terminal comanda mount-spook-share
sau comanda de montare manuală (mount /home/student/spook-share
).ls /home/student/spook-share/
(ar trebui să se vada un fișier hello.txt
; prezența unui fișier not-mounted.txt
indică faptul că în acel director nu este montat nimic).get-lab XX
(se înlocuiește XX cu numărul laboratorului curent). Scheletul va fi descărcat și extras în directorul curent./home/student/spook-share/labXX-tasks/
.ssh root@spook.local
(sau forma echivalentă: ssh -l root spook.local
). Apoi se navighează în directorul primului exercițiu: cd labXX-tasks/…
Netconsole Terminal
(icon-ul este pe Desktop) pentru a primi mesajele trimise de kernelul mașinii virtuale.Se va lucra direct pe mașina virtuală de Windows.
Sfaturi utile:
x86 Checked Build Environment
. Compilând cu această consolă vor fi activate warning-urile, care de cele mai multe ori vă indică probleme serioase în cod.Visual Studio 2008 Command Prompt
.spook.local
sau chooch.local
nu sunt recunoscute:sudo /etc/init.d/avahi-daemon start
Sfaturi utile pentru editarea folosind vim:
:set paste
:set nopaste
~/.viminfo
)v
(pentru modul de selecție caracter-cu-caracter) sau tasta V
(pentru modul de selecție linie-cu-linie).d
(delete) pentru a șterge selecția și a o pune în buffer sau y
(yank) pentru a copia selecția în buffer. Se va reveni automat la modul comandă.p
(paste) pentru a insera conținutul buffer-ului după caracterul / linia curentă. Se poate folosi P
pentru a insera conținutul buffer-ului înainte de caracterul / linia curentă.yy
.dd
.10dd
mută 10 linii în buffer.p
(inserare inainte de linia curentă) sau P
(inserare după linia curentă).Ctrl+]
; pentru a reveni se apasă Ctrl+t
. Mai multe detalii aici.