ユーザ用ツール

サイト用ツール


raspberry_pi_4の再セットアップ

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
raspberry_pi_4の再セットアップ [2022/05/25 10:37] makotoa67raspberry_pi_4の再セットアップ [2022/05/27 13:51] (現在) makotoa67
行 1: 行 1:
 # ラズベリーパイ4の再セットアップ # ラズベリーパイ4の再セットアップ
 +
 +## カーネルのビルド
  
 2022/5/25実施。 2022/5/25実施。
-Ubuntu Server 21.10から、GUIを入れてセットアップしたものを用いて、カーネルビルド環境を再構築する。+Ubuntu Server 21.10から、GUIを入れてセットアップしたもの(raspi4-01)を用いて、カーネルビルド環境を再構築する。
  
 ``` ```
行 21: 行 23:
 あれ、今回は、jammyの下でmake bcm2711_defconfigすると、5.15.30という数字になった。 あれ、今回は、jammyの下でmake bcm2711_defconfigすると、5.15.30という数字になった。
 impishの下で改めてmake bcm2711_defconfigすると、、、5.13.19のまま。 impishの下で改めてmake bcm2711_defconfigすると、、、5.13.19のまま。
 +
 +raspi4-02 (8GB RAM版の方、Ubuntu Desktop 22.04でセットアップしたもの)で、make cleanしてmake bcm2711_defconfigしなおしてみると、、5.13.14となる。なぜ?
 +git cloneからやりなおしてみると、、5.13.30になった。jammyとして小さい数字から上げて行っているのかな?そして、バージョンが古かったから、例えば、GUIでフリーズするなどの問題がある、などということはあるのだろうか?
 +
 +新しくgitから取り直した環境、5.13.30の環境で、また、ビルドしてみる。
 +LOCALVERSIONをv8-custom2としてビルド。
 +
 +```
 +$ sudo apt update
 +$ sudo apt upgrade
 +$ sudo apt install git bc bison flex libssl-dev make
 +$ git clone --depth=1 git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux-raspi/+git/jammy
 +$ cd jammy
 +$ export KERNEL=kernel8
 +$ make bcm2711_defconfig
 +$ vi .config // CONFIG_LOCALVERSION="-v8-CUSTOM" と指定する→5.13.14-v8-CUSTOMというのがフルのバージョン番号
 +```
 +
 +このラズパイ4(RAM 8GB版)では、今、普通にカーネルをビルドすると、発熱によって落ちてしまっているので、ここではCPUクロックを1000MHzに制限する。
 +
 +```
 +$ sudo apt install cpufrequtils
 +$ sudo vi /etc/default/cpufrequtils # ファイルを作成
 +ENABLE="true"
 +GOVERNOR="userspace"
 +MAX_SPEED=1000000
 +MIN_SPEED=1000000
 +$ sudo reboot
 +```
 +
 +cpufrequtilsが効いているかどうかは以下のコマンドで確認できる。
 +
 +```
 +$ cpufreq-info
 +```
 +
 +クロック周波数を制限した上で、以下を実施。
 +
 +```
 +$ make -j4 Image.gz modules dtbs
 +$ sudo make modules_install
 +```
 +
 +```
 +$ sudo cp .config /boot/config-5.13.14-v8-custom
 +$ sudo cp System.map /boot/System.map-5.13.14-v8-custom
 +$ sudo chmod 600 /boot/System.map-5.13.14-v8-custom
 +$ sudo cp arch/arm64/boot/Image.gz /boot/vmlinuz-5.13.14-v8-custom
 +$ sudo chmod 600 /boot/vmlinuz-5.13.14-v8-custom
 +$ sudo mkdir /boot/dtbs/5.13.14-v8-custom
 +$ sudo mkdir /lib/firmware/5.15.30-v8-custom2
 +$ sudo mkdir /lib/firmware/5.15.30-v8-custom2/device-tree
 +$ sudo cp arch/arm64/boot/dts/broadcom/bcm2711-rpi-4-b.dtb /lib/firmware/5.15.30-v8-custom2/device-tree/
 +$ sudo chmod 755 /lib/firmware/5.15.30-v8-custom2/device-tree/bcm2711-rpi-4-b.dtb 
 +
 +```
 +
 +多分、/lib/firmware/の下に置いておけば、update-initramfsで、DTBも/boot/にコピーされるのではないか。
 +その上で、initrd.imgが生成されたのだと推測。
 +
 +```
 +$ sudo update-initramfs -c -k 5.15.30-v8-custom2
 +update-initramfs: Generating /boot/initrd.img-5.15.30-v8-custom2
 +Using DTB: bcm2711-rpi-4-b.dtb
 +Installing /lib/firmware/5.15.30-v8-custom2/device-tree/bcm2711-rpi-4-b.dtb into /boot/dtbs/5.15.30-v8-custom2/./bcm2711-rpi-4-b.dtb
 +Taking backup of bcm2711-rpi-4-b.dtb.
 +Installing new bcm2711-rpi-4-b.dtb.
 +Ignoring old or unknown version 5.15.30-v8-custom2 (latest is 5.15.0-1008-raspi)
 +```
 +
 +先にDTBをコピーしてたから、最後のメッセージが出たのだろう。
 +.bakに二重化するのもやってくれてそう。
 +
 +```
 +$ cd /boot
 +$ sudo rm initrd.img.old
 +$ sudo ln -s initrd.img-5.15.0-1006-raspi initrd.img.old
 +$ sudo rm initrd.img
 +$ sudo ln -s initrd.img-5.13.14-v8-custom initrd.img
 +$ sudo rm vmlinuz.old 
 +$ sudo ln -s vmlinuz-5.15.0-1006-raspi vmlinuz.old
 +$ sudo rm vmlinuz
 +$ sudo ln -s vmlinuz-5.13.14-v8-custom vmlinuz
 +$ sudo rm dtb
 +$ sudo ln -s dtbs/5.13.14-v8-custom/./bcm2711-rpi-4-b.dtb dtb-5.13.14-v8-custom
 +$ sudo ln -s dtb-5.13.14-v8-custom dtb
 +```
 +
 +```
 +$ cd firmware
 +$ sudo cp ../vmlinuz-5.13.14-v8-custom vmlinuz
 +$ sudo cp ../dtbs/5.13.14-v8-custom/./bcm2711-rpi-4-b.dtb bcm2711-rpi-4-b.dtb
 +$ sudo cp ../initrd.img-5.13.14-v8-custom initrd.img
 +```
 +
 +CUIで確認するとログインでき、uname -aで、自分でビルドしたカーネルで起動したことが確認できた。
 +GUIでログインできないのは、元のバージョンからそうだったので、その問題が発症したものと推測。
 +
 +## 日本語化
 +
 +以前のバージョンと、若干、見え方が異なったが、同じような感じで設定すると、日本語入力もできるようになった。
 +
raspberry_pi_4の再セットアップ.1653442665.txt.gz · 最終更新: 2022/05/25 10:37 by makotoa67