Zainstaluj ponownie pakiet i jego zainstalowane zależności


25

Mam zainstalowany pakiet, który jest uszkodzony (sam pakiet, a nie jego zależności). Ponowna instalacja z sudo dpkg-reconfigure <package>lub sudo apt-get --reinstall install <package>nie załatwiła sprawy. Chciałbym spróbować ponownie zainstalować pakiet, w tym wszystkie jego obecnie zainstalowane zależności. Czy jest na to sposób?

Odpowiedzi:


35

Możesz sprawdzić wszystkie zależności pakietu za pomocą apt-cache:

$ sudo apt-cache depends <package>

Korzystając z wyników tego polecenia, otrzymujemy następujący, który ponownie instaluje <package>i jego zależności:

$ sudo apt-cache depends <package> | grep '[ |]Depends: [^<]' | cut -d: -f2 | tr -d ' ' | xargs sudo apt-get --reinstall install -y

12
To jest to! Dziękuję Ci. Zmodyfikowałem argument grep z, 'Depends'aby '[ |]Depends: [^<]'wykluczyć PreDepends i alternatywne wpisy pakietu ( Depends: <package> ). Argumenty apt-get musiałyby dotyczyć --reinstall installfaktycznej ponownej instalacji, której szukałem.
Pasza

3
Aby tego nie przetestować, opublikowanie go bez dalszych wyjaśnień jest dość odważne. W końcu usuwasz kilka paczek.
AB
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.