14.04.4から16.04へのアップグレードを(愚かに)完了しました。どうやらlibvirtを壊すsystemdの導入に起因するバグがあります...またはaptitudeを壊しました。これに対する回避策または修正はありますか? 14.04に戻る必要がありますか?
root@KVM0:~# apt-get install libvirt-bin
Reading package
lists... Done
Building dependency tree
Reading state information... Done
libvirt-bin is already the newest version (1.3.1-1ubuntu10).
0 upgraded, 0 newly installed, 0 to remove and 1 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 libvirt-bin (1.3.1-1ubuntu10) ...
Job for libvirt-bin.service failed because the control process exited with error code. See "systemctl status libvirt-bin.service" and "journalctl -xe" for details.
invoke-rc.d: initscript libvirt-bin, action "start" failed.
dpkg: error processing package libvirt-bin (--configure):
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
libvirt-bin
E: Sub-process /usr/bin/dpkg returned an error code (1)
これは、syslogで次のようなものが見つかるため、apparmorが原因であると思われます。
カーネル:[2386.130467] audit:type = 1400 audit(1461767119.644:89):apparmor = "DENIED" operation = "create" profile = "/ usr/sbin/libvirtd" pid = 21368 comm = "libvirtd" family = "netlink" sock_type = "raw" protocol = 0 requested_mask = "create" denied_mask = "create"
バグが修正されるまで、安全でない回避策の1つは、インストールのために一時的にapparmorを無効にすることです。
Sudo systemctl stop apparmor.service
Sudo apt-get -f install
Sudo systemctl start apparmor.service
/etc/libvirt/libvirtd.conf
のコメントを外さないでください:
# You need to uncomment this line
log_outputs="3:syslog:libvirtd"
次のようにデフォルトのままにします。
# You need to uncomment this line
#log_outputs="3:syslog:libvirtd"
公式のlibvirt wikiで言及されていました: http://wiki.libvirt.org/page/The_daemon_cannot_be_started ですが、まったく役に立ちません。
最適なオプションは、最初に実行することです:
Sudo systemctl stop apparmor.service
Sudo apt-get -f install
Sudo systemctl start apparmor.service
次に試すことができます:
systemctl status libvirt-bin.service
出力は次のようになります。
libvirt-bin.service - Virtualization daemon
Loaded: loaded (/lib/systemd/system/libvirt-bin.service; enabled; vendor prese
Active: active (running) since Fr 2016-08-19 14:02:04 EST; 43s ago
Docs: man:libvirtd(8)
http://libvirt.org
Main PID: 8620 (libvirtd)
CGroup: /system.slice/libvirt-bin.service
├─8620 /usr/sbin/libvirtd
├─9013 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.
└─9014 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.
Apt dist-upgradeでも同様の問題がありました。 libvirt-binサービスを停止し、実行中のすべてのlibvirtプロセスを強制終了して修正します。