2017-11-29

Asterisk の再セットアップ -- Raspbian STRETCH をクリーンインストールする


Raspberry Pi 3 model BRaspbian STRETCH 版をクリーンインストールしましたので、Asterisk も再セットアップします。

当初 Asterisk Jessie 版で apt-get ではうまく落ちてくれなくて(動かそうとするとエラーがでまくり)、当時のパッケージ版の最新版を make && make install して落と込みました。

その後、現在の PIXEL 版が出てきて、クリーンインストールが好ましい、ということでこれを Jessie 版と同じ手順で落とし込んで使っていました。

今回、STRETCH 版を使うにあたり、apt-get で落とし込んでみようとトライしました。

➡ 最初は問題なさげに思えたのですが、Asterisk が謎のクラッシュをします。
 ネットで調べると、類似のクラッシュはバージョン13 で発生している模様。

 二度、やり直しましたが、やはりクラッシュします。
 この時点で apt-get でインストールすることは諦めました。

 apt-get だと、2〜3分で Asterisk のインストールが終わりますが、ソースからの ./configure,  make && make install だと小1時間かかります。 

仕方ありませんからパッケージ版を make && make install することにしました。




PC 側の作業で使ったのは Mac です

Windows は microSD への焼き込みに際して、フォーマットするツールが違うかも知れません。
Windows 機がないのでわかりません(スミマセン)。

類似のツールを使ってください。

ターミナルコマンドも微妙に違うかも知れません。


-------------------------------------------------------------------------------------------
❏ Raspbian STRETCH をクリーンインストールする ⇐ いまココ
 Asterisk をインストールする
❏ googletts.agi を使ってみる
❏ Asterisk にボイスメールを設定する
❏ Asterisk で FAX 送受信してみる
❏ Asterisk の各種設定ファイル
-------------------------------------------------------------------------------------------


Raspbian STRETCH をクリーンインストールする


Raspbian の公式サイトにはクリーンインストールが推奨、とありますから、PIXEL 版からのアップデートではなく、クリーンインストールしていきます。


準備作業は PC 側(Mac)での作業です。

後々リモートで設定変更作業などができるように、あらかじめ、RealVNC を落とし込んでおくといいでしょう。

Jessie 版では TinyVNC と ssh はデフォルトで使用できるようになっていましたから、ディスプレイ/KB/マウスがなくても PC からリモートでセットアップできたのですが、PIXEL 版と今回の STRETCH 版は  RealVNC に変わったため、最初からリモートでの作業はできません。

これらの設定を終えてからでないとリモート作業は行えません。


そのため、Raspberry Pi にはディスプレイ(HDMI-IFのもの)/KB/マウスが必要です。




【準備作業1】 -- microSD カードの準備と Raspbian を入手する

最初に、落とし込む microSD カード(SHDC以上)を準備します。
容量は 16GB もあればいいでしょう。
最低 8GB 必要ですが、メモリ素子エラー時の代替メモリ領域が確保できる 16GB がいいと思います。

新品であれば初期化は不要です。
そうでなければ初期化します。
初期化は SDFormatter を使います。
初期化の場合「論理整合性はオフ」にして初期化します。


 https://www.raspberrypi.org/downloads/raspbian/

から、RASPBIAN STRETCH WITH DESKTOPzip 版をダウンロードします。

2017-11-15 現在の最新版は 1.6GB ほどですが、なぜかダウンロードサイトが遅くて 20分くらいかかります。

ダウンロードした 2017-09-07-raspbian-stretch.zip を解凍して .img ファイルを取り出します。




【準備作業2】 -- microSD カードに .img を焼き込む

PC のターミナルを起動し、microSDカードのディレクトリを確認します。


 MacBookAir:~ xxx$ df -h
 Filesystem    Size   Used  Avail Capacity iused ifree %iused Mounted on
 〜
 〜
 /dev/disk3s1 30Gi 2,4Mi   30Gi    1%       0       0   100% /Volumes/NO NAME
   MacBookAir:~ xxx$

ここでは、最終行に表示の /dev/disk3s1 が対象の microSD カードです。容量やデバイス名などを見て判断します。

例の場合、「…3s1」の「s1」はパーティションです。初期化しても1個はパーティションができていると思いますが、Raspbian は /dev の先頭から焼き込まないと起動しません。
パーティションに焼き込んでも NG になりますので注意が必要です。

microSD カードをアンマウントして、.img を焼き込みます。

   MacBookAir:~ xxx$ diskutil umountDisk /dev/disk3
   MacBookAir:~ xxx$ sudo dd if=/Downloads/2017-09-07-raspbian-stretch.img of=/dev/disk3 bs=4

このとき、デバイスの先頭から書き込みますから /dev/disk3s1 ではなく、/dev/disk3 としないといけません。

焼き込みは 4.92GB ありますので、2時間近くかかります。
途中経過は「control+t」で、ターミナル上で確認できます。


焼き込みが完了したらアンマウント/エジェクトして取り出します。
   MacBookAir:~ xxx$ diskutil umountDisk /dev/disk3 
   MacBookAir:~ xxx$ diskutil eject /dev/disk3




【Raspbian での作業1】-- 起動までの作業をする

ここからしばらくは Raspberry Pi での作業です。

電源を接続しない状態で Raspberry Pi の SD スロットに焼き込んだ microSD を差し込みます。

ディスプレイ/KB/マウス/LAN を接続して電源に接続(通電)します。

起動が始まり、デスクトップ画面になれば起動は完了です。


【Raspbian での作業2】-- 基本的な設定をする

まだ日本語設定していないので、英語表記になっていると思います。
左上のメニューボタンをクリックして、「Settings」➡「Raspberry Pi Configration」をクリックして基本設定をします。

① System : パスワードの変更(初期値は 'raspberry' )➡ 任意のパスワード
  解像度は、いまは初期値でいいでしょう(VNC での見え方でこれを適切なものに変える)

② Interfaces : VNC、SPI を有効化
③ Localization : 下記の設定をします
 ・Locale : ja(Japanese), JP(japan), UTF-8
 ・Time Zone : Asia, Tokyo
 ・Keyboad : Japan ➡ OADG109
 ・WiFi Country : JP Japan
  
OK をクリックするとリブートを促されるので、Yes でリブートします。

再起動後の画面は日本語の表示に変わっているはずです。


次に root のパスワード設定をします(初期値は無設定状態)
ターミナルを起動して、

 pi@raspberrypi:~ sudo passwd root
 新しい UNIX パスワードを入力してください:任意文字列入力する
 新しい UNIX パスワードを再入力してください:(同 上)
 passwd : パスワードは正しく設定されました

続いてネットワークアドレスを固定アドレスにするため、
ターミナルからエディターで dhcpcd.conf を編集します。

 pi@raspberrypi:~ sudo leafpad /etc/dhcpcd.conf

Leafpad の画面が出てきますから、最終行に下記を追加します。

 interface eth0
 static ip_address=192.168.xxx.yyy ➡ Raspberyy Pi のアドレス
 static routers=192.168.xxx.zzz ➡ デフォルトゲートウェイのアドレス
 static domain_name_servers=192.168.xxx.zzz 8.8.8.8 ➡ DNSサーバーのアドレス(デフォルトゲートウェイと同じ)

保存して終了します。

続いて hosts を編集します。

 pi@raspberrypi:~$ sudo leafpad /etc/hosts

ホストアドレスに「127.0.1.1 raspberrypi」という行があると思いますが、これを「192.168.xxx.yyy  raspberrypi」に変更して保存・終了します(192.168.xxx.yyy は Raspberry Pi の自アドレスです)。

 IPアドレスを固定に変更しホスト名も変更設定すると、/etc/hosts のホスト名の部分のIPアドレスとして、「127.0.1.1」が設定されている(Linux の仕様)。
これは、インストール時に自動的にIPアドレスを取得した場合(DHCPを利用)に固定アドレスに変更すると、このように設定される。
したがって、IPアドレスの設定をDHCPによる取得から固定アドレスに変更する場合は、/etc/hostsの設定については、127.0.1.1の部分を設定するIPアドレスに変更する必要がある(サーバー機能 [Asterisk] DNS参照で 127.0.1.1 を参照してレジストエラーなどになる)。


ネットワーク/ネットワークデーモンの再起動または、Raspberry Pi のリブートで変更を反映させます。

・ネットワークの再起動の場合
 pi@raspberrypi:~$ sudo /etc/init.d/networking restart
 pi@raspberrypi:~$ sudo systemctl daemon-reload




【RealVNC で PC での作業】

最低限の設定をしましたから、ここからは RealVNC を使った PC での作業が可能になります。

Raspberry Pi に接続していたディスプレイ/KB/マウスは外しても構いません。

PC から RealVNC を起動します。

ユーザー:pi   passwd:pi に付けたパスワード
サーバーアドレス/ポート:192.168.xxx.yyy:5900

とします。

デスクトップサイズが最適でない場合は、「設定」➡「Raspberry Pi の設定」➡「システム」➡「解像度」と進んで解像度を変更します。




RealVNC で PC 上に Raspberry Pi のデスクトップが現れます。




【ファームウェアとパッケージの最新化】

ターミナルを開いて、

 pi@raspberrypi:~$ sudo su -
 root@raspberrypi:~# rpi-update

ファームウェアがアップデートされたら、一旦リブートします。



自動で RealVNC にデスクトップが表示されますので、再びターミナルを開いて引き続き不要パッケージの削除とそのほかのパッケージの最新化をします。



Libreoffice のアンインストールをします(標準でインストールされていますが、多分使わないでしょう。使うときは残します)。

root@raspberrypi:~# apt-get remove libreoffice
root@raspberrypi:~# apt-get autoremove

続いて、パッケージの最新化です。

 root@raspberrypi:~# apt-get update
 root@raspberrypi:~# apt-get dist-upgrade

途中で /etc/dhcpcd.conf をアップデートするか、ユーザーが設定たまま(デフォルトは 'N' )にするかを問われるので、’N' を入力します。

完了したら再起動して最新化したパッケージの反映をしておきます。




【日本語入力パッケージのインストール】

 root@raspberrypi:~# apt-get update
 root@raspberrypi:~# apt-get install ibus-mozc fonts-vlgothic fonts-ipafont-gothic





【Samba の インストール】

PC やディスクサーバーとのファイル交換などのために Samba をインストールします。

 root@raspberrypi:~# apt-get update
 root@raspberrypi:~# apt-get install samba

ファイル交換用のディレクトリを作成します。

 root@raspberrypi:~# mkdir /home/share

Samba の環境設定をします。

 root@raspberrypi:~# leafpad /etc/samba/smb.conf

最終行に以下を追加します。

 [share]
 path=/home/pi
 readonly=no
 guest ok=no
 force user=pi

Samba にアカウントを設定します。

 root@raspberrypi:~# smbpasswd -a pi

新しいパスワードの入力と再入力を促されますので、任意の文字列をそれぞれ入力します。

Samba の自動起動設定と反映のため Samba の再起動をします。

 root@raspberrypi:~# update-rc.d samba default
 root@raspberrypi:~# systemctl restart smbd




【ファイヤーウォールの設定】

設定ツールの ufw をインストールして設定します(iptables で設定でも構いませんが、自分は ufw が使い慣れていますので)。

 root@raspberrypi:~# apt-get update
 root@raspberrypi:~# apt-get install ufw
 root@raspberrypi:~# ufw enable
 root@raspberrypi:~# ufw default deny
 root@raspberrypi:~# ufw allow in from 192.168.xxx.0/24 to 192.168.xxx.yyy
 root@raspberrypi:~# ufw allow out from 192.168.xxx.yyy to any

すべてのアクセスを拒否。
プライベート空間からの自アドレスへのアクセスを許可。
自アドレスからはどこへもアクセスを許可。

設定したら確認しておきます。

 root@raspberrypi:~# ufw status numbered
         To                      Action          From
         --                        ------             ----
   [ 1] 192.168.xxx.yyy  ALLOW IN    192.168.xxx.0/24        
   [ 2] Anywhere           ALLOW OUT 192.168.xxx.yyy  (out)
 root@raspberrypi:~#


以上で終わりです。


次回は Asterisk をインストールします。







0 件のコメント: