スキップしてメイン コンテンツに移動

投稿

1月, 2017の投稿を表示しています

SDカードと Raspberry pi との相性

どうも上手くバックアップできないとか、復元が出来ないとか悩んでいましたが、どうやら Raspberry pi と SD カードの間に相性があるらしいです。

こんなウェブサイトが見つかりました。
http://elinux.org/RPi_SD_cards

うーん、私が使っているカードはここには載っていないなぁ。
って事で、もう一度ゆっくりと上手くゆくカードと、駄目なカードを選り分けして見ないと駄目ですね。

追記です:2017/02/04
本日某所で東芝の8GBのSDカードを安売りしていたので3枚ほど買ってきました。
一応確認して全て同じ型番なのですが、そのうち2枚は問題無し。
何故か1枚だけ書き込めません。
ちょっとした製品のバラツキでも上手く書けたり書けなかったりなんですね。
うーん。面倒だけど明日交換を申し込んでみようかな。
自転車で行かないと往復の交通費の方が販売価格より掛かっちゃう(笑)。

さらに追記:2017/02/05
今日交換してもらってきました。
でついでだからもう一枚追加購入。
今度は二枚ともちゃんと書けてます。
満足。

SD カードのバックアップ(rpi-clone の使い方):HomeBridge の設定 その7(raspbery pi の設定 その6)

巷の情報を描き漁ったところ、raspberry pi の SD カードのバックアップや復元は "dd" コマンドで作成するのが基本様です。
ところが私の環境(Mac OS Sierra 10.12.2)ではどうしても復元ができません。
ディスクのイメージは取り出せている様ですが、SD カードに書き込んでもきちんと書き込めていない様です。

Mac では通常 Ext 形式のファイルの読み書きはできませんが、ユーティリティの "ExitFS for Mac"(試用版あり:Windows 版もあります。) というものを利用すれば、マウントして読み書きできる様になります。
で試したところ、オリジナルの SD カードはちゃんとマウントできるのに、コピーした SD カードはファイルシステムが壊れているということでマウントできません。

さらに調べたところ、"rpi-clone" というものを見つけました。
これは Rasspberry pi で動作中のシステムそのものを丸ごとコピーしてくれるアプリです。
Raspberry pi の USB に SD カードリーダーを差し込めば、そこにセットされた SD カードに現在動作しているシステムをそのままクローニングしてくれます。
で、早速試しました。

ダウンロードなどは上記のサイトから行ってそのまま適当なディレクトリにコピーするだけです。
私は Mac でダウンロードし、raspberry pi から nfs でマウントしてあるディレクトリに置いて、そのまま raspberry pi にコピー。
その後に nfs はアンマウントしておかないと、nfs マウントした先までコピーされてしまう(コピー中のファイルを眺めていて気がついて、慌てて中止してやり直しました(汗))ので注意してください。

rpi-clone の使い方 オプションの -f はコピー先の SD カードをフォーマットしてくれます。
-v は動作の状況を逐一表示させます。
事前に /dev/ の下を確認し、USBアダプタをつないだ後と比較して、USBアダプタ(クローン先のSDカード)のデバイス名を確認してください。
以下の例ではフォーマット済みのSDカードにコピーするので、イニシャライズして良いか聞いてきています。
何か…

HomeBridge の設定 その3(ホームゲートウェイ(Apple TV))

HomeBridge を外出先から使うためにはホームゲートウェイが必要です。
これは Apple TV の第3世代か、最新の第4世代、あとは iOS10 が動作する iPad がその役目を担います。
iPad は外に持ち出さずに使うのを前提にしないといけないので、基本的には Apple TV と言う事になりますね。
ケチるなら安くなった第3世代ですが、OSのバージョンアップがすでにできなくなっているので、できるだけ最新の Apple TV にした方が安全です。
しかも第3世代はなんとなく動作が不安定っていうこともあります。
Apple TV の設定は特になし。
ご自分の Apple ID で iCloud にログインしておくだけです。
ご家族の iPhone からも使いたい時は、自分の「ホーム」アプリから家族を招待するだけ。

今のところ、ガレージ用に設定した Raspberry pi Zero がなんとなく動作が不安定。
どうも CPU パワーが足りない様な・・・
とりあえず Raspberry pi 3 をもう一台用意して動かしてみるかな。
こういった時はSDカードを入れ替えるだけでそのまま使えますから楽ですね。
おっと、GPOI 端子の配線は必要か。

久々に iPhone での経費削減の話(IP-Phoneというかスマートフォン と Viber)

このところ Raspberry pi(HomeBridge)の話ばかりでしたので、久々に iPhone というよりスマートフォンならどれでも可能ですが、経費節減の話を。

今は格安 SIM ばやりですが、確かに音声通話(というより電話そのもの:アプリによる通話は別にすると)は滅多にしないのであれば、電話のための経費が勿体無い。
と言う事で、ひとまず月々の経費ゼロで電話が受けられ、ついでに電話も格安で掛けられる様にしてしまおうと言う話です。

まぁ、これにはちょっとした落とし穴もあるので注意が必要。
とりあえず、SIMフリーの本体が必要です。
私の場合手元には古〜い iPhone 3G の(脱獄による)SIMフリーがありますが、さすがに古すぎ。
で、圏外病(こちらを参照)などのリスクはありますが、とりあえずは実験なのでこれを使用します。
なんとか、正規の SIM フリーの本体を手に入れたいものです。
先日ちょっと家電量販店を覗いたら、Android で1万円半ば程でありますね。

次に格安SIMですが、これも「0 SIM」を使います。
ここが落とし穴の一つ。
月々の通信料が 500MB を超えたら有料です。
で、3ヶ月何も使用しない(と言うのも考え難いですが)と強制解除。
で、とりあえず初期費用の3千円は掛かってしまいます。

まぁ、上記二つは格安SIMのセットで購入という手もあります。

次は、日本国内の電話番号の入手です。(米国の電話番号ならばこっちですでに紹介済み
これはIPフォンを使用します。
私は無料の留守電の話で紹介した「Fusion IP-Phone SMART」を使用しました。
ポイントは、電話を受けるだけならば無料で使えるって事です。
ただし、クレジットカードの登録が必須です。
ここで「050」から始まる電話番号を入手出来ます。

最後が低額で電話に掛ける事の出来るアプリです。
これも昔からある Viber が楽天になって、(先日までの国内への電話が無料のキャンペーンって終わってしまいましたが)なじみやすくなり、しかも低額で電話がかけられるこちらを利用。
つまり電話の発信は Viber が受け持ち、受信は SMRtalkというFusion のアプリによる分業になります。

通常 Viber の登録にはパスコードがSMSで発行されますが、IPフォンは固定電話と同…

HomeBridge の設定 その2(GPIO を使うための設定(wiringPi))

HomeBridge で機器をコントロールするための GPIO を使うため、wiringPi というものを使用します。

1.wiringPi のインストール

homebridge@raspberrypi:~ $ git clone git://git.drogon.net/wiringPi
Cloning into 'wiringPi'...



NOTE: To compile programs with wiringPi, you need to add:
    -lwiringPi
  to your compile line(s) To use the Gertboard, MaxDetect, etc.
  code (the devLib), you need to also add:
    -lwiringPiDev
  to your compile line(s).


2.インストールされた内容の確認

homebridge@raspberrypi:~/wiringPi $ gpio -v
gpio version: 2.36
Copyright (c) 2012-2015 Gordon Henderson
This is free software with ABSOLUTELY NO WARRANTY.
For details type: gpio -warranty

Raspberry Pi Details:
  Type: Pi Zero, Revision: 03, Memory: 512MB, Maker: Sony
  * Device tree is enabled.
  *--> Raspberry Pi Zero Rev 1.3
  * This Raspberry Pi supports user-level GPIO access.


3.現在の GPIO の状況を確認出来ます。

homebridge@raspberrypi:~/wiringPi $ gpio readall
+-----+-----+---------+------+---+-Pi Zero--+---+------+---------+-----+-----+
 | BCM | wPi |   Name  | Mode | V …

HomeBridge の設定 その1(HomeBridge のインストール)

いよいよ HomeBridge のインストールに入る訳ですが、一応 inetd というインタネーットサービスを統括(?)するデーモンを入れておく方が動作が安定する様なので、先ずは inetd をインストールしておきます。

1.inetd のインストール

homebridge@raspberrypi:~ $ sudo apt-get install openbsd-inetd
Reading package lists... Done
Building dependency tree    
Reading state information... Done
The following extra packages will be installed:



Setting up openbsd-inetd (0.20140418-2) ...
Processing triggers for systemd (215-17+deb8u5) ...
homebridge@raspberrypi:~ $

2.intend の設定です。
先ずは設定ファイルの確認
homebridge@raspberrypi:~ $ ls -l /etc/inetd.conf
-rw-r--r-- 1 root root 1056 Jan  9 14:02 /etc/inetd.conf

設定ファイルの中身の確認。
homebridge@raspberrypi:~ $ cat /etc/inetd.conf
# /etc/inetd.conf:  see inetd(8) for further informations.
#
# Internet superserver configuration database
#
#
# Lines starting with "#:LABEL:" or "#<off>#" should not
# be changed unless you know what you are doing!
#
# If you want to disable an entry so it isn't touched during
# package updates just comment it…

Raspberry pi の設定  その2(SSHをパスワードなしで)

さて一通りの設定は出来ました。
一応は色々と作業出来る環境の筈ですが、ちょっと面倒なのは raspberry pi にアクセスするのにいちいちパスワードを入れる事。
まぁセキュリティ的に raspberry pi のパスワードなしにって訳には行きませんが、SSH でアクセスする時だけはパスワード無しにする事が出来ます。

こうすると、簡単にリモートのコマンドやシェルを動かせるので、操作元のシェルから操作先のサーバーのシェルを動かせるって事になります。
これは結構便利です。

基本的には「公開鍵暗号方式」というものを利用します。
鍵は「秘密鍵」と「公開鍵」の二つがペアとして機能します。
秘密鍵は自分(アクセスする側)が保管し、公開鍵は相手(サーバー側)に渡します。
秘密鍵で暗号化すると、ペアとなった公開鍵以外では解除できませんから、「公開鍵で開ける事が出来る=相手が確かに秘密鍵を持っている人」という形が保証されます。
ですからパスワードが無くても、アクセスしてきた相手が特定出来るという訳です。

では実際の作業に入りましょう。

先ずはアクセス元(クライアント)での作業となります。
1.先ずは鍵の作成です。
ホームディレクトリで作業するのが良いでしょう。

# ssh-keygen -t rsa

これでホームディレクトリ下に「.ssh」というフォルダが作成され、その下に「id_rsa」という秘密鍵「id_rsa.pub」という公開鍵のペアが作成されます。
出来ればどの鍵か分かる様にファイル名にサーバー名とか、ユーザー名などを追加しておくと良いでしょう。

2.「.ssh」に「config」というファイルを作成してその中に

Host *
IdentityFile ~/.ssh/id_rsa_mac

と2行を書き込みます。
最後の鍵の名前はアクセスする側の Mac の名前を追加した「秘密鍵」です。
なお、最新の Mac OS を使用している場合は更に下の2行を追加します。

UseKeychain yes
AddKeysToAgent yes


ここからはアクセスされるサーバー側の設定です。
3.同じ様にホームディレクトリに「.ssh」フォルダを作成します。

4.ここにクライアントが作成した「公開鍵」をコピーします。
SCP などを利用するか、USBメモリとかでコピーすれば良いでしょ…

Raspberry pi の初期設定(Wi-Fi 日本語など)

さてひとまずは Raspberry pi に SSH で繋がれば、後は粛々と必要な設定を行ってゆくだけです。
1.デフォルトでのユーザは「pi」で、パスワードは「raspberry」 まずはパスワードの変更となるのが普通でしょうが、私の場合は homebridge を設定するためのユーザとして「homebridge」というユーザを作ってしまい、「pi」ユーザは削除しています。 なので、手始めは別のユーザの作成と、そのユーザに「sudo:つまりはroot権限」を与えることから行いました。 デフォルトのユーザとパスワードが決まっているのを嫌がって別のユーザを作り、 pi は削除することを勧めているウェブサイトは多い様です。 まぁ、たとえ自宅専用にしてもサーバーとして起動するならその方が良いかもしれませんね。
$ sudo adduser homebrige   homebrige の部分はご自分の環境に合わせて変更してください。 パスワードを聞いて来るのでパスワードを入力すればこれで終わり。
一応グループは pi のグループを全部引き継いでしまいましょう。
$ sudo usermod -G pi,adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,input,netdev,spi,i2c,gpio homebridge
いやー いっぱいグループがありますね。ゲームとかはいらないと思うけど・・・
さてここで、su - homebridge にスイッチユーザしてしまいましょう。 「pi」ユーザは「$ userdel -r pi」で削除出来ますが、念のため様子見してから削除するか、 「$ sudo usermod -l newpi pi」とでもして別の名前にしておくのも良いでしょう。 別の名前にするならば、新しいユーザを作らず最初から変更するのも手ですが、どこかで勘違いするのも嫌なので・・・
2.さて新しいユーザで次に行うべきは、Wi-Fi の設定でしょうかね? /etc/wpa_supplicant/wpa_supplicant.conf のファイルに以下の設定を行います ちなみに私はエディタに「nano」を使用しています。
country=JP ctrl_interface=DIR=/var/run/wpa_…

Raspberry pi のインストール

さて、なかなか書けていないブログなのですが、色々とトラブルもあり、まだ解決していないものもありますが、やり直した事などを元に、少しずつ情報を整理して行きたいと、設定方法などを整理し始めました。

先ずは元になる Raspberry pi のインストールから。
Raspberry pi のインストール
私の場合は、Mac を利用して、モニターなど使用しないでのインストール方法を採用しています。 多少画面の違いなどはありますが、Window や Linux / Unix でも同じ様にしてインストール出来ると思います。
1.先ずは必要なもの。 (1)Raspberry Pi 言わずもがなしですが、最初から有線LANが組み込まれていないモデルの場合、USB経由での有線LANポートが必要です。 また、セットアップ後に Wi-Fi での利用を考えているのであれば、Wi-Fi の組み込まれた Raspberry Pi 3 Modele B 以外は Wi-Fi のUSBドングルなども必要となります。 Raspberry Pi Zero の場合は USB 端子のサイズ変換プラグも必要ですね。
(2)Raspberry Pi 用の USB 電源ですが、モデルによって必要な容量が異なります。特に Raspberry Pi 3 は 2.5A と要求される容量が大きい(ひとまずは 2A でも大丈夫そうですが)ので注意してください。 USB - マイクロUSB の電源コードも必要ですね。
(3)マイクロ SD カード 一応4M以上ならば大丈夫の様です。
(4)その他 有線LANケーブル SDカードの読み書き出来るパソコン インターネット環境(有線、必要な場合には Wi-Fi も) Windows の方は TeraTerm の様な SSH での接続が可能なターミナルのアプリも必要です。 また、予めDHCPサーバが Raspberry pi に割り当てる IP アドレスがわかる様にしておくか、Windows 用の abahi というアプリも必要となります。(abahi は iTunes をインストールしていれば一緒にインストールされるので、iTunes がインストール済みの Windows ならば問題ありません。)

2.先ずは最新の Raspberian(Raspberry Pi 用の OS)をダウンロードしましょう。 以下の Ra…

「ホーム」アプリがこっそりと機能アップ?

先日ホームアプリで家族に公開した場合に、ホームアプリの画面のバックグラウンドがデフォルトのままで変更出来ないと書いたのですが、その後に私の意見が反映されたのか、いつの間にか変更可能になりました。
ただし、スイッチ類の表示場所とかの変更は出来ませんし、公開したいものだけを撰択して公開する事も出来ません。
でも背景を自分の好きなものに変更できるのは良いですね。