raspberry pi4にubuntu 19.10を入れた話

こんにちは
カシマです。

最近ブログがすっかりご無沙汰ですが、コロナにも負けず生きてます。

今回はraspberry pi4にubuntu 19.10を入れた話をまとめておこうと思いました。
本来はManjaroを入れる予定だったのですが、日本語でセットアップしてたら根負けしたのでやめ、ubuntuでいいや、となりました。
GUIも入れようかと思ったけど、まあターミナルつながればいっかってな具合でめんどいからGUIのインストールは辞めました。

raspberry pi4はSSDにしようかと思ったのですが、何やら環境面でのセットアップが面倒そうだったので壊れたらまた同じ手順踏んでセットアップすっかと考えたのですが、そのためにまたぐぐり直すの…?と思ったので先にメモってしまえ!となり、取り急ぎブログ化することに。
触発されたのはサルできカワサキさんに触発されてですが、ラズパイ購入のきっかけはセキュリティアカデメイアipusironさんなんですが、それもこれもBOINCでコロナ解析で少しでも貢献しようと思ったからです。

ちなみにケースはSmrazaの クリアケースタイプを使いましたが、非常に怪しい日本語で「大丈夫か?」と心配しましたが、全然問題なく動作しています。
ファンも良い感じに5Vで回っており、ヒートシンクも良い感じでできているのでお勧めしたいと思います。
ケースを探すのに金曜日は3時ごろまで起きててだいぶヤバかったですが。。。(笑)

さて、以下でささっとやったことをメモっていきます。

microSDの準備

raspberry pi4にいきなり挿しても何も起こりませんので、まずはmicroSDにOSを入れます。
入れ方は2通りあるのですが、困ったことに片方のやり方はraspberry pi4のために用意したubuntuが4GB制限で起動しないことがわかりましたので割愛します。

事前準備としては以下の三つです。

作業環境としては mac OS 10.15.4 (Catalina) で実施しています。

「焼くならddコマンドでいいじゃん」と思いがちですが、先に記述した通り、メモリ制限を3GBに変更した上で起動するためddコマンドでは事前準備が行えません。
microSDへのコピー方法は、拡張子を ubuntu-19.10.1-preinstalled-server-arm64+raspi3.img に変更した上で、balenaEtcherを使用するだけなので割愛します。
microSDへの書き込みが終わったらターミナルを開き、以下のコマンドを実行します。

まずは念のためmount作業をターミナルで実施します。

% sudo diskutil list
/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *124.7 GB   disk2
   1:             Windows_FAT_32 BOOT                    98.6 MB    disk2s1
   2:                      Linux                         124.6 GB   disk2s2

% sudo diskutil mountDisk /dev/disk2s1
% echo total_mem=3072 >> /Volumes/system-boot/usercfg.txt

ぼくの自宅の環境はWiFi環境があるためraspberry pi4を起動時に無線LANでネット接続できるようにしてあげます。

% vi /Volumes/system-boot/network-config
ethernets:
  eth0:
    dhcp4: false
    dhcp6: false
    optional: true
    addresses: [192.168.xxx.3/24]
    gateway4: 192.168.xxx.1
    nameservers:
      addresses: [192.168.xxx.1]
      search: []
wifis:
  wlan0:
    dhcp4: false
    dhcp6: false
    optional: true
    addresses: [192.168.xxx.2/24]
    gateway4: 192.168.xxx.1
    nameservers:
      addresses: [192.168.xxx.1]
      search: []
    access-points:
      SSID-Name:
        password: "SSID Password"

そのまんまの記述ですが、dhcpなどは使用せず、LANの固定IPを設定し、SSIDに接続できるように設定します。
addressesのところの [] がやや不安でしたが、そのまんま記述でOKです。
SSID-Nameのところもそのままご自宅のSSID名を記述し、passwordの”SSID Password”はダブルコーテーション(“)で括ってある状態でSSIDのパスワードを入れればOKです。

事前準備はここまででmicroSDをunmountします

% sudo diskutil unmountDisk /dev/disk2

あとは Raspberry pi4にmicroSDを差し込んで、USB Type-Cを差し込めば起動開始します。
ぼくはmicro HDMIからHDMI変換するケーブルを使い、ディスプレイに表示させながらこの後の作業を実施しています。

起動した後の作業

起動が完了すると以下のようなメッセージが表示されるため、ログインします。

Ubuntu 19.10 ubuntu tty1
ubuntu login:

ユーザ名とパスワードは ubuntu を入力します。
ログインに成功すると初期パスワードからの変更を求められます。
この時キーボードレイアウトがus配列のキーボードであることにご注意ください。

うまくログインできている場合は、以下のコマンドでネット接続できているか確認します。

% curl httpbin.org/ip

これで自分が使っているIPが結果表示されればネット接続はOKです。
あとはOSやミドルウェアのアップデート、メモリ制限の解除、キーボードレイアウトやshellのlocale変更を実施します。

lcoaleなどの基本的な変更は以下のようになります。

% sudo apt update && sudo reboot now
% sudo apt install language-pack-ja
% sudo locale-gen ja_JP.UTF-8
% sudo dpkg-reconfigure -f noninteractive locales
% echo "LANG=ja_JP.UTF-8" | sudo tee /etc/default/locale
% sudo timedatectl set-timezone Asia/Tokyo

現状のままの直接操作は文字化けするためSSH経由のみ日本語になるように調整する

% vi ~/.bashrc

ファイルの内容はこんな感じです。

case $TERM in
    linux) LANG=C ;; 
    *) LANG=ja_JP.UTF-8 ;;
esac

viコマンドで以下のファイルを書き換え、キーボードレイアウトを変更します。

% vi /etc/default/keyboard

XKBLAYOUT="us" から XKBLAYOUT="jp" に変更します

メモリ制限を元に戻します。

% sudo vi /boot/firmware/usercfg.txt

total_mem = 3072 を削除します。

最後にパッケージのアップデート作業と再起動を行えば完了です

% sudo apt upgrade && sudo reboot now

これで、まずは下準備の全てが完了したことになります。
次からこの記事を読めばぼくは幸せになるはずです。

まとめ

ここまで来るのに11:00から16:00まで費やしてたので、もう疲れた。
BOINCはこれからやりまーす!

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

%d人のブロガーが「いいね」をつけました。