Спробуйте це замість цього, оскільки це займе ваш вихід і зробить його однією гігантською лінією з пробілами, що розділяють назви файлів.
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)
Єдина зміна вашої оригінальної публікації - це додавання до другого твердження awk, яке, ймовірно, може бути зроблено в порядку з першим, щоб створити потрібний файл.
Ця зміна змусить apt-get правильно перезавантажити пакунки та будь-які пропущені залежності, які не були встановлені вперше, та перевстановити їх у порядку.
Якщо ми зробимо це вбудованим, я вважаю, що це виглядатиме так:
dpkg --get-selections | grep -v deinstall | awk '{print $1}' | awk '$1=$1' ORS=' ' > list.log
А потім переконайтеся, що ви дійсно переконайтеся, що система має правильні пакети (або новіші), очистіть підходящий кеш, оновіть його та повторно завантажте всі файли (можна пропустити перші два кроки, якщо ви хочете лише те, що у вас є в кеші перевстановлено):
apt-get clean && apt-get update && apt-get install --reinstall $(cat list.log)
У мене було оновлено більше 2-х пакунків у оновленій системі, яка мала завис. Використання dpkg --configure - закінчив установку (вона була на завершальній фазі). Потім я запустив це, щоб все перевстановити правильно.
Або як зазначено на /superuser/298912/reinstall-debian- while-keeping-installed-packages- and-data :
sudo apt-get install --reinstall $(dpkg --get-selections | grep -w 'install$' | cut -f1)
Просто переконайтеся, що ви запустили спочатку "init 2" перед будь-якою перевстановленням, оскільки деякі компоненти X або ваш улюблений менеджер вікон можуть не сподобатись повторно встановити.