Jeg drepte ved en feil en dpkg-prosess som kjørte i bakgrunnen, og jeg vil installere alle pakkene på nytt for å være sikker på at alt er i orden.
Først prøvde jeg å få en liste over alle pakkene og installere dem på nytt
dpkg --get-selections | grep -v deinstall | awk "{print $1}" > list.log apt-get install --reinstall $(cat list.log) 
Men det er meldinger som:
E: Couldn"t configure pre-depend debconf:i386 for console-setup:i386, probably a dependency cycle. 
 Jeg prøvde apt-get -f install, uten å lykkes. 
Som en siste utvei installerte jeg alle programmene som ikke klarte å sjekksummer:
dpkg -l | grep ^ii | awk "{ print $2 }" | xargs debsums -s -a 
Hva skal jeg gjøre for å installere alt på nytt?
Rediger: Problem løst. Problemet var noe annet (se kommentarene). Jeg forstår at det er noe å unngå med Debian.
Kommentarer
- Jeg fikk nylig et krasj mens jeg prøvde å installere en pakke. Da jeg startet om og prøvde å installere den pakken på nytt, jeg mottok meldingen, » E: dpkg ble avbrutt, du må kjøre ‘ dpkg –configure -a ‘ for å rette opp problemet. «. Å kjøre den kommandoen fjernet pakken og konfigurasjonsfilene. Da kunne jeg installere pakke fra bunnen av. Prøv å gi den kommandoen en prøve.
 - Den gjorde ikke ‘ t gjorde noe, så jeg antar at ingenting er ødelagt. Jeg vil prøve senere å sjekke om driverproblemene mine er løst.
 - Installere alle pakker på nytt == virkelig dårlig idé. (a) Det ‘ er nesten alltid unødvendig (b) det vil sannsynligvis mislykkes ( c) Hvis systemet ditt virkelig er ødelagt, er det bare å installere det på nytt. Løs bare problemene du faktisk ser.
 
Svar
Prøv dette, husk at jeg gjorde ikke test det:
dpkg --get-selections > selections sudo dpkg --clear-selections sudo dpkg --set-selections < selections sudo apt-get --reinstall dselect-upgrade 
Kilder:
- http://www.linuxquestions.org/questions/linux-software-2/force-apt-get-to-redownload-and-reinstall-dependencies-as-well-873038/
 - https://kura.io/2010/07/02/using-dpkg-selections-to-backup-and-install-packages/?ModPagespeed=noscript
 -  
man apt-get 
Kommentarer
- Problemet mitt var helt annerledes: Jeg startet ikke riktig kjerne (!). Jeg vil godta svaret ditt fordi det ser ut til å gjøre det jeg ønsket (men ikke testet også).
 - Dette vil ikke ‘ fungere, og vil ødelegge systemet fullstendig. Linje 3 vil avinstallere apt, så det vil ikke ‘ ikke være mulig å installere alt på nytt etterpå.
 - @rkjnsn: Jeg oppdaterte svaret, sjekk om det fungerer.
 - Prøver å gjøre dette blir ingenting installert på nytt, selv om valgfilen er fylt ut: pi @ prodpi ~ $ sudo apt-get – installer dselect-upgrade Lesepakke lister … Ferdig Bygge avhengighetstre Lesestatus informasjon … Ferdig 0 oppgradert, 0 nylig installert, 0 å fjerne og 0 ikke oppgradert. noen ide?
 -  En grunn til at jeg tror koden din vant ‘ t fungerer, er fordi kommandoen 
dpkg --get-selectionslisten også avinstalleres pakker. 
Svar
Når du bruker Aptitude, er det en enkel og rask måte å gjøre det på:
 sudo aptitude reinstall "~i" 
som vil installere alle installerte pakker på nytt.
Kommentarer
- Hyggelig og kortfattet!
 
Svar
Bare i tilfelle, prøv å installere hver på nytt pakke :
for i in $(cat list.log); do apt-get install --reinstall "$i"; done 
Det kan også være lurt å legge til svar ja på alle spørsmålene.
Svar
I en av ressursene sitert av Lucas Malor fant jeg et skript kalt populator som ser ut til å være i nærheten av løsningen. Hvis du setter variabelen for valg av pakker til listen over alle pakkene dine
 PKGLIST=$(dpkg --get-selections | grep -v deinstall| cut -f1) 
, kan du kjøre skriptet og installere alle pakkene på nytt. men systemet vil sannsynligvis ha noen problemer. Det ville være bedre å teste det på en virtuell maskin først.
Her er en variant av skriptet fra lenken over:
#!/bin/bash # # Script to pre-populate apt-get proxy for faster later downloads. # It uses apt-get and wget to pull all the specified packages. # # Make sure only root can run our script if [[ $EUID -ne 0 ]]; then echo "You"re not root, are you?" 1>&2 exit 1 fi # Specify wanted packages PKGLIST="exaile" # Clears out the local repository of retrieved package files apt-get clean # Resynchronize the package index files from their sources apt-get update # Re-install specified packages at the newest version. apt-get install --reinstall $PKGLIST 
Hvis det vises feil at spesifikke pakker ikke kan installeres på nytt, kjør denne kommandoen for å prøve igjen:
sudo apt-get -y autoremove 
Svar
Prøv dette i stedet, siden det tar utdataene dine og gjør det til en gigantisk linje med mellomrom som skiller filnavnene.
 dpkg --get-selections | grep -v deinstall | awk "{print $1}" > list.log awk "$1=$1" ORS=" " list.log > newlist.log apt-get install --reinstall $(cat newlist.log) 
Den eneste endringen i det opprinnelige innlegget ditt er å legge til i den andre awk-setningen, noe som sannsynligvis kan gjøres med den første som oppretter filen du vil ha.
Denne endringen vil tvinge apt- få riktig nedlasting av pakkene og eventuelle manglende avhengigheter som ikke ble installert første gang, og installer dem på nytt i rekkefølge.
Hvis vi gjør det integrert, tror jeg at det vil se slik ut da:
 dpkg --get-selections | grep -v deinstall | awk "{print $1}" | awk "$1=$1" ORS=" " > list.log 
Og sørg for at du virkelig gjør at systemet har riktige pakker (eller nyeste), rengjør apt-hurtigbufferen, oppdater den og last deretter ned alle filene på nytt (du kan hoppe over de to første trinnene hvis du bare vil ha det du har i hurtigbufferen reinstallert):
 apt-get clean && apt-get update && apt-get install --reinstall $(cat list.log) 
Jeg hadde over 2k pakker installert på et system jeg oppgraderte som hadde et hangup. Ved hjelp av dpkg –configure -a fullførte installasjonen (den var i sluttfasen). Jeg kjørte dette for å få alt til å installeres riktig.
Eller som sagt på https://superuser.com/questions/298912/reinstall-debian-while-keeping-installed-packages-and-data :
 sudo apt-get install --reinstall $(dpkg --get-selections | grep -w "install$" | cut -f1) 
Bare vær sikker på at du kjører en «init 2» først før du installerer på nytt, siden noen av komponentene i X eller din favorittvinduebehandler vil kanskje ikke like å bli installert på nytt.
Kommentarer
-  Med mindre du ‘ har endret IFS , ikke sitert 
$(cat file)symboliserer på hvilket som helst hvitt område og gir nøyaktig det samme resultatet om filen er avgrenset av nye linjer eller mellomrom.--reinstallkan hjelpe, men ble allerede gitt to ganger før dette. 
Svar
 Å gjøre dette via apt er ganske enkelt: 
 apt list --installed | cut --delimiter=/ --fields=1 | xargs apt reinstall -y 
 apt list --installed del gjør akkurat det man vil gjette. | -tegnet leder standardutgangen til apt -kommandoen til standardinngangen til cut kommando. cut --delimiter=/ -delen forteller cut -kommandoen om å bruke / som skilletegn, og --fields=1 forteller cut å bruke det første feltet, det vil si teksten før den første / vises i utgangen fra apt list --installed -kommandoen. I dette tilfellet er resultatet av cut -kommandoen en liste over alle installerte pakker uten all tilleggsinformasjonen vi ikke trenger fra apt list --installed kommando. 
 Neste | rør standardutgangen til cut kommandoen, listen over alle installerte pakker, til standardinngangen til xargs -kommandoen, som igjen påkaller apt reinstall -y for hver av pakkene som for øyeblikket er installert . 
  Merk : avhengig av din apt-konfigurasjon, er apt reinstall -y part kan installere oppdateringer til dine eksisterende pakker i stedet for de nøyaktige versjonene du har installert. 
Svar
 Når du bruker RPM, hvis du forårsaker korrupsjon i pakkedatabasen, er det et alternativ å gjenoppbygge denne databasen, og dermed forhindre at du trenger å gå gjennom b asisk en reinstall. Som en bruker her påpekte, gjøres dette i Debian av dpkg --configure -a. 
Kommentarer
-  Rollen av 
dpkg --configure -aer å konfigurere alle pakkede og ikke-konfigurerte pakker. Se mansider avdpkgogdpkg-reconfigureog også debian.org/doc/manuals /debian-faq/ch-pkg_basics.no.html