it-swarm-ru.tech

Как переустановить пакет с помощью "apt-get"?

Кажется, что мой aptitude как-то сломан:

Sudo aptitude update
0% [Working]Segmentation fault

dmesg
[223282.616599] aptitude[30972]: segfault at 67707f ip 7f954dcfae5d sp 7ffff5a5f950 error 4 in libapt-pkg-libc6.7-6.so.4.6.0[7f954dca5000+bd000]

Поэтому я хотел бы переустановить aptitude с помощью apt-get.

К сожалению, похоже, у apt-get нет опции переустановки.

Как я могу заставить aptitude снова работать?

Вполне возможно, что я нашел основную причину ошибки в aptitude. Вот как я могу воспроизвести это:

  1. 'ssh' удаленный вход в систему на компьютере Debian через терминал Cygwin rxvt (из 64-разрядной версии Windows 7 на немецком языке).
  2. Увеличьте окно rxvt, чтобы оно охватывало два монитора (да, у меня есть два монитора)
  3. Запустите aptitude update. Примечание: когда я изменяю размер терминала rxvt на нормальный, у меня не возникает этих ошибок сегментации!
181
Vokuhila-Oliba
$ man apt-get | grep reinsta -A2
       --reinstall
           Re-Install packages that are already installed and at the newest
           version. Configuration Item: APT::Get::ReInstall.

Итак, чтобы использовать его для переустановки aptitude используйте:

Sudo apt-get install --reinstall aptitude
310
user23307

Вы можете переустановить пакет с помощью Sudo apt-get install --reinstall packagename. Это полностью удаляет пакет (но не пакеты, которые зависят от него), а затем переустанавливает пакет.

Это может быть удобно, когда пакет имеет много обратных зависимостей.

108
Milad Khajavi

Иногда вам нужно восстановить конфигурационные файлы тоже! не просто переустановить.

Sudo apt-get install --reinstall xxxx

Переустановите приложение, сохраните файлы конфигурации.

Это может быть полезно, но иногда вам нужно начинать с нуля, поэтому я использую следующее:

Sudo dpkg -r xxxx //to remove that xxxx package
Sudo dpkg -P xxxx //to purge all related files

затем

Sudo apt-get install xxxx
16
andreskwan

Вы должны безопасно удалить aptitude и переустановить, так как это не повлияет на другие утилиты apt. Итак: apt-get remove aptitude, за которым следует apt-get install aptitude, или, если это все равно не удается, попробуйте apt-get purge aptitude, а затем apt-get install aptitude.

Перед выполнением любого из вышеперечисленных действий я рекомендую выполнить полную проверку файловой системы и дефектных блоков на случай, если там возникла проблема, которая вызвала проблему (в зависимости от проблемы, если она есть, дальнейшие действия могут ухудшить ситуацию). Кроме того, убедитесь, что вы просматриваете то, что будет удалено на этапе удаления/очистки, прежде чем позволить ему продолжить (следует приостановить запрос разрешения, если что-то изменилось в результате удаления этого одного пакета), чтобы дважды проверить мою мысль, что это безопасно.

12
David Spillett