Команда для очистки и переустановки пакета

10

Иногда пакет сломан и требует переустановки с нуля. Я могу использовать с apt-get purgeпоследующим apt-get install, но затем я должен посмотреть, были ли удалены какие-либо зависимые пакеты, и не забудьте переустановить их.

Есть ли команда для очистки и переустановки пакета, который обрабатывает зависимости? Если пакет зависит от того, который переустанавливается, этот пакет следует либо оставить на месте, либо переустановить его.

Тор Клингберг
источник
3
Возможный дубликат пакета
Reinstall
2
Нет, я хочу удалить конфигурационные файлы, такие какapt-get purge
Tor Klingberg

Ответы:

9

Это не рекомендуется, но вы можете подрезать aptи перейти непосредственно к dpkg.

Например, принимая postfixи postfix-dev:

$ sudo apt-get purge postfix
Reading package lists... Done
Building dependency tree
Reading state information... Done.
The following packages will be REMOVED:
  postfix* postfix-dev*
0 upgraded, 0 newly installed, 2 to remove and 99 not upgraded.
After this operation, 4449 kB disk space will be freed.
Do you want to continue? [Y/n] n
Abort.

Теперь мы используем dpkgдля очистки postfixбез удаления зависимых:

$ sudo dpkg --purge --force-depends postfix
dpkg: postfix: dependency problems, but removing anyway as you requested:
 postfix-dev depends on postfix (>= 3.1.0-0).
 postfix-dev depends on postfix (<< 3.1.0.0-0).
 postfix-dev depends on postfix (>= 3.1.0-0).
 postfix-dev depends on postfix (<< 3.1.0.0-0).

(Reading database ... 293223 files and directories currently installed.)
Removing postfix (3.1.0-3) ...
Purging configuration files for postfix (3.1.0-3) ...
Processing triggers for libc-bin (2.23-0ubuntu5) ...
Processing triggers for man-db (2.7.5-1) ...

А теперь переустановите postfix:

$ sudo apt-get install postfix
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
  procmail postfix-mysql postfix-pgsql postfix-ldap postfix-pcre sasl2-bin dovecot-common postfix-cdb postfix-doc
The following NEW packages will be installed:
  postfix
0 upgraded, 1 newly installed, 0 to remove and 99 not upgraded.
Need to get 0 B/1152 kB of archives.
After this operation, 3697 kB of additional disk space will be used.
Preconfiguring packages ...
Selecting previously unselected package postfix.
(Reading database ... 293035 files and directories currently installed.)
Preparing to unpack .../postfix_3.1.0-3_amd64.deb ...
Unpacking postfix (3.1.0-3) ...
...
Мур
источник