Raspberry pi 4 へOSをインストールしてみたよ! ~CentOS編~

Pocket

※以下内容はブログ公開時の2019年12月時点のものです。
最新の情報とは異なる場合がございます。

ラズパイ三昧のUNOです。

Raspberry Pi 2と3ではCentOSがインストールできましたが、Raspberry Pi 4はCentOS7のインストール情報がヒジョーに少なく、インストールイメージが公開されていないんじゃないかとい思っていました。

CentOSのフォーラムには有志の方が作られた有難いイメージファイル(https://people.centos.org/pgreco/images/forrpi4v2/CentOS-Userland-7-armv7hl-RaspberryPI-Minimal-exp4-1810-sda.raw.xz)がありましたが、正式版ではない、、と思い、使うことを躊躇っていました。

・https://www.centos.org/forums/viewtopic.php?t=71407

Re: CentOS7 Raspberry Pi 4 4GB Support
Post by pgreco » 2019/08/18 11:56:24

As @toracat said, we still don’t have support for it, but the work in progress is actually working 😀

What we have now is a regenerated image (https://people.centos.org/pgreco/images … sda.raw.xz) with firmware new enough to boot rpi4, but with a kernel that doesn’t support it

And then a kernel https://buildlogs.centos.org/c7-exp.arm … l7.armhfp/
If you boot an older rpi with that image, and update to the linked kernel, it should boot the rpi4
That process works, and has been tested by some (I should have my rpi4 to test in a few weeks).

With that said, today I generated a new image (https://people.centos.org/pgreco/images … sda.raw.xz) which mixes all the bits I said before, so it should boot.

This doesn’t mean that it is supported, or that it will be in the near future :mrgreen: , just sharing what we have so far.

Pablo.

Pabloさんありがとう。ただね、、、私の方でインストール確認しましたが、動作せず、、うーん残念。なぜ、、。

何かないかと諦めずにミラーサイトを見たら、、、、、あ??あれれ?それっぽいファイルがあるよう、、な!?

http://ftp.yz.yamagata-u.ac.jp/pub/linux/centos-altarch/7.7.1908/isos/armhfp/    (山形大学のミラーサイト。他のミラーサイトも同じはずー)

分かりにくいかもしれませんが、、抜粋

CentOS-Userland-7-armv7hl-RaspberryPI-Minimal-4-1908-sda.raw.xz
CentOS-Userland-7-armv7hl-RaspberryPI-Minimal-1908-sda.raw.xz

推測ですが、、

・CentOS-Userland-7-armv7hl-RaspberryPI-Minimal-4-1908-sda.raw.xz → Minimal の後に『4』と書いてあるので、Raspberry Pi 4用?
・CentOS-Userland-7-armv7hl-RaspberryPI-Minimal-1908-sda.raw.xz → 特に書いていないので、Raspberry Pi 2と3用??

と思っていますが、、確証がなく、ソースを求めWikiを見てみるものの、、、、

・CentOS.orgより

https://wiki.centos.org/SpecialInterestGroup/AltArch/armhfp

https://wiki.centos.org/SpecialInterestGroup/AltArch/Arm32/RaspberryPi3

とまあ、4に関しては無いのでございます。ハイ。

おそらくですが、CentOSのwikiの更新が追い付いていないんじゃないか疑惑。

で、結論ですが、【CentOS-Userland-7-armv7hl-RaspberryPI-Minimal-4-1908-sda.raw.xz】をインストールし、問題なく動きました

~~『4』と書いてあるものがRaspberry Pi 4用のイメージファイルのようです。それ以外はRaspberry Pi 2/3用っぽいですね。

ありがとう、有志の方。

Thank you for your Good works Pablo &Fabian

感謝に浸っていたところ、さっきのミラーページの『0_README.txt』を開いたら。。

These are the armhfp images for CentOS 7 release.
Consider reading https://wiki.centos.org/SpecialInterestGroup/AltArch/armhfp to understand how to use those images, as (except for RaspberryPi 2, 3, 3B+, 4 models) you’ll need to correctly setup uboot (described in the wiki page) or your board will *not* boot

思いっきり、RaspberryPi 4 と書いてありますね。readme 大切

というわけで、長い前置きでしたが、今回はRaspberry Pi 4 にCentOSをインストールする方法を記載します。

OSの設定方法以外(必要な機材とか、電源に関して)は、『Raspberry pi 4 へOSをインストールしてみたよ!(とりあえずSSH接続できるまで)』と同じなので、ここではダウンロードとインストール、設定方法のみを記載します。

1.OSのインストール

OSのインストールをします。

インストール方法は、以下の流れです

1-A.OSイメージファイルのダウンロード&解凍
1-B.OSイメージファイルを作業用PCでmicroSDカードへコピー

また、以下のものを使用しますので、あらかじめ用意しておきましょう。

Linux/Windows/Mac などの作業用PC。今回はWindows10を想定して記載します。
microSDカードリーダー

1-A.OSイメージファイルのダウンロード&解凍

まず、以下公式サイトのURLへアクセスします。

・Downloads
https://wiki.centos.org/Download

『AltArch Releases』の『armhfp (Arm32)』がRaspberry pi 4になります。ARMですもんね。

ただし、『AltArch Releases』の『armhfp (Arm32)』に『KDE image for RaspberryPi2/3』や『Minimal image for RaspberryPi 2/3』が載っていますが、これではないので、『info』を選択します

すると、CentOSのArm32アーキテクチャ用のページが表示されますので、『How to install CentOS Userland armv7hl』を選択します

項目内にある『The first thing to do is to download the appropriate image for your board. You will need at least a 4GB SD card (or larger) depending on the package selection (i.e. Minimal, GNOME or KDE) : http://mirror.centos.org/altarch/7/isos/armhfp』、このURLを選択します。

そうすると、自身の環境から近いと思われるミラーサイトが表示されますので、適当なものを選択します。

ミラーサイトを表示するとARM用のイメージファイルが表示されますので、最新版のRaspberry Pi 4用のイメージファイルを選択します。(2019年12月6日現在の最新は、『CentOS-Userland-7-armv7hl-RaspberryPI-Minimal-4-1908-sda.raw.xz』です)

※~~『4』と書いてあるものがRaspberry Pi 4用のイメージファイルのようです。それ以外はRaspberry Pi 2/3用っぽいですね。

ダウンロードしたファイルを解凍しますが、、.xzファイルを解凍可能なソフト、ということで7-Zipで解凍します。7-Zipがなければ、https://sevenzip.osdn.jp/にて7-Zipをダウンロードとインストールして利用してください。

解凍すると、『CentOS-Userland-7-armv7hl-RaspberryPI-Minimal-4-1908-sda.raw』というファイルが生成されました。

1-B.OSイメージファイルを作業用PCでmicroSDカードへコピー

コピーするためには専用のソフトウェアを利用する必要があり、今回はシリコンリナックスさんの『DD for Windows』を使用します。

・DD for Windows

http://www.si-linux.co.jp/techinfo/index.php?DD%20for%20Windows

『DD for WindowsR2』版もあるようですが、私は『DD for Windows』を使いました。

ダウンロード後、実行ファイルにカーソルを合わせ、右クリックし管理者権限で実行します。

ras_pi2_setup_2-02

DD for Windows を管理者権限で実行します。管理者権限で実行しないとうまく動作しません。

DD for Windowsを起動すると以下の画面が表示されます。

コピー先のmicroSDカードのドライブどれにするか設定するため、ディスク選択を選択します。

コピー先のmicroSDカードのドライブが選択できるので、該当ドライブを選択し、OKを選択しますます。(選択を間違えると、該当ドライブのデータがすべて消えるので注意してください。)

コピー先のドライブを選択しました。

今度は、コピー元のファイルをどれにするか設定するため、ファイル選択を選択します。

デフォルトでは、.ddiという拡張子しか表示しない設定となっているため、ファイルの種類(I)の項目でALL filesを選択します

インストールしたいOSイメージ(今回はCentOS-Userland-7-armv7hl-RaspberryPI-Minimal-4-1908-sda.raw)を選択し、開く(O)を選択します。

OSをインストールする準備ができました。選択した内容に相違がないか最終確認しましょう。

OSをインストールします。今回は『ファイル』から『ディスク』へコピー(書込)するため書込を選択します。

書き込むイメージファイルがよりSDカードの容量が大きい場合、以下の警告が表示されます。問題ないか確認し、問題なければはい(Y)を選択します。

書込みする確認が表示されます。問題なければはい(Y)を選択します。

書込むファイルが4GByteを超える場合、以下の警告が表示されます。問題はないためはい(Y)を選択します。

コピー(書込)が開始したら、完了するまでしばらく待ちます。

以下の表示がされたら、OSのコピーが完了です。

2.初期セットアップ

OSイメージのインストール後、最低限の設定を施さないと利用することはできません。

ここでは、Raspberry Pi 4 Model B の初期セットアップ方法を記載します。

2-A.必要機器の接続

初期セットアップをする前に、Raspberry Pi 4 を起動させるため、以下の機器を接続しますので、用意しておきましょう。

microSD(前項でOSをインストールしたものを取り付けます)
USB-C給電ケーブル
USB充電アダプター
Raspberry Pi 4 Model B 用ケース(あれば)
HDMIケーブルとmini HDMI – HDMI 変換アダプタ
HDMI対応ディスプレイ
USBキーボード

2-B.起動

全部を接続したら、電源を投入します。

起動すると以下の表示が流れます。Raspberry Piのロゴが4つ表示されることが分かります。CentOSもCore数分表示される状態は変わらないようですね。


起動し、以下のログインメニューが表示されれば成功です!

2-C.ログイン

以下の初期ユーザ名:パスワードを入力し、ログインします。

ユーザ名 root
パスワード centos

2-D.ネットワークの設定

※nmcliの方が良いかもなので、後日更新掛けます。。

サーバにSSHでログインするためにネットワークの設定を行います。

まず、初期パスワードでroot ユーザでログインします

その後、/etc/sysconfig/network-scripts/ifcfg-eth0ファイルを作成・編集し、ネットワークを固定化します。

※以下のIPを割り当てる場合の設定例

IP : 192.168.0.10

subnetmask : 255.255.255.0

gateway : 192.168.0.1

DNSサーバ:192.168.0.1

■設定後のファイル

設定完了後、再起動を実施しSSHにてログインできれば完了です。

以降はSSHにて接続して作業をしてみましょう。

2-E.その他設定(パスワード変更)

初期のままでは大変危険ですのでrootユーザのパスワードを変更します。
以下のコマンドを実行します

パスワードを2回要求されますので、対話画面にしたがって入力します

2-F.その他設定(パーティション拡張)

デフォルトのままですと2GまでしたかSDカードの容量を確保していない為、これを拡張します。

今回は、/を拡張する方法です。

参考までに、私の環境では以下のとおりでした

centos.orgによると。。

https://wiki.centos.org/SpecialInterestGroup/AltArch/Arm32


How to resize/expand the RootFS for the whole SD card

Depending on the SD card size you used, you will probably want to expand the RootFS (/) to the maximum capacity of the underlying SD card. For your convenience we’ve added the cloud-utils-growpart tool, packaged as an rpm file and available through the Extras repository for armv7hl.

If you just want to use/expand the whole remaining capacity, just run (either as root or as a normal user with sudo rights) the following command:


とあるので、以下のコマンドを実行します。

作業後の状態は以下の通りでした。

ということで、めでたく拡張完了です
以上、全ての最低限の設定はこれで完了です。みなさんも色々と試してみてくださいませー

UNO

CobaltサーバやBluequartz大好き、bash大好きなCLARAの中の人です。

おすすめ