Raspberry pi zero whをbookwormにしたらXorgが起動しなくなった件

bullseyeからbookwormにapt upgradeし再起動すると、・・・な画面のあと、真っ黒になり左上にカーソルが点滅した状態で一向に起動してこなくなった。

Ctrl+Alt+F1で画面を確認すると、どうもXorgでエラーとなっているようだったのでログを確認すると以下のように・・・

[  1559.859]
X.Org X Server 1.21.1.7
X Protocol Version 11, Revision 0
[  1559.861] Current Operating System: Linux raspberrypi 6.1.21+ #1642 Mon Apr  3 17:19:14 BST 2023 armv6l
[  1559.861] Kernel command line: coherent_pool=1M 8250.nr_uarts=0 snd_bcm2835.enable_headphones=0 snd_bcm2835.enable_hdmi=1 bcm2708_fb.fbwidth=1920 bcm2708_fb.fbheight=1080 bcm2708_fb.fbswap=1 smsc95xx.macaddr=B8:27:EB:72:88:0B vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000  console=ttyS0,115200 console=tty1 root=PARTUUID=4a8f6f8f-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles
[  1559.863] xorg-server 2:21.1.7-3+rpt3+deb12u7 (https://www.debian.org/support)
[  1559.863] Current version of pixman: 0.42.2
[  1559.863]    Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
[  1559.864] Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[  1559.866] (==) Log file: "/var/log/Xorg.0.log", Time: Wed Oct 30 12:35:56 2024
[  1559.880] (==) Using config directory: "/etc/X11/xorg.conf.d"
[  1559.880] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[  1559.882] (==) ServerLayout "ServerLayout0"
[  1559.882] (==) No screen section available. Using defaults.
[  1559.883] (**) |-->Screen "Default Screen Section" (0)
[  1559.883] (**) |   |-->Monitor "<default monitor>"
[  1559.886] (==) No device specified for screen "Default Screen Section".
        Using the first device section listed.
[  1559.886] (**) |   |-->Device "kms"
[  1559.886] (==) No monitor specified for screen "Default Screen Section".
        Using a default monitor configuration.
[  1559.886] (**) Option "BlankTime" "0"
[  1559.887] (**) Option "StandbyTime" "0"
[  1559.887] (**) Option "SuspendTime" "0"
[  1559.887] (**) Option "OffTime" "0"
[  1559.888] (**) Option "Debug" "dmabuf_capable"
[  1559.888] (==) Automatically adding devices
[  1559.888] (==) Automatically enabling devices
[  1559.888] (==) Automatically adding GPU devices
[  1559.888] (==) Automatically binding GPU devices
[  1559.889] (==) Max clients allowed: 256, resource mask: 0x1fffff
[  1559.889] (WW) The directory "/usr/share/fonts/X11/misc" does not exist.
[  1559.889]    Entry deleted from font path.
[  1559.889] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[  1559.889]    Entry deleted from font path.
[  1559.889] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist.
[  1559.890]    Entry deleted from font path.
[  1559.890] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist.
[  1559.890]    Entry deleted from font path.
[  1559.890] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist.
[  1559.891]    Entry deleted from font path.
[  1559.891] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[  1559.891]    Entry deleted from font path.
[  1559.891] (==) FontPath set to:
        /usr/share/fonts/X11/Type1,
        built-ins
[  1559.891] (==) ModulePath set to "/usr/lib/xorg/modules"
[  1559.891] (**) Extension "DPMS" is disabled
[  1559.891] (II) The server relies on udev to provide the list of input devices.
        If no devices become available, reconfigure udev or disable AutoAddDevices.
[  1559.892] (II) Loader magic: 0x215080
[  1559.892] (II) Module ABI versions:
[  1559.892]    X.Org ANSI C Emulation: 0.4
[  1559.892]    X.Org Video Driver: 25.2
[  1559.892]    X.Org XInput driver : 24.4
[  1559.892]    X.Org Server Extension : 10.0
[  1560.009] (--) using VT number 3

[  1560.009] (II) systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration
[  1560.011] (II) no primary bus or device found
[  1560.011] (II) LoadModule: "glx"
[  1560.013] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[  1560.045] (II) Module glx: vendor="X.Org Foundation"
[  1560.046]    compiled for 1.21.1.7, module version = 1.0.0
[  1560.046]    ABI class: X.Org Server Extension, version 10.0
[  1560.046] (II) LoadModule: "modesetting"
[  1560.047] (II) Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so
[  1560.060] (II) Module modesetting: vendor="X.Org Foundation"
[  1560.060]    compiled for 1.21.1.7, module version = 1.21.1
[  1560.060]    Module class: X.Org Video Driver
[  1560.060]    ABI class: X.Org Video Driver, version 25.2
[  1560.061] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
[  1560.097] (WW) Falling back to old probe method for modesetting
[  1560.098] (EE) open /dev/dri/card0: No such file or directory
[  1560.098] (WW) Falling back to old probe method for modesetting
[  1560.098] (EE) open /dev/dri/card0: No such file or directory
[  1560.098] (EE) No devices detected.
[  1560.099] (EE)
Fatal server error:
[  1560.103] (EE) no screens found(EE)
[  1560.112] (EE)
Please consult the The X.Org Foundation support
         at http://wiki.x.org
 for help.
[  1560.115] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[  1560.117] (EE)
[  1560.197] (EE) Server terminated with error (1). Closing log file.

色々チャレンジしたが結局SDにOSを焼き直したら、最新のbookwormでちゃんとGUIも起動しました。

で、ざっくりと焼き直し手順を以下に。

まずサイトからイメージ作成用のツールをダウンロードする

https://www.raspberrypi.com/software

ダウンロードが終わったらインストールする。

インストールしたアプリを起動して、OSをインストールするためのSDをパソコンに挿す。8GB位あると良いとおもう。bookwormでは最低5.4GB(Liteは2.4GB)、1つ前のbullseyeでは4.3GB必要らしい(Liteは2GB以下!)。私は16GBのものを用意しました。

アプリから使うRaspberryPiのデバイス(種類)や、インストールするOS、OSを焼き込むメディアの場所を指定する。OSはデバイスを選択するとそのデバイスで動作するものに絞って表示してくれるようなので安心。

あらかじめアカウントや、WiFiの設定をしておくことが可能

一通り終わったら、「保存」します。

「はい」を押すとツールがOSをダウンロードしながら、設定したメディアに自動で焼き込んでくれます。

作成が終わったら「継続」をおすとSDの取出しが出来る状態になっていますが、USBをつかったシリアル接続ができるように、SDのbootにあるファイルをエクスプローラで編集するので抜いてもう一度挿して以下のファイルを確認し設定をしておきます。

「cmdline.txt」の末尾に以下のように「modules-load=dwc2,g_serial」を追加する。改行を入れないよう注意。

console=serial0,115200 <> systemd.unit=kernel-command-line.target modules-load=dwc2,g_serial

次に、「config.txt」の[all]の下に「dtoverlay=dwc2」を追加する。

<>

[all]
dtoverlay=dwc2

以上で、SDの作成が完了。安全に取り外しをしてRaspberryPiZeroに挿して起動していきます。

apt upgradeでbullseyeからbookwormにした時はGUI画面がでなくなっちゃいましたが、今回は無事起動しました。良かった~

起動したら、シリアルログインできるように以下のサービスを起動時にStartするようにenableして、ついでにstartしておきます。

pi@raspberrypi:~ $ systemctl enable serial-getty@ttyGS0.service
pi@raspberrypi:~ $ systemctl start serial-getty@ttyGS0.service
pi@raspberrypi:~ $ systemctl status serial-getty@ttyGS0.service

※まだ試してないのでこれについては後日…

以下失敗

RaspberryPiZero2用の手順があったので試してみたけど失敗…画面出力が全くできなくなってしまったので起動すらできているかどうかわからない状態に…

pi@raspberrypi:~ $ curl https://download.argon40.com/podsystem.sh -o podsystem.sh
pi@raspberrypi:~ $ chmod +x podsystem.sh
pi@raspberrypi:~ $ sudo ./podsystem.sh
<snip>
********************
  Setup Completed
********************
Version 2206002
<snip>
Use 'argonpod-config' to configure device
pi@raspberrypi:~ $ sudo apt-get install build-essential \
                                        libraspberrypi-dev \
                                        raspberrypi-kernel-headers
pi@raspberrypi:~ $ sudo argonpod-config
----------------------------
ArgonPod Configuration Tool
Version 2206002
----------------------------

Choose Option:
  1. Rotate Screen
  2. Configure Buttons
  3. Install Framebuffer Copy (FBCP) Driver
  4. Set Resolution (Requires FBCP)
  5. Uninstall

  0. Exit
Enter Number (0-5):3
<snip>
Installation completed
Please reboot to apply changes

以下未実施

古いバージョンに戻す手順のようですが実施していないので不明…焼き直す前に試しておけばよかった…

pi@raspberrypi:~ $ sudo raspi-config nonint do_wayland W1

投稿日

カテゴリー:

投稿者: