Ubuntu18.04[VirtualBox] systemdによるserviceが一部起動していないため行ったこと


Ubuntu18.04イメージ

  • ubuntu-ja-18.04.2-desktop-amd64.iso

何が発生していたか

  • 一部サービスが起動していない
    • 自作サービス
    • multi-user.target
    • NetworkManager関連のサービス
  • journalctlを除くとgnome関連のFailedやErrorが見受けられる

対策

  • OS更新
    • apt update
    • apt full-upgrade
    • 途中で固まってしまう(snapd関連)
  • OS再更新
  • snapdの削除
  • OS再再更新

詳細内容

起動していないサービスの確認

Active: inactive (dead) が確認できます。

~$ systemctl status multi-user.target 
● multi-user.target - Multi-User System
   Loaded: loaded (/lib/systemd/system/multi-user.target; static; vendor preset:
   Active: inactive (dead)
     Docs: man:systemd.special(7)
~$ systemctl status NetworkManager-dispatcher.service 
● NetworkManager-dispatcher.service - Network Manager Script Dispatcher Service
   Loaded: loaded (/lib/systemd/system/NetworkManager-dispatcher.service; enable
   Active: inactive (dead)

OS更新

snapd設定で進捗: [ 76%] から進まず強制的に再起動しました。

~$ sudo apt update
~$ apt list --upgradable
~$ sudo apt full-upgrade
--略
snapd (2.39.2+18.04) を設定しています ...
新バージョンの設定ファイル /etc/apparmor.d/usr.lib.snapd.snap-confine.real をインストールしています ...
md5sum: /etc/apparmor.d/usr.lib.snapd.snap-confine: そのようなファイルやディレクトリはありません
snapd.failure.service is a disabled or a static unit, not starting it.
snapd.snap-repair.service is a disabled or a static unit, not starting it.
進捗: [ 76%] [##################################################################......................] 

OS再更新

問題修正のためコマンド手動実行を促されます。

~$ sudo apt update
~$ apt list --upgradable
一覧表示... 完了
~$ sudo apt full-upgrade
E: dpkg は中断されました。問題を修正するには 'sudo dpkg --configure -a' を手動で実行する必要があります。

コメント通りsudo dpkg --configure -aを実行します

~$ sudo dpkg --configure -a
gvfs-libs:amd64 (1.36.1-0ubuntu1.3.2) を設定しています ...
man-db (2.8.3-2ubuntu0.1) のトリガを処理しています ...
xwayland (2:1.19.6-1ubuntu4.3) を設定しています ...
gnome-menus (3.13.3-11ubuntu1.1) のトリガを処理しています ...
gvfs-daemons (1.36.1-0ubuntu1.3.2) を設定しています ...
gvfs:amd64 (1.36.1-0ubuntu1.3.2) を設定しています ...
gvfs-backends (1.36.1-0ubuntu1.3.2) を設定しています ...
gvfs-fuse (1.36.1-0ubuntu1.3.2) を設定しています ...

snapd削除

問題のありそうなsnapdプラグインを削除しました。

~$ sudo dpkg -r snapd gnome-software-plugin-snap

OS再再更新

不要なパケージ削除を促されます。

~$ sudo apt update
~$ sudo apt full-upgrade
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
アップグレードパッケージを検出しています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  linux-headers-4.18.0-17 linux-headers-4.18.0-17-generic
  linux-image-4.18.0-17-generic linux-modules-4.18.0-17-generic
  linux-modules-extra-4.18.0-17-generic
これを削除するには 'sudo apt autoremove' を利用してください。
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 0 個

コメント通りsudo apt autoremoveを実行します。

~$ sudo apt autoremove

OSリブート

OSリブート後、起動していなかったserviceが起動していること、syslogjournalctlに異常が記録されていないか確認し、問題が残っていないか確認します。

おわりに

取り急ぎ、現状の問題に対応できました.

しかしながら、強制再起動して対応していた箇所の良策や、systemdの仕組み、snapdと他serviceの関連性など深く知見が得られていない反省があり、今後知見を増やしていきます。

トラブルは大きなスキルアップのチャンスです。それと共にトラブル周辺情報の知見が増えるチャンスです。

目に見えていない異常は発生しているものであり、syslogjournalctlなどから異常が発生していないか情報収集することは大切だなと実感しました。

少しでも本情報がお役に立てれば幸いです。