前回は、動作確認のために付属のmicroSDにプリロードされていたRaspbianをインストールした。
Raspberry Piを購入した目的は既存のプロキシサーバの置き換えなのだが、こちらではCentOS7を利用している。構築の手間を省くために出来れば同じOSを使いたい、ということで、Raspberry PiにもCentOS7をインストールしていく。
OSの準備
AltArch Releases として、Raspberry Pi用のイメージが提供されているので、これを利用する。
Release Notesに以下の記載があるように、 Raspberry Pi 3 Model B+ にも対応している。
Supported armhfp boards
https://wiki.centos.org/SpecialInterestGroup/AltArch/armhfp
RaspberryPI ( model 2, model 3, model 3B+)
必要なものは、4GB以上のmicroSDカード。
付属していたmicroSDカードを使ってもいいのだが、なんとなくオリジナルは取っておきたかったので手持ちの32GBのmicroSDカードを使うことにした。
今回はサーバとして利用するので、GUIは不要。ダウンロードページの、「Minimal image for RaspberryPi 2/3」を選んでOSイメージをダウンロードする。
OSイメージのmicroSDカードへの書き込み
Release Notes の手順通り、手持ちのLinuxマシンから、microSDカードへddコマンドでイメージを書き出す。
[root@sandstone ~]# xzcat CentOS-Userland-7-armv7hl-RaspberryPI-Minimal-1810-sda.raw.xz | sudo dd of=/dev/sdd status=progress bs=4M
2839805952 バイト (2.8 GB) コピーされました, 384.950329 s, 7.4 MB/s
0+57763 レコード入力
0+57763 レコード出力
2843738112 バイト (2.8 GB) コピーされました、 385.52 秒、 7.4 MB/秒
[root@sandstone ~]# sync
これだけで、OSの準備は完了。
OSの起動
イメージを書き込んだmicroSDカードを本体に差し込んで、電源を入れる。
あっけなく起動完了。
ログイン画面を見て気づいたのだが、Raspberry Pi用のCentOS7は、カーネルがx64版とは異なる。x64版は3.10系で、こちらは4.14系。
デフォルトのrootパスワードは「centos」で決め打ちされているので、すぐに変更しておく。
[root@localhost ~]# passwd
また、初期状態ではルートのファイルシステムは1.4GB程度しか領域が確保されていないので、SDカードの全容量を割り振るために以下も実行しておく。
[root@localhost ~]# /usr/bin/rootfs-expand
ネットワークへの接続
有線LANにつなげる場合は、ケーブルをつなぐだけでいい。DHCPで勝手につながる。必要に応じて、nmtui コマンド等で固定IPアドレスを割り当てる。
なお、ここから先はSSHで接続して設定を行っている。x64版のCentOS7と同様、SSHのポート(TCP/22)は最初から開いているので、特に設定しなくても接続可能。
無線LANにつなげる
Release Notes には、ファームウェアをダウンロードしてこないと無線LANにつなげることは出来ない、的なことが書かれているのだが、実際のところ特に何もしなくても認識されているし、つなげることも出来ている。
nmtui コマンドで “Activate Connection” を選択するとSSIDが見えるので、
Activate すればつながる。
余談だが、私はものぐさなのでCentOS7のネットワーク管理は基本的にnmtuiで行っている。nmcliは必要に迫られたときにしか使いたくない。
ネットワークにつながったので、OSをアップデートしておく。
[root@localhost ~]# yum update
[root@localhost ~]# systemctl reboot
その他の設定
各種サーバソフトウェアをインストールする前に、やっておいた方がいいことがいくつかある。
有線LANのプロファイル名の変更
Raspberry Pi用CentOS7は、デフォルトの有線LANのプロファイル名が、「Wired connection 1」のようになっている。
あとで設定しやすいように「eth0」等の単純な名前に変えておいた方がいい。
私はnmtuiで変更した。
# nmtui
Edit a connection を選択して、
Ethernet の下にあるWired connection 1(画像では変更後なのでeth0になっているが)を選択して、
Profile nameを変更する。
IPv6匿名アドレスの有効化
初期状態ではIPv6匿名アドレス(一時アドレス)が有効になっていないので、プライバシーを考えたら有効にしておいた方がいいかもしれない。
# nmcli connection modify wl_50 ipv6.ip6-privacy 2
# nmcli connection down wl_50
# nmcli connection up wl_50
# nmcli connection show wl_50 | grep ip6-privacy
一番最後のコマンドの結果が、(enabled, prefer temporary IP) となっていればOK。
ちなみに、nmcliコマンドで指定するのはデバイス名ではなくプロファイル名である。何も考えずに無線LANに接続すると、SSIDがそのままプロファイル名になっているはず。
タイムゾーンの設定
初期状態ではUTCになっているので、日本時間に変更しておく
# timedatectl set-timezone Asia/Tokyo
リソースの使用状況
GUIのRaspbianでは起動時に85MBほどメモリを使用していたが、CUIではどうかというと、
[root@rppx ~]# free -h
total used free shared buff/cache available
Mem: 927M 43M 753M 11M 129M 827M
Swap: 487M 0B 487M
ほぼ半分の43MB。
ディスクの使用量については、
[root@rppx ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 28G 991M 27G 4% /
devtmpfs 460M 0 460M 0% /dev
tmpfs 464M 0 464M 0% /dev/shm
tmpfs 464M 12M 452M 3% /run
tmpfs 464M 0 464M 0% /sys/fs/cgroup
/dev/mmcblk0p1 667M 43M 625M 7% /boot
tmpfs 93M 0 93M 0% /run/user/0
約1GB程度といったところ。サーバとして使うには無駄が少なく良い感じである。
もっと手こずるかと思っていたが、CentOS7のインストールとネットワークへの接続は割とスムーズに行うことが出来た。
次は、プロキシサーバとして使うためのソフトウェアのインストールなどを行っていく。
コメント