Consenso all'uso dei cookies

SITO1 -- SITO2 -- Forum1 -- CercaGlobale -- Informativa su Cookie e Privacy


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5
Script INSTALLABILE ricerca \ reinstallazione pacchetti da cache di apt
#1
Ho preparato uno script per Ubuntu, Mint che facilità e velocizza la ricerca e la reinstallazione di vecchi pacchetti presenti nella cache di apt, da utilizzare nel caso in cui una nuova versione di un pacchetto, ad es. network-manager, non dovesse funzionare come si deve..
Questo script permette di cercare e reinstallare velocemente la vecchia versione che avevate installato prima dell' aggiornamento del sistema che ha portato al malfunzionamento dell' applicazione, ammesso che non abbiate fatto pulizia nella cache ..

Non ho ancora avuto la possibilità di testarlo perchè al momento non posso utilizzare una debian based almeno per qualche oretta ...  ma "dovrebbe" funzionare.

OK, testato e funzionante 

Codice:
#!/bin/bash

#SCRIPT PER LA RICERCA E REINSTALLAZIONE DEI PACCHETTI DALLA CACHE

cd /var/cache/apt/archives

echo -e "\n\n\n"
read -p " Digita il nome del pacchetto da cercare: " pacchetto

if ls $pacchetto*.deb &> /dev/null; then
 echo -e "\n"
 echo " Cerco ... "
 echo -e "\n"
 sleep 1
else
 echo -e "\n"
 echo " Il pacchetto non esiste oppure è scritto male. "
 echo -e "\n"
 exit 1
fi

PS3="Seleziona il numero corrispondente al pacchetto che vuoi reinstallare: "

select i in $pacchetto*;
do
 sudo dpkg -i $i
 exit 0
done
[Immagine: http://i61.tinypic.com/migwsz.jpg]  [Immagine: http://i65.tinypic.com/2rp9u80.jpgGrazie al cielo esiste Linux
Cita messaggio
Grazie da: eu66
#2
Grazie per il tuo impegno.

E se invece volessi installare più pacchetti presenti in un cartella apposita su pen-drive cosa dovrei cambiare in questo script????

Di solito, da terminale e con privilegi di root, mi porto nella cartella interessata dove sono locati i pacchetti e col comando "dpkg -i *.deb" eseguo l'installazione ma aggiungere conoscenze non guasta.

Premetto che la distribuzione interessata, nel mio caso, è una debian jessie.
Cita messaggio
Grazie da:
#3
Dunque, vediamo se ho capito bene ...

Per prima cosa dovresti cambiare il percorso a cui punta lo script, che in questo caso è
/var/cache/apt/archives 

Individua prima il nome con il quale viene riconosciuta la chiavetta, poi cambierai il percorso in /media/$USER/nomechiavetta/nomecartella


La variabile $USER non farà altro che restituire come output il nome del tuo account, mentre dovrai sostituire "nomechiavetta" e "nomecartella" con quelli reali, a questo punto lanci lo script e quando ti verrà chiesto di inserire il nome del pacchetto da installare, tu non inserirai alcun nome ma darai semplicemente INVIO.
Ti comparirà la lista di tutti i pacchetti presenti nella cartella interessata e a quel punto non dovrai far altro che selezionare il pacchetto che desideri reinstallare.
[Immagine: http://i61.tinypic.com/migwsz.jpg]  [Immagine: http://i65.tinypic.com/2rp9u80.jpgGrazie al cielo esiste Linux
Cita messaggio
Grazie da:
#4
Hai capito bene.
Io intendevo invece uno script che m'installasse tutti i pacchetti presenti nella cartella, come succede col comando "dpkg -i *.deb". In pratica lanciare lo script una sola volta.
Buona serata.

Edit: In ogni caso domani provo le tue indicazioni.
Cita messaggio
Grazie da:
#5
ORA INSTALLABILE !!!

Il mio primo script installabile  Tongue  Pinguino Pinguino  Wink

- Estrarre nella home il file zippato che metto in allegato
- L' estrazione creerà una cartella di nome cache
- Spostatevi col terminale nella cartella ( cd cache )
- lanciate l' installer con il comando ./install.sh

Dopo 2 secondi avrete lo script installato e troverete l' icona nel menu ..

N.B. Se l' icona non dovesse comparire riavviate il sistema...

Vi raccomando, se riscontrate dei problemi fatemelo sapere per favore......... Grazie  Smile


script aggiornato e sostituito allegato in data 18/06/2016


Allegati
.zip   cache.zip (Dimensione: 2,38 KB / Download: 1)
[Immagine: http://i61.tinypic.com/migwsz.jpg]  [Immagine: http://i65.tinypic.com/2rp9u80.jpgGrazie al cielo esiste Linux
Cita messaggio
Grazie da:
#6
(15-05-2016,20:07 )devil Ha scritto: Hai capito bene.
Io intendevo invece uno script che m'installasse tutti i pacchetti presenti nella cartella, come succede col comando "dpkg -i  *.deb". In pratica lanciare lo script una sola volta.

Ok ora ho capito, ti ho preparato lo script

Ricordati di sostituire il percorso con quello corretto ..

Codice:
#!/bin/bash

#SCRIPT PER L' INSTALLAZIONE DI TUTTI I PACCHETTI PRESENTI IN UNA CARTELLA

cd /media/$USER/nomechiavetta/nomecartella

echo -e "\n\n"
echo " Pacchetti presenti nella cartella: "
echo -e "\n\n"
ls *.deb

echo -e "\n\n\n"
read -p " Premi INVIO per installare tutti i pacchetti: " pacchetto


if ls $pacchetto*.deb &> /dev/null; then
for i in $pacchetto*.deb;
 do
sudo dpkg -i $i
 done
echo -e "\n"
echo " Fatto ! "
echo -e "\n"
sleep 1
else
echo -e "\n"
echo " Non è presente alcun pacchetto "
echo -e "\n"
exit 1
fi

exit 0
[Immagine: http://i61.tinypic.com/migwsz.jpg]  [Immagine: http://i65.tinypic.com/2rp9u80.jpgGrazie al cielo esiste Linux
Cita messaggio
Grazie da:
#7
Ciao Teo, domani lo provo e ti faccio sapere.
grazie tantissimo.
Cita messaggio
Grazie da:
#8
Tutto O.K.
Cita messaggio
Grazie da:
#9
Molto bene.  Tux
[Immagine: http://i61.tinypic.com/migwsz.jpg]  [Immagine: http://i65.tinypic.com/2rp9u80.jpgGrazie al cielo esiste Linux
Cita messaggio
Grazie da:


Vai al forum:


Utenti che stanno guardando questa discussione: 1 Ospite(i)