スポンサーリンク

Raspberry Piにubuntu server 18.04 LTSを入れてみた

 ubuntuについて

2018年4月26日に英Canonicalから、長期サポート版(Long Term Support、LTS)のLinuxディストリビューション「Ubuntu 18.04 LTS(Bionic Beaver)」が公開されました。
2023年4月までの5年間、セキュリティアップデートが提供されます。

これに伴い、Raspberry Pi用のイメージファイル「ubuntu core」も公開されましたので、早速入れてみましたので、その手順を残しておきたいと思います。
初期作業の環境は、Windows 7で行っています。

 準備するもの

基本的には、2016年1月に投稿した「Raspberry Pi 2にCentOS 7をインストール」で使用したものとなります。

昨年の4月に購入したものの何も手をつけないまま、ほったらかしにしていた「Raspberry Pi 2」をサーバーとして運用しようと色...

ただし、MicroUSB電源については、新たに電源スイッチ付きのACアダプターを購入しています。電源の抜き差しよりも簡単に、電源オン/オフができるため、おすすめです。

 OSイメージの入手

OSイメージは、下記のサイトから入手できます。

Raspberry Pi 2用は、公式のイメージですが、Raspberry Pi 3用のイメージファイルは非公式となっています。そのうち公式として公開されると思われます。今回は、Raspberry Pi 2用を使用した導入手順となります。

 イメージの展開

イメージの展開についても、CentOSのときと同様に7-Zipで展開できます。Linux上での展開方法については、ダウンロードサイトの「Installation」に記載されています。

 イメージファイルをmicroSDへ書き込み

microSDをUSB変換アダプタに挿入し、作業するPCに接続します。
次にmicroSDを「SDメモリカードフォーマッター」にて、初期化します。

フォーマット後、一度microSDを取り出した後、再度PCに接続します。
次に上記で展開したイメージファイルをmicroSDへ書き込みます。私は、前回同様に「Win32DiskImager」を使用しました。
もちろん「DD for Windows」でも問題ありません。

 Raspberry Pi 2を起動

上記の準備が整ったら、microSDをRaspberry Pi 2へセットし、ACアダプタをコンセントへ差し込んで起動します。

ここで気を付けていただきたいのが、今回購入した電源スイッチ付きACアダプターを使用する場合のスイッチ動作ですが、 ボタンを押した状態が「オフ」となり、ボタンを押し上げた状態が「オン」となります。

また、Raspberry Pi 2用の仕様なのかは不明ですが、画面に表示されるまで30秒強掛かりました。最初は、イメージファイルの作成が失敗しているのかと思いましたが、しばらく待ってみたら、いつもの画面上部にラズベリーが4つ出て、起動時の情報が一気に流れていき、ログイン状態となりました。

ログインは、以下の通りです。

ユーザー名:ubuntu
パスワード:ubuntu

 パスワードの変更

ログイン後、直ぐにパスワードの変更を即されます。変更を行わないと先に進めなかったので、変更しておきます。

 SSH接続

ubuntu core 18.04 LTS では、デフォルトでopensshがインストールされていますので、ifconfigにてIPアドレスを確認後、改めてWindowsのTeraTermから接続します。

 パーティションサイズの変更は不要

今回、ubuntuを導入するための情報収集をしていて、前バージョンでは、パーティションの拡張を行う必要があったようですが、新バージョンの18.04では、その必要がありません。

 初期設定

スーパーユーザーへスイッチする場合は、下記のコマンドを実行します。

ubuntu@ubuntu:~$ sudo -s

次にデフォルトのエディタを「nano」から「vi(vim)」に変更します。
「3」の「/usr/bin/vim.basic」を指定します。

ubuntu@ubuntu:~$ sudo update-alternatives --config editor
There are 4 choices for the alternative editor (providing /usr/bin/editor).

  Selection    Path                Priority   Status
------------------------------------------------------------[]
* 0            /bin/nano            40        auto mode
  1            /bin/ed             -100       manual mode
  2            /bin/nano            40        manual mode
  3            /usr/bin/vim.basic   30        manual mode
  4            /usr/bin/vim.tiny    15        manual mode[]

Press  to keep the current choice[*], or type selection number: 3
update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/editor (editor) in manual mode

viエディタ上に行番号を表示させたい場合は、下記のコマンドを実行します。

ubuntu@ubuntu:~$ echo "set number" >> ~/.exrc

ホスト名の変更は、下記のファイルを編集します。 デフォルトの「ubuntu」を任意の名称へ変更します。

ubuntu@ubuntu:~$ sudo vi /etc/hostname

 ネットワーク設定

初期の状態では、dhcpによる動的アドレスが割り当てられるため、これを固定アドレスに変更します。前バージョンにおいて、ネットワークを設定する際のファイルは、/etc/network/interfaces でしたが、18.04からは「/etc/netplan/50-cloud-init.yaml」に変更されています。
なので、/etc/netplan/50-cloud-init.yaml を以下のように変更します。

ubuntu@ubuntu:~$ sudo vi /etc/netplan/50-cloud-init.yaml
network:
    version: 2
    ethernets:
        eth0:
            dhcp4: false ← true を false に変更
            match:
                macaddress: **:**:**:43:**:b3
            set-name: eth0
~以下を追加~
            addresses:
            - 192.168.0.123/24
            gateway4: 192.168.0.1
            nameservers:
                addresses:
                - 192.168.0.1
~ここまで~

設定内容を反映するには、下記コマンドを実行します。

ubuntu@ubuntu:~$ sudo netplan apply

変更は、即反映され、再起動する必要もありません。ですが、TeraTermから接続している場合は、反応が無くなりますので、TeraTermを一度終了させてから、再度、変更したIPアドレスで接続し直します。

 ロケール、キーボード、日時の設定

・ロケールの設定

ubuntu@ubuntu:~$ sudo locale-gen ja_JP.UTF-8
ubuntu@ubuntu:~$ echo "LANG=ja_JP.UTF-8" | sudo tee /etc/default/locale
ubuntu@ubuntu:~$ sudo dpkg-reconfigure -f noninteractive locales

・キーボードの設定

ubuntu@ubuntu:~$ sudo localectl set-keymap jp106
ubuntu@ubuntu:~$ sudo localectl set-keymap jp-OADG109A
ubuntu@ubuntu:~$ sudo dpkg-reconfigure -f noninteractive keyboard-configuration
ubuntu@ubuntu:~$ cat /etc/default/keyboard

・日時の設定

ubuntu@ubuntu:~$ sudo timedatectl set-timezone Asia/Tokyo
ubuntu@ubuntu:~$ sudo timedatectl

 GPUファームウェアとブートローダファイルの更新

「ARM/RaspberryPi – Ubuntu Wiki」で、下記に説明されている手順を実施します。

GPU firmware and bootloader files

ubuntu@ubuntu:~$ wget http://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/raspberrypi-bootloader_1.20180417-1_armhf.deb
ubuntu@ubuntu:~$ dpkg-deb -x raspberrypi-bootloader_1.20180417-1_armhf.deb /tmp/pi-bootloader

ubuntu@ubuntu:~$ sudo apt remove linux-firmware-raspi2
ubuntu@ubuntu:~$ sudo cp /tmp/pi-bootloader/boot/* /boot/firmware/

ubuntu@ubuntu:~$ sudo reboot

ひとまず、これで導入は完了です。
他にもあれば、それぞれ設定およびインストールしてください。以降、マルチキャストDNS(avahi-daemon)やntp(chrony)などのサービスをインストールしていこうと思います。