This is an old revision of the document!
Pentru a vedea configurația cron
a sistemului inspectăm configurațiile din fișierele/directoarele /etc/cron*
. Fișierele /etc/cron.d/*
și fișierul /etc/crontab
conțin configurații standard cron
la nivelul sistemului. Liniile de configurare urmează sintaxa crontab așa cum este exemplificată aici.
Pentru a vedea configurația pentru utilizatorul curent folosim comanda
crontab -l
Dacă suntem autentificați ca utilizator privilegiat, putem vizualiza configurația cron
pentru un utilizator dat putem folosi comanda
crontab -u <username> -l
unde <username>
este numele utilizatorului a cărui configurație dorim să o afișăm.
Pentru a afla job-urile cron active per utilizator putem inspecta, ca utilizator privilegiat, directorul de spooling /var/spool/cron/
sudo tree /var/spool/cron/
În subdirectorul /var/spool/cron/crontabs/
se găsesc job-urile cron active (marcate per utilizator).
Dacă dorim să avem un job care să ruleze periodic vom crea o intrare în crontab-ul utilizatorului curent.
Următorul exercițiu este didactic, ca să putem urmări comportamentul cron
.
Comanda de mai jos este folosită pentru a afișa numărul de procese și thread-uri curente la nivelul sistemului:
/bin/echo "Num processes: $(ps -e --no-header | wc -l), num threads: $(ps -eL --no-header | wc -l)"
Folosim calea completă către comanda echo
pentru că nu știm cum arată variabila PATH
în mediul în care rulează cron
.
Adăugați comanda de mai sus să ruleze la fiecare două minute prin alterarea crontab-ului utilizatorului student
. După adăugare urmăriți spool-ul cron în /var/spool/cron/crontabs/student
.
În urma funcționării corecte, veți primi un e-mail către utilizatorul student
cu output-ul comenzii.
mail
.
student
urmăriți indicațiile de aici.
Actualizați comanda cron
de mai sus astfel încât output-ul comenzii să nu mai fie livrat prin e-mail ci să fie adăugat într-un fișier dat. Output-ul să conțină și data la care a fost rulată comanda.
Instalați pachetul debsums
. Urmăriți ce configurări de cron sunt adăugate la instalarea pachetului.
dpkg -L <nume-pachet>
unde <nume-pachet>
este numele pachetului.
Instalați un client de Bittorrent care funcționează în linia de comandă, precum transmission-cli
sau bittorrent
sau bittornado
și porniți-l în background (folosind nohup
) ca să descarce un anumit conținut Bittorrent. Găsiți un fișier .torrrent
pe Internet și descărcați-l.
Apoi creați un script care să verifice dacă este pornit clientul Bittorrent pentru acel fișier .torrent
și dacă nu este pornit să-l repornească.
Plasați script-ul în crontab cu verificare la 10 minute.
Folosiți supervisord pentru a porni și gestiona clientul BitTorrent de mai sus.
Pentru a verifica funcționarea NTP (Network Time Protocol) o soluție este instalarea utilitarului ntpdate
. Dacă nu-l aveți instalat, instalați-l folosind comanda
sudo apt-get install ntpdate
Aveți două utilitare pe care le puteți folosi interschimbabil pentru actualizarea timpului sistemului: ntpdate
care primește ca argument un server NTP, și nptdate-debian
care folosește serverele configurate în /etc/default/ntpdate
(directiva NTPSERVERS
).
Instalați, dacă nu este instalat serverul NTP
prin intermediul pachetului ntp
. Serverul va porni automat și veți putea verifica faptul că ascultă conexiuni pe portul 123
UDP folosind comanda
sudo netstat -ulpn
Discutați cu 2-3 colegi și aflați adrese IP stațiilor pe care aceștia lucrează și adăugați configurare pentru serverul NTP în fișierul /etc/ntp.conf
. După un timp se va crea un mesh de comunicare între serverele NTP din sala de laborator.
ntpq -p ntpq -pn
Clientul de DHCP este reprezentat în Linux de comanda dhclient
. La o rulare a comenzii dhclient
este interogat serverul DHCP pentru transmiterea unei adrese.
Pentru a testa această funcționalitate, vom dezactiva configurația curentă și apoi vom face o nouă configurație.
Pentru dezactivare identificăm interfața activă prin rularea comenzii
ip a s
Interfața activă este cea care are adresa IP din rețeaua 172.16.4.0/24
.
Apoi dezactivăm configurația interfeței:
sudo ip a f dev <interface>
unde <interface>
este numele interfeței.
Apoi solicităm o nouă adresă IP pentru interfață folosind comanda
sudo dhclient <interface>
unde <interface>
este numele interfeței.
Putem urmări în /var/log/syslog
mesajele afișate de clientul DHCP
.
Dacă dorim să dăm release la configurație, putem folosi comanda
sudo dhclient -r <interace>
unde <interface>
este numele interfeței.
GSR Debian
, închideți-o și ștergeți-o (împreună cu fișierele aferente) din VirtualBox. Din /mnt/sda5/gsr/
în VirtualBox deschideți aplicația DHCP-Appliance.ova
. Aplicația are două mașini virtuale.
Întâi porniți mașina virtuală GSR Debian
care este serverul de DHCP și după ce a bootat, porniți mașina virtuală GSR Debian 2
care este clientul de DHCP.
Urmăriți adresele IP pe interfața eth2
a fiecărei mașini virtuale. Urmăriți în fișierul /etc/network/interface
configurația pentru interfața eth2
a fiecărei mașini virtuale.
Urmăriți configurația serverului de DHCP în /etc/default/dhcp
și în /etc/dhcp/dhcpd.conf
. Verificați că serverul este pornit și ascultă conexiuni pe portul 68
UDP.
Urmăriți în fișierele de tip jurnal de pe fiecare sistem (/var/log/syslog
) mesaje afișate de clientul și serverul DHCP.
Folosiți, pe client, comenzile
sudo ifdown eth2 sudo ifup eth2
pentru dezactivarea și reactivarea interfeței și, deci pentru reinterogarea serverului DHCP, care duce la conduce la generarea de noi mesaje de jurnalizare.