Ошибка: CA-сертификаты сломаны или не установлены полностью
Я пытался установить самозаверяющий сертификат SSL с sudo dpkg-reconfigure ca-certificates
команда, но прежде чем он мог закончить, мой компьютер был сброшен из-за сбоя питания.
Теперь, когда я бегу sudo dpkg-reconfigure ca-certificates
Команда, я получаю следующую ошибку:
sudo dpkg-reconfigure ca-certificates
/usr/sbin/dpkg-reconfigure: ca-certificates is broken or not fully installed
Когда я пытаюсь sudo update-ca-certificates
Я получаю следующие ошибки:
sudo update-ca-certificates
Updating certificates in /etc/ssl/certs...
Unknown regexp modifier "/b" at /usr/bin/c_rehash line 15, at end of line
Unknown regexp modifier "/W" at /usr/bin/c_rehash line 26, at end of line
Unknown regexp modifier "/3" at /usr/bin/c_rehash line 26, at end of line
Unknown regexp modifier "/2" at /usr/bin/c_rehash line 26, at end of line
No such class installdir at /usr/bin/c_rehash line 58, near "Prefix our installdir"
(Might be a runaway multi-line // string starting on line 26)
syntax error at /usr/bin/c_rehash line 58, near "Prefix our installdir"
Execution of /usr/bin/c_rehash aborted due to compilation errors.
Когда я пытаюсь судо apt install ca-certificates -f
Я получаю следующие ошибки:
sudo apt install ca-certificates -f
Reading package lists... Done
Building dependency tree
Reading state information... Done
ca-certificates is already the newest version (20160104ubuntu1).
0 upgraded, 0 newly installed, 0 to remove and 5 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] Y
Setting up ca-certificates (20160104ubuntu1) ...
Processing triggers for ca-certificates (20160104ubuntu1) ...
Updating certificates in /etc/ssl/certs...
Unknown regexp modifier "/b" at /usr/bin/c_rehash line 15, at end of line
Unknown regexp modifier "/W" at /usr/bin/c_rehash line 26, at end of line
Unknown regexp modifier "/3" at /usr/bin/c_rehash line 26, at end of line
Unknown regexp modifier "/2" at /usr/bin/c_rehash line 26, at end of line
No such class installdir at /usr/bin/c_rehash line 58, near "Prefix our installdir"
(Might be a runaway multi-line // string starting on line 26)
syntax error at /usr/bin/c_rehash line 58, near "Prefix our installdir"
Execution of /usr/bin/c_rehash aborted due to compilation errors.
dpkg: error processing package ca-certificates (--configure):
subprocess installed post-installation script returned error exit status 255
Errors were encountered while processing:
ca-certificates
E: Sub-process /usr/bin/dpkg returned an error code (1)
Из-за этого я даже не могу перенести свою работу в Git-репо. Я получаю следующее сообщение об ошибке при попытке сделать это:
fatal: unable to access 'https://github.com/***/***-tdd.git/': Problem with the SSL CA cert (path? access rights?)
Кто-нибудь знает, как это исправить без необходимости переустановки Ubuntu заново? Пожалуйста, помогите.
1 ответ
Похоже, что есть ошибка в Perl-скрипте c_rehash (я получаю похожие ошибки, и я нашел это обсуждение: https://aur.archlinux.org/packages/icaclient/?comments=all). В /bin/c_rehash в моей системе (archlinux, похоже, ваш находится в /usr/bin/c_rehash) отсутствуют некоторые кавычки. Мне пришлось изменить это (в верхней части файла):
my $dir = /etc/ssl;
my $prefix = /usr;
чтобы:
my $dir = "/etc/ssl";
my $prefix = "/usr";
и тогда это сработало.
В моем случае неправильное закрытие установки ca-сертификата привело к повреждению файла. Переустановка / обновление 'debconf' решило мою проблему:
sudo apt-get install debconf