[debian-users 00762] Re: Bullseyeにアップグレード後、systemdの動作がおかしい

Youhei SASAKI uwabami @ gfd-dennou.org
2022年 1月 21日 (金) 22:46:29 JST


佐々木です. 

状況が再現できた・解決できたわけではないのであまりお役に立てませんが. 

On Fri, 21 Jan 2022 17:51:51 +0900,
Masao Odera <odera @ text.co.jp> wrote:
> 
>  先日、Debianのアップグレードを行いました。JessieからStretch、Buster
> を経てBullseyeへという、かなり強引なやり方でしたが、kDEデスクトップを
> 含め、それなりに普段使いできる状態にはなりました。

Jessie からいきなり Bullseye へアップグレードしたのではなく, Jessie →
Stretch → Buster → Bullseye と順に更新したのであれば, 想定されている手
段です.

>  が、どうも肝心のsystemdがおかしな状態になっていて、困っています。主
> な問題は下記2つです。

確認として systemctl restart, systemctl hibernate は動作されているという
ことですが, そもそも更新後に kernel の更新と再起動(reboot)はされています
よね? 現状動作している kernel の version は幾つでしょうか?

> ●systemctl statusが機能しない
> syslogやsshdなどでも同じ結果になります。rootで実行しても同じです。
> ------------------------------------------------------------
> ~$ systemctl status apache2.service
> Failed to parse message: そのようなデバイスやアドレスはありません
- snip -
一つ目は dbus と通信できていない場合に見られるメッセージに思えます.
Jessie → Stretch の更新時の注意点として, Stretch 以降のパッケージ群が
PIE を有効にしてビルドされている点があります. もし再起動せずに Jessie の
頃の古いカーネルのまま動いている場合には, daemon program の多くがセグメ
ンテーションフォルトをおこし, 正常に動作しない事が知られています. 
https://www.debian.org/releases/stretch/amd64/release-notes/ch-information.ja.html#pie-is-now-default

> ●再インストールすると、古い設定ファイルが使われる
- snip -
>  さらに、下記では、既存の設定ファイルの内容が理解できていないようです。
> これも奇妙というか、何が原因かわからない状態です。
> --------------------------------------------
> [systemd.conf:29] Unknown command type 'a'.
> --------------------------------------------

apt-listchanges は不要なら抜いておくのが良いですが, それはそれとして.

エラーで出ている systemd.conf, home.conf, journal-nocow.conf などは
systemd-tmpfiles.service の設定ファイルであり, /usr/lib/tmpfiles.d/ 以下
の設定ファイル群ですね. systemd 本体の設定とは別で, tmpfile を含めたファ
イルのマウントの設定です.

さて, なんでこれが unknown command type 扱いになっているのかな…

というわけで, あまりお役に立てませんが, 参考までに. 

>  apache2が入っている状態で、下記のようになります。下記のように、
> syslogやsshdなどでも同じ結果になります。rootで実行しても同じです。
> ------------------------------------------------------------
> ~$ systemctl status apache2.service
> Failed to parse message: そのようなデバイスやアドレスはありません
> ~$ systemctl status sshd.service
> Failed to parse message: そのようなデバイスやアドレスはありません
> ~$ systemctl status syslog.service
> Failed to parse message: そのようなデバイスやアドレスはありません
> ------------------------------------------------------------
> 
> ●再インストールすると、古い設定ファイルが使われる
>  試しにsystemdを再インストールすると、設定の途中で奇妙な古いファイル
> "/usr/bin/apt-listchanges"が使われます。
>  最初にBullseyeにアップグレードする際にもこのファイルでひっかかったの
> で気がついたのですが、中身はPython 2.7のスクリプトです。またこのスクリ
> プトの中では"import anydbm"とされているのですが、anydbm.pyはpython2.7
> のツリーにあるだけで、python3系には存在しないようです(現在、
> "/usr/bin/apt-listchanges"は別の場所に移動したため、下記では"No such
> file"になっています)。
>  さらに、下記では、既存の設定ファイルの内容が理解できていないようです。
> これも奇妙というか、何が原因かわからない状態です。
> --------------------------------------------
> [systemd.conf:29] Unknown command type 'a'.
> --------------------------------------------
> 
> ・再インストールの結果
> ------------------------------------------------------------
> ~# apt install --reinstall systemd
> Reading package lists... Done
> Building dependency tree... Done
> Reading state information... Done
> 0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 1 not upgraded.
> 1 not fully installed or removed.
> Need to get 4495 kB of archives.
> After this operation, 0 B of additional disk space will be used.
> Get:1 http://ftp.debian.org/debian bullseye/main amd64 systemd amd64 247.3-6 [4495 kB]
> Fetched 4495 kB in 2s (2128 kB/s)  
> /bin/sh: line 1: /usr/bin/apt-listchanges: No such file or directory
> (Reading database ... 896033 files and directories currently installed.)
> Preparing to unpack .../systemd_247.3-6_amd64.deb ...
> Unpacking systemd (247.3-6) over (247.3-6) ...
> Setting up systemd (247.3-6) ...
> [home.conf:10] Unknown command type 'Q'.
> [home.conf:11] Unknown command type 'q'.
> [journal-nocow.conf:25] Unknown command type 'h'.
> [journal-nocow.conf:26] Unknown command type 'h'.
> [journal-nocow.conf:27] Unknown command type 'h'.
> [systemd.conf:29] Unknown command type 'a'.
> [systemd.conf:30] Unknown command type 'a'.
> [systemd.conf:31] Unknown command type 'a'.
> [systemd.conf:37] Unknown command type 'a'.
> [systemd.conf:38] Unknown command type 'a'.
> [systemd.conf:39] Unknown command type 'a'.
> [var.conf:10] Unknown command type 'q'.
> Setting up docker-ce (5:20.10.12~3-0~debian-bullseye) ...
> Job for docker.service failed. See 'systemctl status docker.service' and 'journalctl -xn' for details.
> invoke-rc.d: initscript docker, action "restart" failed.
> Failed to parse message: No such device or address
> dpkg: error processing package docker-ce (--configure):
>  installed docker-ce package post-installation script subprocess returned error exit status 1
> Processing triggers for man-db (2.9.4-2) ...
> Processing triggers for dbus (1.12.20-2) ...
> Errors were encountered while processing:
>  docker-ce
> needrestart is being skipped since dpkg has failed
> E: Sub-process /usr/bin/dpkg returned an error code (1)
> ------------------------------------------------------------
> ※Dockerの設定に失敗しているのは別の問題だと思いますので、無視してくだ
>  さい。
> 
>  以上につきまして、修復方法など、ご存知でしたらお教え頂ければと思います。
> 
>  なお、systemctl restartや、systemctl hibernateなどは正常に動いていま
> す。システムの起動も、もちろん正常に機能しています。
> 
>  よろしくお願いいたします。

--
Youhei SASAKI <uwabami @ gfd-dennou.org>
              <uwabami @ debian.or.jp>
GPG fingerprint:
  4096/RSA: 66A4 EA70 4FE2 4055 8D6A C2E6 9394 F354 891D 7E07


debian-users メーリングリストの案内