В моем другом вопросе о том, как Подавить вопросы командной строки во время установки пакета , я нашел ответ. К сожалению, я уже застрял со следующей проблемой.
Команда apt-get (точнее: dpkg, вызываемая apt-get) сталкивается с проблемой рекурсивных триггеров:
[...]
Processing triggers for initramfs-tools (0.122ubuntu8.12) ...
[...]
update-initramfs: deferring update (trigger activated)
Processing triggers for initramfs-tools (0.122ubuntu8.12) ...
update-initramfs: Generating /boot/initrd.img-4.4.0-135-generic
[...]
Preparing to unpack .../initramfs-tools_0.122ubuntu8.14_all.deb ...
Unpacking initramfs-tools (0.122ubuntu8.14) over (0.122ubuntu8.12) ...
[...]
Preparing to unpack .../ca-certificates_20170717~16.04.2_all.deb ...
Unpacking ca-certificates (20170717~16.04.2) over (20170717~16.04.1) ...
[...]
Setting up initramfs-tools (0.122ubuntu8.14) ...
update-initramfs: deferring update (trigger activated)
[...]
Setting up ca-certificates (20170717~16.04.2) ...
[...]
Processing triggers for initramfs-tools (0.122ubuntu8.14) ...
update-initramfs: Generating /boot/initrd.img-4.4.0-135-generic
dpkg: cycle found while processing triggers:
chain of packages whose triggers are or may be responsible:
initramfs-tools -> ca-certificates
packages' pending triggers which are or may be unresolvable:
ca-certificates: update-ca-certificates
resolvconf: resolvconf-enable-updates
initramfs-tools: update-initramfs
dpkg: error processing package ca-certificates (--configure):
triggers looping, abandoned
Processing triggers for resolvconf (1.78ubuntu7) ...
Processing triggers for initramfs-tools (0.122ubuntu8.14) ...
update-initramfs: Generating /boot/initrd.img-4.4.0-135-generic
Errors were encountered while processing:
ca-certificates
W: --force-yes is deprecated, use one of the options starting with --allow instead.
E: Sub-process /usr/bin/dpkg returned an error code (1)
Почему-то я не получаю ее как CA-сертификаты не ссылаются на инструменты initramfs (по крайней мере, насколько я могу судить).
Я вошел в систему вручную в этой системе и выполнил тот же вызов apt-get, используя опцию --fix-broken. Каким-то образом это решило проблему.
Я реализовал это в своей программе обновлений, поэтому apt-get выполняется с этой опцией прямо с места. Но я продолжаю получать ту же ошибку. Означает, что эта опция может решить проблему позже, но не во время процесса обновления.
Кто-нибудь знает способ предотвратить возникновение этой проблемы?
Тем временем я узнал, что это просто последующая ошибка другой проблемы, с которой я столкнулся. У пакетов, которые я установил / обновил, была проблема зависимости. Так как я решил, что все работает отлично.
Я также думаю, что не было бы никакого решения этой проблемы.