SCRIPT Universale Per Installare Nuovi Kernel MIB

Guides, tutorials & docs
Post Reply
User avatar
odites
Utente
Utente
Posts: 113
Joined: 18 July 2008, 19:47

SCRIPT Universale Per Installare Nuovi Kernel MIB

Post by odites »

Per mia convenienza mi sono creato 10 minuti fa questo script per installare gli ultimi kernel senza aspettare l'aggiornamento delle liste.

Ricordo ai volenterosi, che se le liste non sono state fatte vuol dire che è stato preparato da poco e quindi non è assicurato il testing

Code: Select all

#!/bin/bash
echo "SCRIPT universale per aggiornare i kernel";

echo "M.I.B. - 2009 by Odites. Ver: 0.2";

ver=$(awk '{print $4}' /etc/mandriva-release);

ar=$(uname -m)

echo "Per cortesia mi diresti il numero della versione del kernel che vuoi installare? [2.6.X.X]" && read num

echo "Che versione del kernel preferisci? [desktop | server | source]" && read tip

if urpmi.update -a >> /dev/null;
then echo "Liste Aggiornate";
else echo "Liste non o parzialmente aggiornate";
fi;


if [ $ver == "2009.1" ]

then
pop=http://mib.pianetalinux.org/${ver}/${ar}/MIB-kernels
else
pop=http://mib.pianetalinux.org/${ver}/${ar}/kernels/mdv.mib/${num}
fi

#number patch manbo

mkdir pippo;
cd pippo;
wget ${pop}/kernel-doc-${num}-69mnb1.${ar}.rpm ${pop}/kernel-doc-${num}-69mnb2.${ar}.rpm > /dev/null
ls | grep mnb1 && ptm="mnb1"
ls | grep mnb2 && ptm="mnb2"
cd ..
rm -rf pippo

echo "Inzio ad installare il kernel ${num} per la ${ver}"

#installazione del kernel

if [ $tip == "source" ]; then /usr/sbin/urpmi ${pop}/kernel-${tip}-${num}-69mib-1-1${ptm}.${ar}.rpm ${pop}/kernel-${tip}-latest-${num}-69${ptm}.${ar}.rpm ${pop}/kernel-doc-${num}-69${ptm}.${ar}.rpm && ris=0;
echo "Vuoi ricompilarti adesso il nuovo kernel? [si | no]" && read com;

#compilazione del kernel
if [ com == "si" ];
then ln -s /usr/src/linux-${num}-69mib /usr/src/linux && cd /usr/src/linux/ && make xconfig && make bzImage && make module && make modules_install && make install && ris=2;
fi;


elif /usr/sbin/urpmi ${pop}/kernel-${num}-69mib-1-1${ptm}.${ar}.rpm ${pop}/kernel-${tip}-${num}-69mib-1-1${ptm}.${ar}.rpm ${pop}/kernel-${tip}-devel-${num}-69mib-1-1${ptm}.${ar}.rpm ${pop}/kernel-${tip}-devel-latest-${num}-69${ptm}.${ar}.rpm ${pop}/kernel-doc-${num}-69${ptm}.${ar}.rpm;
then ris=0; fi;

if [ $ris == 0 ];
then echo "Hai appena installato il nuovo kernel";
elif [ $ris == 2 ]; then echo "Hai appena installato e ricompilato il nuovo kernel";
else echo "Non hai installato il nuovo kernel, controlla se hai sbagliato a darmi le informazioni o se il kernel non è ancora presente sul server. Probabilmente la variabile ptm è diversa da questo kernel perchè putroppo cambia a seconda del kernel, prova a sostituire il vare mnb1 mnb2 ecc.";
fi;

exit 0
lo salvate come un file *.sh e lo avviate da root

PS: Se avete trovato bug o pensato di fare qualche aggiunta allo script, scrivete qui sotto, come di routine :D



ENGLISH:


This script is used to install the new kernel made for you by MIB ;)

Copy this text and save it in a .sh file

Code: Select all

#!/bin/bash
echo "Universal SCRIPT to update kernels";

echo "M.I.B. - 2009 by Odites. Ver: 0.2";

ver=$(awk '{print $4}' /etc/mandriva-release);

ar=$(uname -m)

echo "Please tell me the version number of the kernel you want to install?[2.6.X.X]" && read num

echo "Which version do you prefer? [desktop | server | source]" && read tip

if urpmi.update -a >> /dev/null;
then echo "Lists have been updated";
else echo "Lists haven't been update";
fi;


if [ $ver == "2009.1" ]
then
pop=http://mib.pianetalinux.org/${ver}/${ar}/MIB-kernels
else
pop=http://mib.pianetalinux.org/${ver}/${ar}/kernels/mdv.mib/${num}
fi


#number patch manbo

mkdir pippo;
cd pippo;
wget ${pop}/kernel-doc-${num}-69mnb1.${ar}.rpm ${pop}/kernel-doc-${num}-69mnb2.${ar}.rpm > /dev/null
ls | grep mnb1 && ptm="mnb1"
ls | grep mnb2 && ptm="mnb2"
cd ..
rm -rf pippo

echo "I'm going to install kernel ${num} for ${ver}"

#install kernel

if [ $tip == "source" ]; then /usr/sbin/urpmi ${pop}/kernel-${tip}-${num}-69mib-1-1${ptm}.${ar}.rpm ${pop}/kernel-${tip}-latest-${num}-69${ptm}.${ar}.rpm ${pop}/kernel-doc-${num}-69${ptm}.${ar}.rpm && ris=0;

echo "Do you want re-compile the news kernel now? [yes | no]" && read com;

#compile kernel
if [ com == "yes" ];
then ln -s /usr/src/linux-${num}-69mib /usr/src/linux && cd /usr/src/linux/ && make xconfig && make bzImage && make module && make modules_install && make install && ris=2;
fi;


elif /usr/sbin/urpmi ${pop}/kernel-${num}-69mib-1-1${ptm}.${ar}.rpm ${pop}/kernel-${tip}-${num}-69mib-1-1${ptm}.${ar}.rpm ${pop}/kernel-${tip}-devel-${num}-69mib-1-1${ptm}.${ar}.rpm ${pop}/kernel-${tip}-devel-latest-${num}-69${ptm}.${ar}.rpm ${pop}/kernel-doc-${num}-69${ptm}.${ar}.rpm;
then ris=0; fi;

if [ $ris == 0 ];
then echo "kernel correctly installed";
elif [ $ris == 2 ]; then echo "you have just been install and re-compile the news kernel";
else echo "You haven't been install the kernel, you should check if you are wrong to write me some infomations or if the news kernel was not installed yet or if kernel is on the server.  	
Probably the ptm variable is different from the kernel because, unfortunately, changes depending on the kernel, try to replace the value of mnb1 mnb1 mnb2 etc";
fi;

exit 0
Run this file as root user

Code: Select all

sh name_file[b].sh[/b]
PS: If you discover a bug or if you have some ideas to better the script, answert at this topic

Post Reply