19
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ラズパイに Ubuntu 20.04-LTS(64bit) をインストールする

Last updated at Posted at 2020-08-07

はじめに

Raspberry Pi だとRaspberry Pi OS(以前はRaspbian)をインストールすることを
最初に考えると思いますが、Ubuntuをインストールすることもできます。

使おうと思っているツールやライブラリによっては、Raspberry Pi OSをサポートしていないけど、
Ubuntuはサポートしているということもあります(例えば kubernetes とか)。

そこで、Raspberry Pi 4 Model B にUbuntu 20.04 LTS(64-bit) for Raspbeery Piをインストールします。
また、ときにはGUI環境も必要になることもあるかと思いますので、GUI環境も構築します。
(例えば Google Colab のインスタンスを維持させたい場合とか。)

1. Ubuntu のインストール

Install Ubuntu Server on a Raspberry Pi 2,3 or 4にRaspberry Piのイメージがあるので、
Ubuntu 20.04 LTS(64-bit) for Raspbeery Piをダウンロードします。

OSイメージのダウンロードが完了したら、解凍しmicroSDカードに書き込みます。

~/Downloads ❯❯❯ xz -dv ubuntu-20.04-preinstalled-server-arm64+raspi.img.xz
ubuntu-20.04-preinstalled-server-arm64+raspi.img.xz (1/1)
  100 %     667.0 MiB / 3,054.4 MiB = 0.218    92 MiB/s       0:33

OSイメージの書き込みには、こちらにもある通りに、Raspberry Pi imager というツールがあるそうですが、
私のノートPCはUbuntuなので、ddコマンドで書き込みます。書き込みツールは何でも構いません。

~/Downloads ❯❯❯ sudo dd if=ubuntu-20.04-preinstalled-server-arm64+raspi.img of=/dev/mmcblk0 status=progress
3201147392 bytes (3.2 GB, 3.0 GiB) copied, 622 s, 5.1 MB/s
6255474+0 records in
6255474+0 records out
3202802688 bytes (3.2 GB, 3.0 GiB) copied, 627.603 s, 5.1 MB/s

2. 事前設定

設定は簡便化のため、ヘッドレス(ディスプレイ・キーボード接続なし)で行います。
その方法はHow to install Ubuntu on your Raspberry Piに記載されているので、簡単です。
また、こちらも参考になります。

OSイメージを書き込んだmicroSDカードを抜き差しすると、以下のパーティションが自動でマウントされます。

~/Downloads ❯❯❯ df -k
...
/dev/mmcblk0p2   2754000   1813920    780472  70% /media/$USER/writable
/dev/mmcblk0p1    258095     62017    196079  25% /media/$USER/system-boot

IPアドレス、DNSサーバの設定をします。

~/Downloads ❯❯❯ cd /media/$USER/system-boot
/m/n/system-boot ❯❯❯ vim network-config
version: 2
ethernets:
  eth0:
    dhcp4: no
    addresses: [<IP-ADDRESS>"/"<PREFIX-LENGTH>]
    gateway4: <GATEWAY-IP-ADDRESS>
    nameservers:
      addresses: [<DNS1-IP-ADDRESS>,<DNS2-IP-ADDRESS>]
    optional: true

次にホスト名の設定をします。

/m/n/system-boot ❯❯❯ vim user-data
fqdn: <HOSTNAME>
chpasswd:
  expire: false
  list:
  - ubuntu:ubuntu

ちなみにログインするためのアカウントは以下です。

  • user: ubuntu
  • pass: ubuntu

3. ログインしたらすること

作成したmicroSDカードをラズパイに挿入し、ラズパイの電源を入れたら
sshでログイン(user:ubuntu,pass:ubuntu)します。
あと、手元のPCで作成したSSHの秘密鍵のパスフレーズを無しにした公開鍵を
ラズパイにコピーして、ログインしやすくしておきます。

~/Downloads ❯❯❯ ssh ubuntu@<IP-ADDRESS>
~/Downloads ❯❯❯ scp ~/.ssh/id_rsa.pub ubuntu@<IP-ADDRESS>:
ubuntu@colab:~$ cat id_rsa.pub >> .ssh/authorized_keys
ubuntu@colab:~$ rm -f id_rsa.pub

接続したら、まずはパッケージを更新しておきます。

ubuntu@colab:~$ sudo apt update && sudo apt upgrade -y

時間の設定もしておきます。

ubuntu@colab:~$ sudo timedatectl set-timezone Asia/Tokyo
ubuntu@colab:~$ timedatectl
               Local time: Mon 2020-07-06 22:13:48 JST
           Universal time: Mon 2020-07-06 13:13:48 UTC
                 RTC time: n/a
                Time zone: Asia/Tokyo (JST, +0900)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

4. GUI環境の構築

こちらを参考にLubuntuをインストールします。
なぜ、Lubuntuかと言うとこちらによると、
Lubuntuが最も軽いデスクトップとのことだからです。

ubuntu@colab:~$ git clone https://github.com/wimpysworld/desktopify.git
ubuntu@colab:~$ cd desktopify/
ubuntu@colab:~/desktopify$ ./desktopify --help

Usage
  ./desktopify --de <desktop environment>

Available desktop environments are
  lubuntu
  kubuntu
  ubuntu
  ubuntu-budgie
  ubuntu-kylin
  ubuntu-mate
  ubuntu-studio
  xubuntu

You can also pass the optional --oem option which will run a setup
wizard on the next boot.
ubuntu@colab:~/desktopify$ sudo ./desktopify --de lubuntu

また、ラズパイとデスクトップ共有をするために、
LubuntuXrdp(リモートデスクトップサーバ)をインストールします。

ubuntu@colab:~$ sudo apt install -y xrdp

さらに、Webブラウザもインストールしておきます。

ubuntu@colab:~$ sudo apt install -y chromium-browser

まとめ

以上で、ラズパイにUbuntuをインストールし、基本的なGUI環境を構築できました。
Google Colabとのセッション維持のためにGUI環境やブラウザをインストールしたラズパイを使えますし、
kubernetesの環境をローカルで試してみたい場合にはGUIなしのラズパイも使えます。
用途に応じて、GUIの有無を自由にできるのも便利です。

References

19
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
19
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?