User:Metamm: Difference between revisions

From ICO wiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 2: Line 2:


<source lang="bash">
<source lang="bash">
#!/bin/bash
#!/bin/bash
#Autor: Meelis Tamm, A21, metamm@itcollege.ee
#Autor: Meelis Tamm, A21, metamm@itcollege.ee
#Skript eemaldab vanad kerneli kujutisfailid, v.a. kaks viimast versiooni
#Skript eemaldab vanad kerneli kujutisfailid, v.a. kaks viimast versiooni
#Lisaks kujutisfailidele, eemaldatakse ka vastavad kerneli versioonid grub nimekirjast (seda teed paketihaldur automaagiliselt)
#Lisaks kujutisfailidele, eemaldatakse ka vastavad kerneli versioonid grub nimekirjast (seda teed paketihaldur automaagiliselt)
 
PAKETIHALDUR=$1
PAKETIHALDUR=$1
 
#Kontrollime, kas kasutaja omab juurkasutaja õigusi
#Kontrollime, kas kasutaja omab juurkasutaja õigusi
 
if [ $UID -ne 0 ]; then
if [ $UID -ne 0 ]; then
 
echo "Käivita skript $(basename $0) juurkasutaja õigustes"
echo "Käivita skript $(basename $0) juurkasutaja õigustes"
exit 1
exit 1
 
#Kontrollime, kas skript käivitati õige arvu argumentidega
#Kontrollime, kas skript käivitati õige arvu argumentidega
 
elif [ $# -ne 1  ]; then
elif [ $# -ne 1  ]; then
 
echo -e "Käivita skript ./$(basename $0) <paketihaldur> \n[N: rpm või dpkg]"
echo -e "Käivita skript ./$(basename $0) <paketihaldur> \n[N: rpm või dpkg]"
exit 1
exit 1
 
#Kontrollime, kas kasutaja tahab kasutada rpm eemaldust
#Kontrollime, kas kasutaja tahab kasutada rpm eemaldust
 
elif [ $(echo $PAKETIHALDUR | tr [:upper:] [:lower:]) = "rpm"  ]; then
elif [ $(echo $PAKETIHALDUR | tr [:upper:] [:lower:]) = "rpm"  ]; then
 
         echo "Kasutan rpm eemaldust"
         echo "Kasutan rpm eemaldust"
for i in $( rpm -q kernel | head -$(echo "$(rpm -q kernel | wc -l) - 2" | bc -l) ); do
for i in $( rpm -q kernel | head -$(echo "$(rpm -q kernel | wc -l) - 2" | bc -l) ); do
rpm -e $i
rpm -e $i
done
done
 
#Kontrollime, kas kasutaja tahab kasutada dpkg eemaldust
#Kontrollime, kas kasutaja tahab kasutada dpkg eemaldust
 
elif [ $(echo $PAKETIHALDUR | tr [:upper:] [:lower:]) = "dpkg"  ]; then
elif [ $(echo $PAKETIHALDUR | tr [:upper:] [:lower:]) = "dpkg"  ]; then
 
         echo "Kasutan dpkg eemaldust"
         echo "Kasutan dpkg eemaldust"
for i in $( dpkg --list | grep linux-image | awk '{print $3}' | head -$( echo "$(dpkg --list | grep linux-image | awk '{print $3}' | wc -l) - 2" | bc -l) ); do
for i in $( dpkg --list | grep linux-image | awk '{print $3}'| cut -d"." -f4 --complement | head -$( echo "$(dpkg --list | grep linux-image | awk '{print $3}'| cut -d"." -f4 --complement | wc -w) - 2" | bc -l)); do
apt-get remove linux-image-$i-generic
apt-get remove linux-image-$i-generic
done
done
 
#Anname teada, et kasutaja sisestatud argument ei sobi selle skriptiga
#Anname teada, et kasutaja sisestatud argument ei sobi selle skriptiga
 
else
else
echo "$PAKETIHALDUR <--Selline paketihaldur ei sobi. Ainult dpkg või rpm"
echo "$PAKETIHALDUR <--Selline paketihaldur ei sobi. Ainult dpkg või rpm"
exit 1
exit 1
 
fi
fi
 
#Väljastame, mida skript tegi
#Väljastame, mida skript tegi
 
echo "Skript kustutas kõik kernelid peale kahe viimase"
echo "Skript kustutas kõik kernelid peale kahe viimase"


</source>
</source>

Revision as of 16:04, 11 May 2011

Quest 3 - Op.Sys aine

#!/bin/bash
#Autor: Meelis Tamm, A21, metamm@itcollege.ee
#Skript eemaldab vanad kerneli kujutisfailid, v.a. kaks viimast versiooni
#Lisaks kujutisfailidele, eemaldatakse ka vastavad kerneli versioonid grub nimekirjast (seda teed paketihaldur automaagiliselt)
 
PAKETIHALDUR=$1
 
#Kontrollime, kas kasutaja omab juurkasutaja õigusi
 
if [ $UID -ne 0 ]; then
 
	echo "Käivita skript $(basename $0) juurkasutaja õigustes"
	exit 1
 
#Kontrollime, kas skript käivitati õige arvu argumentidega
 
elif [ $# -ne 1  ]; then
 
	echo -e "Käivita skript ./$(basename $0) <paketihaldur> \n[N: rpm või dpkg]"
	exit 1
 
#Kontrollime, kas kasutaja tahab kasutada rpm eemaldust
 
elif [ $(echo $PAKETIHALDUR | tr [:upper:] [:lower:]) = "rpm"  ]; then
 	
	
        echo "Kasutan rpm eemaldust"
	for i in $( rpm -q kernel | head -$(echo "$(rpm -q kernel | wc -l) - 2" | bc -l) ); do
		rpm -e $i
	done
 
#Kontrollime, kas kasutaja tahab kasutada dpkg eemaldust
 
elif [ $(echo $PAKETIHALDUR | tr [:upper:] [:lower:]) = "dpkg"  ]; then
 
        echo "Kasutan dpkg eemaldust"
	for i in $( dpkg --list | grep linux-image | awk '{print $3}'| cut -d"." -f4 --complement | head -$( echo "$(dpkg --list | grep linux-image | awk '{print $3}'| cut -d"." -f4 --complement | wc -w) - 2" | bc -l)); do
		apt-get remove linux-image-$i-generic
	done
 
#Anname teada, et kasutaja sisestatud argument ei sobi selle skriptiga
 
else
	echo "$PAKETIHALDUR <--Selline paketihaldur ei sobi. Ainult dpkg või rpm"
	exit 1
 
fi
 
#Väljastame, mida skript tegi
 
echo "Skript kustutas kõik kernelid peale kahe viimase"