Raspbian StretchでMariaDBのインストール方法

Raspberry PiのOSであるRaspbianがバージョンアップされ、JessieからStretchに新しくなりました。これに伴い標準のDatabaseもMySQLからMariaDBになりました。高い互換性があります。

MariaDBとpython-mysqldbのインストール方法
sudo apt-get install mariadb-server python-mysqldb
$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
で以下のように編集します。

変更前
character-set-server = utf8mb4
collation-server = utf8mb4_gereral_ci

変更後
character-set-server = utf8
# collation-server = utf8mb4_gereral_ci

$ sudo systemctl restart mariadb
$ sudo mysql_secure_installation

ここで質問に答えていきます。この時にMariaDB用のrootのパスワード設定も行われます。
MariaDBの起動方法は、次のようになります。
$ sudo mysql -u root -p

 

Raspbian Stretchで今まで通りのinterface名を使うには

Raspbian Jessieまでは、USB Wifiドングルのinterface名はwlan0のような名前でしたが、Raspbian Stretchから、wlx123456789abcのようなMACアドレスに基づくinterface名に変わってしまいました。
Raspbian Stretchでも今まで通りのwlan0に戻す方法は、次のように行います。

  1. /boot/cmdline.txtファイルを編集し、次の文字列を行の最後に追加します。
  2.  net.ifnames=0
  3. 再起動後、Raspbian Stretchでもwlan0になります。

これにより、iKakashiに固定ipアドレスを設定する/etc/dhcpcd.confファイル内の記述が簡単になります。

この設定変更は、以下のモデルで動作検証を行いました。

  • Raspberry Pi Model A+
  • Raspberry Pi 2 Model B
  • Raspberry Pi zero w

Raspbian がJessieからStretchに変更になりました。

Raspberry PiのOSのイメージが、Jessie(Debian 8)からStretch(Debian 9)に2017年8月16日ぐらいから変更になりました。
これに伴うiKakashiを移植する際の注意点を備忘録として記録します。

結論:Raspbian Stretchでも適切な設定を行えば、iKakashiは動作します。

  1. 固定IPアドレスの設定を行うのに、/etc/dhcpcd.confファイルを編集しますが、無線LAN(USB WiFiドングル)のInterface名が変わりました。
  2. Stretchの標準のDatabaseは、MySQLからMariaDBに変わりました。
  3. apache2のDirectoryの振る舞いが若干変わりました。

Raspberry PiのOS、RaspbianのVersion UpによるiKakashiへの影響

農家のIoTデバイス iKakashiを最新のRaspbian Jessie Lite(以下Jessie)で動かす実験を行いました。その結果をお知らせします。
投稿時点で最新のJessie(2017-07-15)は、OS Version 8.0、Kernel Version 4.9です。

結果

  • 最新のJessieをiKakashiで使うには、そのままでは動きません。適切な変更をすれば動きます。

変更が必要な点

  • 無線LAN接続プログラムのwicd-cursesは、Jessieでは動きません。その代りJessie標準機能のwpa_supplicantが素晴らしく進化し、自動的にWiFi再接続ができるようになりました。これで無線LAN接続がいつの間にか切れてしまう現象が回避できていることを期待しています。
  • UNIXのユーザーのグループ名が、Jessieではないものがあります。
  • apache 2.4になったため、設定の記述の方法が変わりました。また、Raspbianのファイルシステム上でのhtmlフォルダーの絶対パスが変わりました。

Raspberry Pi Zero WでRaspbian jessie liteの実験

農家のIoTデバイス iKakashi-2号機製作に向けた下準備です。
先日購入したRaspberry Pi Zero Wが、支障なく動くものかどうかチェックしました。

  1. Raspberry Pi Model A+を使ってRaspbian jessie liteをインストール。SDカードには、jessie liteがインストールされ、無線LAN接続、SSH、MySQL、apache2、Watchdog Timerなどが設定済。
  2. そのSDカードを、Raspberry Pi Zero Wに実装し、電源ON(^^♪
  3. 何も変更することなく、すべてが正常に動作していることを確認しました。

 

Raspberry Pi Zero WとRaspbian Jessie Lite

36Wワークライトの発熱温度

iKakashi-2号を作る場合、本体ケースの中に36Wワークライトを入れてしまうと、どのぐらいの温度になるのか実験してみました。実験は、ケース内に入れることを想定して、36Wワークライトをプチプチで包み保温した状態で測定しました。

36Wワークライト発熱保温実験1

36Wワークライト発熱保温実験2

36Wワークライトの発熱温度のグラフ

36Wワークライト発熱保温実験3

結果、約67.6℃で飽和。この温度では、本体ケース内に36Wワークライトを入れることはできません。何かの故障で、ライトが光りっぱなしになった場合、本体ケース内の他の部品を熱で壊す可能性があります。

 

 

iKakashiのWebサイトについて

農家のIoTデバイスiKakashiは、自作可能な農家の監視システムです。より多くの方々にiKakashiのような監視システムを作っていただきたいと思っています。このWebサイトは、そのような方々に、iKakashiを製作する敷居を低くしたいと思い、その作り方を公開しています。

ご不明な点、ご要望などございましたら、お気軽に「お問い合わせ」フォームをご利用ください。

iKakashi-1号機全体

Picameraケーブル

Raspberry Pi Zero WとPicameraを接続するためのケーブルには、特別なものを使用します。スイッチサイエンスからこのケーブルを購入しました。
iKakashi-2号機用の部品です。

Picameraケーブル

Raspberry Pi Zero W

やっと買えました。しかも日本で。
Raspberry Pi Zero W です。
農家のIoTデバイスiKakashi-1号機で使われているRaspberry Pi Model A+とほぼ同じ消費電力。しかも、こんなに小さいのに無線LANとBlue Toothが標準装備。これでiKakashi-2号機作るのが夢です。

Raspberry Pi Zero W