User:Otuur: Difference between revisions
From ICO wiki
Jump to navigationJump to search
Created page with '==Quest3== <source lang="bash"> #!/bin/bash #Autor: Olle Tuur, otuur@itcollege.ee #Versioon 0.3 #Exit väärtused #0 - skript lõpetas edukalt tegevuse #1 - kasutajal ei ole juur…' |
m →Quest3 |
||
Line 59: | Line 59: | ||
#Teavitame, mis kustutatakse | #Teavitame, mis kustutatakse | ||
echo "Kerneliga ${OLEMAS[$j]} seotud paketid, mis eemaldatakse:" | echo "Kerneliga ${OLEMAS[$j]} seotud paketid, mis eemaldatakse:" | ||
echo $(dpkg -l | grep ^ii | grep ${OLEMAS[$j | echo $(dpkg -l | grep ^ii | grep ${OLEMAS[$j]} | awk -F' ' '{ print $2 }') | ||
#Kustutame | #Kustutame | ||
apt-get remove $(dpkg -l | grep ${OLEMAS[$j | apt-get remove $(dpkg -l | grep ${OLEMAS[$j]} | awk -F' ' '{ print $2 }') | ||
done | done | ||
Revision as of 19:02, 10 May 2011
Quest3
#!/bin/bash
#Autor: Olle Tuur, otuur@itcollege.ee
#Versioon 0.3
#Exit väärtused
#0 - skript lõpetas edukalt tegevuse
#1 - kasutajal ei ole juurkasutaja õigusi
#2 - arvutis on liiga vähe kerneleid
#Kas kasutajal on vajalikud õigused?
if [ $UID -ne 0 ]; then
echo "$(basename $0) käivitamiseks, pead olema juurkasutaja!"
exit 1
fi
#Teatame, kasutajale, millega ta riskib
echo "See skript kustutab kõik vanad kernelid peale kahe kõige uuema."
echo "Jätka juhul, kui oled täiesti kindel, et ei vaja enam vanemaid kerneleid."
echo ""
echo "Kas soovid jätkata? (Jätkamiseks sisesta Y ja vajuta ENTER):"
read JATKA
#Kui kasutaja soovib jätkata
if [ $JATKA == "Y" ] || [ $JATKA == "y" ]; then
echo "Hetkel on kasutusel versioon $(uname -r | cut -d'-' -f1,2)"
echo ""
echo "Skript leidis sinu arvutist järgnevad kernelid:"
#Array, kus on kõik kernelid, mis leiti
OLEMAS=($(ls /boot | grep vmlinuz | cut -d'-' -f2,3))
#Array pikkus
PIKKUS=${#OLEMAS[@]}
#Trükime välja olemasolevad kernelid
for((i=0; i<${PIKKUS}; i++));
do
echo ${OLEMAS[$i]}
done
#Kas on olemas üle 2 kerneli?
if [ ${PIKKUS} -lt 3 ]; then
echo "Kahte kernelit ei saa alles jätta. Sul on ainult ${PIKKUS} kernel(it)."
echo "Skript lõpetab töö."
exit 2
fi
#Mitu võib kustutada
KUSTUTA=$[PIKKUS-2]
#Ütleme, mitu kernelit kustutatakse
echo "Kustutatakse ${KUSTUTA} kernel(it)"
for((j=0; j<${KUSTUTA}; j++));
do
#Teavitame, mis kustutatakse
echo "Kerneliga ${OLEMAS[$j]} seotud paketid, mis eemaldatakse:"
echo $(dpkg -l | grep ^ii | grep ${OLEMAS[$j]} | awk -F' ' '{ print $2 }')
#Kustutame
apt-get remove $(dpkg -l | grep ${OLEMAS[$j]} | awk -F' ' '{ print $2 }')
done
#Teavitame kasutajat töö lõpetamisest
echo "Tehtud!"
exit 0
fi