Dunque, tu dici che si blocca durante la rimozione di ModemManager-0:1.8.0-4.fc29.x86_64; ma ModemManager-0:1.8.0-4.fc29.x86_64 non è più nell’elenco dei programmi duplicati (guarda https://paste.fedoraproject.org/paste/YBirV7YksL3vsuuas7uxmw), quindi è stato rimosso. Inoltre 3881 (l’output che riporti al post #51) è minore di 3887 (post #49), e la differenza è 6, che corrisponde a 3 doppioni rimossi. Infatti, se guardi l’output di https://paste.fedoraproject.org/paste/F9X2L-jNPZYcFvfn8EabPA, ti accorgerai che nel nuovo output mancano
ImageMagick-libs-1:6.9.10.28-1.fc30.x86_64
ImageMagick-libs-1:6.9.9.38-3.fc29.x86_64
LibRaw-0:0.19.2-1.fc29.x86_64
LibRaw-0:0.19.2-3.fc30.x86_64
ModemManager-0:1.10.2-1.fc30.x86_64
ModemManager-0:1.8.0-4.fc29.x86_64
il che conferma l’avvenuta rimozione di ModemManager-0:1.8.0-4.fc29.x86_64.
Io ho il dubbio che tu confonda l’assenza di output con un blocco, ma i messaggi che vedi li trovi solo per errori nella rimozione (programmi che risultano ancora installati, ma sono stati di fatto rimossi, almeno in parte).
Fai così:
(cat <<EOF
let N=0
dnf repoquery --duplicates | grep fc29 | while read PROG
do
let N=\$N+1
echo \$N: rimozione di \$PROG
rpm -e -f -v --nodeps \$PROG
done
EOF
) >doppi.sh
Edit: ho tolto la riga in più che avevo inserito per errore.
In alternativa, se preferisci, puoi prelevarlo così:
wget -O doppi.sh "https://paste.fedoraproject.org/paste/cBYdfO9kvR9hlZ7WF5nZJQ"
Edit: chiedo scusa, ma questo non funziona. Usa il metodo precedente.
Una volta creato, in uno dei due modi suindicati (edit: nel primo), il file doppi.sh, se esegui il comando
cat doppi.sh
dovresti avere questo output:
let N=0
dnf repoquery --duplicates | grep fc29 | while read PROG
do
let N=$N+1
echo $N: rimozione di $PROG
rpm -e -f -v --nodeps $PROG
done
Rendi lo script eseguibile con
chmod +x doppi.sh
ed eseguilo con
sudo ./doppi.sh
Anche se sembra che si blocchi, lascialo andare. Se, dopo un tempo ragionevole, non succede niente, e sei sicuro che sia bloccato allo stesso numero di rimozione (“n: rimozione di …”), dopo averlo interrotto controlla l’output di
sudo dnf repoquery --duplicates | wc -l
Se l’output è diminuito rispetto all’inizio (ora, ti ricordo, siamo a 3881), ripeti
1)
sudo ./doppi.sh
e poi
2)
sudo dnf repoquery --duplicates | wc -l
Ripeti in loop i comandi 1) e 2) finché l’output del secondo (quello che termina con “wc -l”) diminuisce rispetto al tentativo precedente.
Alla fine, posta
sudo dnf repoquery | fpaste