Loo skript eksam1.sh
, mis teeb järgmised sammud:
- Küsib sisendina uue kasutaja nime ja parooli. Loob kasutaja ja grupi sama nimega.
- Loob kausta
/home/eksam1/
ja sinna failieksam1.txt
, mille sisuks ondate
jawho
väljund. - Kontrollib
if
-lausena, kas fail on õigustega640
. Kui ei ole, parandab õigused ja väljastab hoiatuse. - Otsib
.bash_history
failist read, kus onsudo
, ja salvestab need faili/home/eksam1/sudo_kasud.txt
. - Loob funktsiooni
varunda
, mis teeb etteantud failist varukoopia kausta/home/eksam1/backup/
kuupäeva ja kellaajaga failinimega. Testib funktsioonisudo_käsud.txt
peal. - Lisab crontab’i kirje, mis varundab iga päev kell 20:05 faili
eksam1.txt
. - Kontrollib, kas teenus
ssh
töötab. Kui ei tööta, väljastabHoiatus: ssh ei tööta!
. - Skripti lõpus kuvab: “Pilet 1 lõpetatud edukalt.”
Loo skript eksam2.sh
, mis teeb järgmised sammud:
- Küsib kasutajalt kaks nime sisendina. Loob mõlemad kasutajad parooliga, mis on sama, mis kasutajanimi.
- Loob grupi
eksamigr2
ja lisab mõlemad kasutajad sinna. - Loob kataloogi
/home/eksam2/andmed
ja 5 faili (fail1.txt … fail5.txt
), mille sisuks onhostname
jauptime
väljund. - Muudab õigused nii, et: omanik saab lugeda ja kirjutada, grupp ainult lugeda, teised mitte midagi.
- Kontrollib
if
-lausena, kasfail3.txt
on õigustega640
. Kui pole, parandab õigused ja kirjutab logisseeksam2.log
. - Loob funktsiooni
varunda
, mis võtab argumendina kausta ja arhiveerib selletar.gz
formaati. Varundabandmed
kataloogi kausta/home/eksam2/backup/
. - Lisab crontab’i kirje, mis varundab
andmed
kataloogi iga päev kell 19:45. - Kontrollib, kas teenus
cron
töötab. Kui töötab, väljastab “cron aktiivne”, muul juhul hoiatuse. - Skripti lõpus kuvab: “Pilet 2 lõpetatud edukalt.”
Loo skript eksam3.sh
, mis teeb järgmised sammud:
- Küsib kasutajalt sisendina uue grupi nime. Loob grupi ja kasutaja
eksam3
ning lisab kasutaja loodud gruppi. - Loob kataloogi
/home/eksam3/projekt
ja sinna failiprojekt.txt
, mille sisuks on käsuls -l /etc
väljund. - Kontrollib
if
-lausena, kas fail eksisteerib ja on õigustega600
. Kui õigused ei klapi, parandab need ja väljastab hoiatuse ekraanile. - Loob 3 alamkataloogi (
kaust1 … kaust3
) ja igasse failiinfo.txt
, mille sisuks onps aux | head -5
väljund. - Otsib
.bash_history
failist read, kus onapt
, ja salvestab need faili/home/eksam3/projekt/apt_kasud.txt
. - Loob funktsiooni
varunda
, mis teeb varukoopia failist või kataloogist ja salvestab sellebackup
kausta kuupäeva ja kellaajaga. Testib funktsiooniprojekt.txt
peal. - Lisab crontab’i kirje, mis varundab
projekt
kataloogi igal pühapäeval kell 21:00. - Kontrollib teenuse
mysql
olekut ja väljastab vastava teate. - Skripti lõpus kuvab: “Pilet 3 lõpetatud edukalt.”
Loo skript eksam4.sh
, mis teeb järgmised sammud:
- Küsib sisendina kasutajanime ja parooli. Loob kasutaja ning lisab ta gruppi
eksamigr4
. Kui gruppi ei ole, loob selle. - Loob kataloogi
/home/eksam4/
ja sinna failikasutajad.txt
, mille sisuks on kõik kasutajad süsteemist (cut -d: -f1 /etc/passwd
). - Kontrollib
if
-lausena, kas failkasutajad.txt
on olemas ja õigustega640
. Kui mitte, parandab õigused ja lisab teate failieksam4.log
. - Loob kataloogi
logid
ja salvestab sinna käskudedf -h
jafree -m
väljundid eraldi failidesse. - Otsib
.bash_history
failist kõik read, kus onnano
, ja salvestab need failinano_kasud.txt
. - Loob funktsiooni
varunda
, mis pakib kokku kogu/home/eksam4/
kataloogi ja salvestab sellebackup
kataloogi. - Lisab crontab’i kirje, mis käivitab varunduse iga päev kell 18:30.
- Kontrollib teenuse
apache2
olekut ja väljastab teate. - Skripti lõpus kuvab: “Pilet 4 lõpetatud edukalt.”
Loo skript eksam5.sh
, mis teeb järgmised sammud:
- Küsib kasutajalt sisendina grupi nime. Loob grupi ja kasutaja
eksam5
, lisab kasutaja gruppi. - Loob kataloogi
/home/eksam5/projekt
ja 5 faili kujulfail1.txt … fail5.txt
, mille sisuks on käsuuptime
väljund. - Kontrollib
if
-lausena, kasfail5.txt
on õigustega600
. Kui mitte, parandab õigused ja väljastab teate ekraanile. - Loob alamkaustad
kaust1 … kaust3
, igasse failiinfo.txt
, mille sisuks on käsuid
väljund. - Otsib
.bash_history
failist kõik read, kus onchmod
, ja salvestab need failieksam5.log
. - Loob funktsiooni
varunda
, mis arhiveerib failid ja lisab arhiveeritud failile kuupäeva ning kellaaja. Testib funktsioonifail5.txt
peal. - Lisab crontab’i kirje, mis varundab
projekt
kataloogi iga päev kell 22:00. - Kontrollib teenuse
cron
olekut ja väljastab teate. - Skripti lõpus kuvab: “Pilet 5 lõpetatud edukalt.”
Loo skript eksam6.sh
, mis teeb järgmised sammud:
- Küsib sisendina uue kasutaja nime. Loob kasutaja parooliga
eksam6
ja lisab ta gruppieksamigr6
. - Loob kataloogi
/home/eksam6/andmed
ja sinna failioluline.log
, mille sisuks on käsudmesg | tail -20
väljund. - Kontrollib
if
-lausena, kas fail on olemas. Kui ei ole, kuvab hoiatuse ja lõpetab skripti. Kui on, kontrollib õigused ja vajadusel parandab need (640). - Loob kataloogi
raportid
ja sinna failiprotsessid.txt
, mille sisuks onps aux | head -10
. - Otsib
.bash_history
failist kõik read, kus onuseradd
, ja salvestab need failiuseradd_kasud.txt
. - Loob funktsiooni
varunda
, mis varundab antud failitee ja salvestab tulemusebackup
kausta. Testib sedaprotsessid.txt
peal. - Lisab crontab’i kirje, mis käivitab varunduse igal ööl kell 01:15.
- Kontrollib teenuse
ssh
olekut ja väljastab teate. - Skripti lõpus kuvab: “Pilet 6 lõpetatud edukalt.”
Loo skript eksam7.sh
, mis teeb järgmised sammud:
- Küsib kasutajalt sisendina kasutajanime ja grupi nime. Loob kasutaja ja grupi, parool sama, mis kasutajanimi, ning lisab kasutaja gruppi.
- Loob kataloogi
/home/eksam7/test
ja sinna 10 faili (test1.txt … test10.txt
), mille sisuks ondate
jauptime
väljund. - Kontrollib
if
-lausena, kas failtest7.txt
on õigustega600
. Kui mitte, parandab õigused ja kirjutab logieksam7.log
. - Loob kataloogi
teenused
ja failiteenused.txt
, mille sisuks on teenustessh
,cron
jamysql
olek. - Otsib
.bash_history
failist kõik read, kus onapt install
, ja salvestab need failipaigaldused.txt
. - Loob funktsiooni
varunda
, mis arhiveerib kõikteenused
kataloogi failid ja salvestab needbackup
kausta kuupäeva ja kellaajaga. - Lisab crontab’i kirje, mis varundab
test
kataloogi iga päev kell 20:30. - Skripti lõpus kuvab: “Pilet 7 lõpetatud edukalt.”
Loo skript eksam8.sh
, mis teeb järgmised sammud:
- Küsib sisendina kaks nime – esimene kasutajale, teine grupile. Loob mõlemad ja lisab kasutaja loodud gruppi.
- Loob kataloogi
/home/eksam8/logid
ja sinna failijooksvahetk.txt
, mille sisuks onuptime
jawho
. - Kontrollib
if
-lausena, kas failil on õigused640
. Kui mitte, parandab õigused ja väljastab ekraanile hoiatuse. - Loob alamkaustad
kaustA … kaustC
ja igasse failisisu.txt
, mille sisuks onls -l /home
. - Otsib
.bash_history
failist kõik read, kus onpasswd
, ja salvestab need failiparoolid.txt
. - Loob funktsiooni
varunda
, mis varundab faili või kausta ja lisab failinimele kuupäeva ning kellaaja. Testib funktsioonijooksvahetk.txt
peal. - Lisab crontab’i kirje, mis varundab
logid
kataloogi igal esmaspäeval kell 10:00. - Kontrollib teenuse
systemd-journald
olekut. Kui ei tööta, väljastab hoiatuse. - Skripti lõpus kuvab: “Pilet 8 lõpetatud edukalt.”
Loo skript eksam9.sh
, mis teeb järgmised sammud:
- Küsib sisendina uue kasutaja nime. Loob kasutaja parooliga sama, mis nimi, ja lisab ta gruppi
eksamigr9
. - Loob kataloogi
/home/eksam9/projekt
ja sinna failisüsteem.txt
, mille sisuks onuname -a
jalsb_release -a
. - Kontrollib
if
-lausena, kas fail eksisteerib ja on õigustega640
. Kui mitte, parandab õigused ja logib vea failieksam9.log
. - Loob 3 faili
teenus1.txt … teenus3.txt
, mille sisuks on teenustessh
,cron
jaapache2
olek. - Otsib
.bash_history
failist read, kus onrm
, ja salvestab need failikustutused.txt
. - Loob funktsiooni
varunda
, mis arhiveeribprojekt
kataloogi ja salvestab sellebackup
kausta kuupäeva-kellaajaga failina. - Lisab crontab’i kirje, mis varundab kogu
/home/eksam9
kataloogi igal ööl kell 02:00. - Skripti lõpus kuvab: “Pilet 9 lõpetatud edukalt.”
Loo skript eksam10.sh
, mis teeb järgmised sammud:
- Küsib sisendina kasutajanime ja grupi nime. Loob mõlemad ning lisab kasutaja gruppi.
- Loob kataloogi
/home/eksam10/andmed
ja sinna failidisk.txt
, mille sisuks on käsudf -h
väljund. - Kontrollib
if
-lausena, kas fail on õigustega600
. Kui mitte, parandab õigused ja kuvab ekraanile hoiatuse. - Loob 5 faili
proc1.txt … proc5.txt
, mille sisuks onps aux | head -n 5
. - Otsib
.bash_history
failist kõik read, kus onmkdir
, ja salvestab need failikataloogid.txt
. - Loob funktsiooni
varunda
, mis varundab etteantud faili ja lisab failinimele kuupäeva ning kellaaja. Testib funktsioonidisk.txt
peal. - Lisab crontab’i kirje, mis varundab
andmed
kataloogi iga päev kell 23:45. - Kontrollib teenuse
mysql
olekut ja väljastab teate. - Skripti lõpus kuvab: “Pilet 10 lõpetatud edukalt.”
Edu