(2018-02-03 初稿 - 2021-05-01 修正 )
自宅でサーバとして活用しているノートパソコンのファンが調子悪くなり、うるさい音が鳴るようになってしまいました。
ネットで新しいサーバの候補を探していると、raspberry pi3 (ラズパイ) というワンボードマイコンに目が留まりました。
ちなみに、わが家のサーバは、24時間監視し、変化があればメールを送るという簡単なもので、サーバとしての負荷は極めて軽微です。
Raspberry Pi3 は、raspbianというDebianに似たOSを使っているとのこと、普段Debianを利用している筆者にはとっつきやすそうでした。
値段もお手頃だったので、さっそくAmazonで購入しました。
IO dataさんのページにスペックがあったので、以下のリンクを参照してください。
Amazonで3点セットでおすすめになっていたものです。
Raspberry Pi3 本体: www.amazon.co.jp/dp/B01CSFZ4JG/ref=pe_492632_159100282_TE_item
5.0V 3.0A 電源セット: www.amazon.co.jp/dp/B01N8ZIJL8/ref=pe_492632_159100282_TE_item
Samsung microSDHC 32GB: www.amazon.co.jp/dp/B06XSV23T1/ref=pe_492632_159100282_TE_item
筆者は、Debianを利用させていただいているので、インストールは簡単でした。
と言っても、一度失敗して顔が青ざめましたが… (^^ゞ
作業は、まず、普段使っているDebian PCで行います。
以下のページからデスクトップは、「RASPBIAN STRETCH WITH DESKTOP」を、サーバは「RASPBIAN STRETCH LITE」をダウンロードします。
なお、日本にお住まいの方は、以下にミラーサイトがあります。ただし、デスクトップ版のみのようです。
ダウンロードしたら、以下のコマンドで確認します。
$ cd ~/Downloads
$ sha256sum 2017-11-29-raspbian-stretch-lite.zip
e942b70072f2e83c446b9de6f202eb8f9692c06e7d92c343361340cc016e0c9f 2017-11-29-raspbian-stretch-lite.zip
上記の長い記号が、raspbianのダウンロードサイトの長い記号と合っていればダウンロードは成功です。
次にmicroSDHCカードの準備を行いますが、以下のページを参考にしてください。
microSDHCカードを挿入して、以下のコマンドでデバイスの番号を調べます。
$ df
/dev/sdc1 ← 筆者の場合は、sdc1 PCによって異なるので注意
一旦、挿入したmicroSDHCをアンマウントします。
$ umount /dev/sdc
$ df ← アンマウントされたか確認
さて、ダウンロードしたファイルをunzipして、microSDHCカードにddコマンドで書き込みます。
この際、/sev/sdc1ではなく、/dev/sdcで、最後の番号は取り除くことにご注意ください。
$ unzip -p 2017-11-29-raspbian-stretch-lite.zip | sudo dd of=/dev/sdc bs=4M conv=fsync
※くれぐれも、デバイスの番号を間違えないように
プロンプトが戻って来たら、以下のコマンドでメモリをフラッシュします。
$ sync
$ sudo sync
※これを忘れて、カードを抜いてしまって、ひどい目にあいました。(-_-;)
最後に、書き込んだカードを再度PCに挿し込んで、正常に読み込めるか確認しましょう。
確認できたら、アンマウントして終了です。
microSDHCカードに書き込みができたら、カードを挿入して電源を入れます。
最初は、HDMI、キーボード、有線LANをつなげて、電源をONした方が良いでしょう。
正常に起動すると、「raspi-confg」の画面になりますが、筆者はせっかちなためか、起動画面が表示される前にキー操作をしてしまったようです。(^_^;)
でも、ログイン後でも、raspi-configを立ち上げることができます。
$ sudo raspi-config
1 Change User Password : ユーザーはpi パスワードは広く知られているので、変更した方が良いでしょう
2 Network Options : Hostname 変更した方が良いでしょう
Wi-Fi WiFiで運用する場合は設定します
3 Boot Option : Desktop / CLi デスクトップで利用する場合は変更
Wait for Network at Boot ネットワークでブートする場合は変更
Splash Screen 起動時の画面を変更する場合
4 Localisation Optrions : Change Locale ja_JP.UTF-8 UTF-8 を追加
Change Timezone Aisia Tokyo を選択
Keyboard Layout 標準 105 キー(国際)PC 日本語(OADG 105A)
キーボードに併せて変更
5 Interface Options : SSH 筆者はsshだけは必須で起動
6 Overclock : Pi3はできない
7 Advanced Options : Expand Filesystem 最近は自動的に拡張されるらしい
Memory Split ディスプレイなしのサーバとして活用するので16Mに変更
8 Update raspi-config 自体をアップデート
以上で設定は終了です。変更の必要が生じたときには、その都度起動して設定してください。
筆者のRaspberry Piは、サーバとして利用するので、IPアドレスが固定されていた方が都合がよいので、以下のように変更しました。
sudo vi /etc/dhcpcd.conf
interface eth0
static ip_address=192.168.*.*/24
static routers=192.168.*.*
static domain_name_servers=192.168.*.* *印はお使いのネットワークに併せて変更
本家のネットワークが遅いとのことでしたので、日本のミラーサイトを利用させてもらっています。
sudo vi /etc/apt/sources.list
deb http://ftp.jaist.ac.jp/raspbian/ stretch main contrib non-free rpi
設定後、以下のコマンドでパッケージを更新しておきます。
sudo apt-get update ; sudo apt-get upgrade
日本入力(漢字変換)は、fcitxとmozcの組合せが便利だと思います。
以下のコマンドでインストールできます。
$ sudo apt-get install fcitx-mozc
インストール後、再起動すると無事日本語入力できるようになります。
スクリーンショットの撮影は、scrot が小さくて便利そうです。
インストールは以下のとおり。
$ sudo apt-get install scrot
使い方は、以下のとおり。
$ scrot 画面全体のスクリーンショット
$ scrot -s 選択中のプログラムのスクリーンショット
Raspberry Pi3をサーバにして、CPU温度をtwtterにつぶやくようにしてみました。
詳しくは、以下のリンクを参照してください。リンク先作成中 (^^ゞ
Raspbbery Pi3のCPU温度をつぶやくようにする(tw-cputemp)
自宅のグローバルIPアドレスをRaspberry Pi3にメールで知らせてもらうようにしました。
詳しくは、以下を参照してください。リンク先作成中 (^^ゞ
ラズパイでVNCを利用するときの設定について、以下のページに記述しました。リンク先作成中 (^^ゞ
Raspberry Pi3 でVNC
ふとしたことで、ラズパイのサーバで動体監視カメラに挑戦してみました。
詳しくは、以下のページを参照してください。
ラズパイで手軽にディープラーニングのお勉強ができるようです。
筆者もインストールしてみましたが、勉強の方がつづくかどうか… (-_-;)
インストールは以下を参照してください。リンク先作成中 (^^ゞ
Raspberry Pi 3 で ディープラーニング(tensorflow)
上記にあるとおり、Rapsberry Pi3でCPU温度は測るようにしたのですが、その時の部屋の温度も知りたくなって、測れるようにしてみました。
詳しいことは、以下のページを参照してください。リンク先作成中 (^^ゞ
Raspberry Pi3(ラズパイ)で温度を測る
温度やCPUの温度が測れるようになると、ファイルに記録し、他のPC等からアクセスしたくなります。
そこで、Raspberry Pi3でも、コマンドラインからGoogle Driveにファイルをアップできるようにしました。
特に、ファイルの更新について記述しています。
Raspberry Pi3で、温度や湿度が測れるようになると、飽差を計算できるようになります。
飽差は植物の生育にとって重要な指標ですが、計測方法、計算方法について、以下のページで解説しています。リンク先作成中 (^^ゞ
部屋の中心で飽差を叫ぶ!
前述のとおり、Raspberry Piでも、Tensorflowを用いたディープラーニングができるようになったので、直線、二次回帰等を試してみました。
ただし、筆者も勉強中のため、ちっともディープラーニングになっていません。(^^ゞリンク先作成中 (^^ゞ
Tensorflow で回帰分析
ディープラーニングは、ひとまず置いておいて、遺伝的プログラミングで関数式のあてはめに挑戦してみました。
Raspberry Piには、Walform Mathematicaが付属するので、関数のグラフ化や得られた式の展開がとても楽にできます。
みなさんも、身近な減少の関係について調べてみてはいかがでしょうか? リンク先作成中 (^^ゞ
遺伝的プログラミングで関数式のあてはめ
Raspberry Pi3で赤外線リモコンが使えるといろいろと応用ができそうです。例えば、遠隔地からRaspberry Pi3にログインして、部屋のエアコンの電源や照明等の操作に使えそうです。
以下のページにADIR01Pという製品を、Raspberry Pi3で使う方法を記述したので、覗いてみてください。リンク先作成中 (^^ゞ
Raspberry Pi3 でUSB赤外線リモコンを使う(ADIR01P)
Raspberry Pi3がしゃべってくれれば、動体監視で人が近づいてきたら「こんにちは」としゃべるとか、面白いことができそうです。
以下のページにラズパイにしゃべってもらう設定方法について記述したので、興味のある方はのぞいてみてください。リンク先作成中 (^^ゞ
Raspberry Pi3がしゃべることができるようになったので、今度はマイクをつけて、録音できるようにしました。
最初は、簡単だと思ったのですが、なかなか思ったように設定できませんでした。
最終的に、設定が完了し、googleのSpeech notesを利用して音声認識ができるようになりました。
興味のある方は、ご覧になってください。リンク先作成中 (^^ゞ
ずいぶんと間が空いてしまいましたが、わが家でもRaspberry Pi4を購入し、デスクトップとして活用しています。
利用していると、よく使うディレクトリや各種スクリプトのショートカットをデスクトップに置きたくなったので、調べてみました。
同じようなことを思っている方は、ご覧になってください。リンク先作成中 (^^ゞ
Raspberry Piでデスクトップにショートカットを置く
今使っているRaspberry PiのOSのビット数を調べる
また、何か設定等したら追記します。