Raspbian(Jessie)のインストール for HAM
今や文献の非常に多い Raspberry Pi ですが、アマチュア無線用に *1G4KLX の公開ソフトウェアが利用できるよう最小限の構成で、最新の Raspbian(Debian 8 Jessie) をインストールしてみたいと思います。
*1 ircDDBGateway, DStarRepeater, DummyRepeater, MMDVMHostなどが有ります。
OS のイメージを書き込んだSDカードで立ち上げる
●Raspbianをダウンロード
- Raspberry Pi Downloads のサイトを表示します。(図をクリックしても表示できます)
- 「Raspbian Jessie」「Raspbian Jessie Lite」が選択できますので、今回は軽いLiteのボタン[Download ZIP]をクリックしてダウンロードします。
- 適当なフォルダ(デスクトップなど)で解凍するとフォルダが作成され、中に「2015-11-21-raspbian-jessie-lite.img」というイメージファイルが出来ます。
画面上の[RASPBIAN]アイコンをクリックします。
最新の物がアップロードされていますので 2015-11-21- の部分は更新されます。
●イメージを microSD に焼く
今回は 4GB の microSD を使用しましたが、目標であるアマチュア無線用通信ソフトとその運用状況を見ることが出来るWEBを立ち上げても 1.7GB しか使用していませんでした。単純目的ならば 4GB の microSD でも充分です。勿論 8GB や 16GB の容量も使用可能です。(初期の Raspberry Pi の場合、SD カードと読み替えてください。)
- DD for Windows などのツールを使って 2015-11-21-raspbian-jessie-lite.img を microSD カードに焼きます。
- 10分ほどで完了します。
ファイル選択ダイアログでフォルダを開いても何も表示されませんので,[ファイルの種類]のドロップダウンメニューで[All files]に切り替えてください。
4GB を越えるmicroSDカードを使用した場合、書き込み開始前に「4GB を越えています」の注意が表示されますが、後でフルサイズ使えるようにするユーティリティを使用して拡張します。
●Raspbian の起動
出来るだけ、専用の周辺機器(ディスプレイ、キーボードなど)を必要としないようにすべての操作をWindowsパソコンからのリモートで出来るようにします。
ただ、IPアドレスを知るために一度だけディスプレイを使用します。
- microSD を Raspberry Pi にセットして、HDMI にディスプレイを接続します。
- 図のような状態で IPアドレスが確認できますので、今後リモート(ssh)でこのアドレスを使用します。
5V電源をマイクロUSB端子に接続して、オンにすると、ログインプロンプトまで起動して止まります。
:
My IP address is 192.168.10.10
[ OK ] Started /etc/rc/local Compatibility.
Starting Terminate Plymouth Boot Screen…
:
:
[ OK ] Started Update UTMP about System Runlevel Changes.
Raspbian GNU/Linux 8 raspberrypi tty1
raspberrypi login: _
勿論、このままキーボード・マウスも取り付けて実機で作業しても問題ありません。今回はそう言う機材が無い場合に則して進めたいと思います。
なお、このディスプレイも不要な方法として、スマートフォン(Android)向けのFingと言うネットワークツールを使用すると同じルータに接続しているすべてのIPアドレスを表示してくれます。
●SSH を有効にする
- 先ずログインします。
- SSH が今後の立ち上げ時、自動起動するようにします。
既定のログインIDは pi、パスワードは raspberry です。
$ sudo reboot
●SSH で Windows から Raspberry Pi にアクセス
Raspbian 側には SSHサーバが標準で稼働しています。SSHクライアントとして、私は Windows に PuTTY をインストールしています。接続先を予め登録できますのでとても便利です。詳しくは次のURLをご参照ください。http://hp.vector.co.jp/authors/VA024651/PuTTYkj.html
- PuTTY から SSH を実行
- [PuTTY Security Alert]のダイアログが表示されます(環境が変わったりしたとき最初に一度だけ)ので[はい]をクリックしてください。
- 初期ID: pi, パスワード: raspberry を入力します。
PuTTYの[ホスト名(または IPアドレス)]に、先に確認したIPアドレスを入力、また[ポート]は 22 になっていることを確認したら[ 開く ]をクリックします。
pi@192.168.10.10’s password: raspberry
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Tue Feb 9 08:18:09 2016 from 192.168.10.101
pi@raspberrypi:~ $
これで、Raspbian のコンソールに入れました。直接実機で作業する場合も以後同じ要領です。
機能の追加と構成の変更
●SDカード容量をすべて使用できるようにする
- 標準装備の「環境設定ツール raspi-config」を使う
- 1 Expand Filesystem を実行します。
- 拡張作業が一瞬に終了してメニューに復帰しますので、<Finish>を選択・決定すると次の画面が表示されます。
グラフィカルなツールが表示されますが、移動はカーソル・キー、ボタン選択はTABキー、決定はSPACEキーやENTERキーを使用します。
7 Advanced Options Configure advanced settings を選択して[Enter]を押すと、サブメニューが表示され
A1 Expand Filesystem Ensures that all of the SD card storage が選択されていますので、<Select>を選択して決定します。
┌─────────────────────────────────────────┐
│ Would you like to reboot now? │
│ │
│ │
│ │
│ │
│ │
│ <Yes> <No> │
│ │
└─────────────────────────────────────────┘
リブート後フルサイズが使用可能となります。
●新しいユーザの作成と権限の付与
- ログインしたらルート権限を取得します。(管理者になる)
- 新しいユーザの作成
- 次に、新しいユーザの権限・属性を pi と同じに設定します。
- 新しいユーザでコマンド sudo を実行したときの動作を規定します。
- 一旦リブートする前にしておくと良いこと
- 新しいユーザ username でログインします
これ以後 pi@raspberrypi:~ $ を単純に $、管理者になった後の root@raspberrypi:/home/pi# を # と表します。なお、新しいユーザ名は username と表しますが、適当なものに変えてください。大文字だと –force-badname のオプションを必要とします。またパスワードは大文字・小文字を区別します。
Enter new UNIX password: NewPassword
Retype new UNIX password: NewPassword
詳細なプロファイルには何も入力しなくてもユーザは作成されます。
uid=1000(pi) gid=1000(pi) groups=1000(pi),4(adm),20(dialout),24(cdrom),27(sudo),29(audio),44(video),46(plugdev),60(games),100(users),101(input),108(netdev),999(spi),998(i2c),997(gpio)
# usermod -G 4,20,24,27,29,44,46,60,100,101,108,999,998,997 username
pi について規定されているラインの pi を 新しい username に置き換える
GNU nano 2.2.6 File: /etc/ssh/sshd_config
# See the sshd_config(5) manpage for details
# What ports, IPs and protocols we listen for
Port 22 # 22222などに変更可
# nano /etc/hostname
それぞれのファイル内にあるホスト名 raspberrypi を任意のものに変更できます。(例:desktop01)
この結果コンソールのプロンプトは username@desktop01:~ $ となって複数の RaspberryPi がある場合など判別しやすい。
# deluser pi # 旧ユーザ pi を削除
# rm -rf /home/pi # 旧ユーザ pi のフォルダを削除
# exit # root権限から抜ける
●Raspbian をアップデートします
- 更新ファイルのダウンロード先の設定を変更します。
- アップデート可能ファイルのリストを最新にして、更新を適用します。
- Raspberry Pi のファームウェア自体のアップデートをします。
- ここで使用する言語(ロケール)とタイムゾーンも設定しておきます。
GNU nano 2.2.6 File: /etc/apt/sources.list
# Uncomment line below then ‘apt-get update’ to enable ‘apt-get source’
deb-src http://archive.raspbian.org/raspbian/ jessie main contrib non-free rpi
3行目のコメントアウトシンボル # を外します。(その行が有効になります。)
$ sudo apt-get upgrade -y
$ sudo reboot
$ sudo rpi-update
$ sudo reboot
Generating locales (this might take a while)…
en_US.UTF-8… done
ja_JP.UTF-8… done
Generation complete.
[ * ] en_GB.UTF-8 UTF-8 が選択されていますのでスペースキーで選択を解除して、[ * ] en_US.UTF-8 UTF-8 [ * ] ja_JP.UTF-8 UTF-8 の2つを選択し直します。さらに、デフォルトに en_US.UTF-8 を選択して < OK > します。容量の問題で日本語にせず、£ の表示が不要なため en_US モードにします。
Asia < OK >, Tokyo < OK > と選択します。
●追加の機能をインストールします
- まず、いくつか思いつくものを列挙してインストールします。
- 前述したようにデスクトップの比較的軽いものをインストールします
lightdm はディスプレイに表示するためのモジュールです。(デスクトップも後でインストールします。)x11vnc はリモートデスクトップと提供します。Chkconfig は私の慣れのためで debian 標準のコマンドがあります。htop はキャラクターベース(CUI)でリソースの変化が監視出来ます。また、tcpdump は敢えて必要とはしませんが無線用データの流れを確認できます。php5 は動的なWEBを作成するためにインストールします。これをインストールすると apache2 も同時にインストールされ設定の手間が省けます。(不要なものは省いて何ら問題ありませんが、今回の説明上黄色文字のものは必要)
この組み合わせぐらいが必要最小限で、ちょうど良いのではと思われます。もちろん音楽・ビデオ・オフィスアプリなども入っていません。
●リモートデスクトップの環境を整えます。
- まず、リモートデスクトップでログインするときのパスワードを登録します。
- つぎに、ログインユーザを lightdm に対して登録します。
- GUIで立ち上げたときのデスクトップサイズを変更します。
- これで環境設定は終わりましたので、リモートデスクトップ(x11vnc)をテストします。
パスワードを2回入力する以外は[Enter]のみでOKです。標準で所定の場所にパスワードが保存されます。
GNU nano 2.2.6 File: /etc/lightdm/lightdm.conf
この行の先頭にあるコメントアウト # を削除します(この行を有効にする)。
GNU nano 2.2.6 File: /boot/config.txt
framebuffer_height=720 #コメントを外す
サイズも調整可能です。私の使用しているディスプレイは4対3(1600×1200)ですので、1280×960 にしてデスクトップ上にデスクトップを浮かせて使用しています。
Windows 側から VNC クライアント(例えばRealVNC)を実行します。RaspberryPi の IPアドレスに接続、先に設定したパスワードを入力すればデスクトップが表示されます。
今回大きく変わった固定IPアドレスの設定方法
- 次のファイルを編集します。
- 新しいアドレスを有効にします
GNU nano 2.2.6 File: /etc/dhcpcd.conf
static ip_address=192.168.10.10/24
static routers=192.168.10.1
static domain_name_servers=192.168.10.1
これらの記述をファイルの行末に書き加えます。
これを実行した瞬間 SSH の接続は切れますので、設定し直した新しいIPアドレスで接続し直してください。
これで、Debian 8(Jessie)版の Raspbian が稼働する Raspberry Pi の構築が完了しました。勿論いろんな用途に利用できますが、それは他の文献に委ねるとして、アマチュア無線用(特にD-STAR)にご興味のある方は こちら(D*Star Network)も是非ご覧ください。