個人的な覚え書き

すぐ忘れるので。

Raspberry Pi で複数の無線LANに接続する

Raspberry Pi で2つの環境に無線LAN接続したい。

書き換えたファイルは2つ

 

/etc/wpa_supplicant/wpa_supplicant.conf

接続ごとにidを付ける

country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
     ssid="SSID_1"
     psk=xxxxxxxxxxxxxx
     id_str="id_1"
}

network={
     ssid="SSID_2"
     psk=xxxxxxxxxxxxxx
     id_str="id_2"
}

 

/etc/netowrk/interfaces

wpa-roamに変更し、wpa_supplicant.confで設定したidを追加

source-directory /etc/network/interfaces.d

auto lo
iface lo inet loopback

iface eth0 inet manual

allow-hotplug wlan0
iface wlan0 inet manual
# wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
   wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

iface default inet dhcp
iface id_1 inet dhcp
iface id_2 inet dhcp

 

今のところはこれで問題なく接続できている。それぞれの環境に持っていくと自動で無線接続してくれるので大変便利。

 

Raspberry Pi で無線LAN接続

続いて無線の設定

ipコマンドでアダプタが認識されているか確認

$ ip addr

wlan0が出てくればOK。

wpa_passphraseコマンドでSSIDとパスを設定

$sudo sh -c 'wpa_passphrase SSID PASSPHRASE >> /etc/wpa_supplicant/wpa_supplicant.conf'

こんな感じになるので#pskの行(生パスワード)を削除する

$sudo cat /etc/wpa_supplicant/wpa_supplicant.conf


country=GB
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
     ssid="xxxxxxx"
     #psk="xxxxxx"
     psk=eca950...
}

 

country=GBになってるのが気になるのでJPに変えてみた。(GBのままでも接続はできる)

 

Raspberry Pi にRaspbian導入と初期設定

まずは公式サイトからOSのイメージをダウンロード

GUIはいらないのでLiteの方を落としてくる。2Gもなくて20分かからず。

16GのSDカードを買ったけど4Gで良かったかも。

 

ddコマンドでイメージをSDへ。

ヘッドレスで使う場合はディスクのルートにsshというファイルを作っておく。作らないとデフォルトではsshが有効になっていない。

SDカードを挿入してLANケーブルをつなぎ、電源を入れる。

DHCPでIPをとってるので配布元のルータにログインしてIPを確認。(後で気づいたけど、avahiが入っているのでIPがわからなくてもホスト名でログインできた。)

piユーザでログインする。

 

すごく簡単でおどろく。イメージをそのまま使っているから当然なんだけど、OSのインストールしなくていいのがすごく楽。初期設定とか何もしてなくても動く!

 

しかし設定を多少しておいた方がやはり快適に過ごせる。

注意)rootはデフォで無効になっていて、piユーザはsudoが使える

・raspi-configで言語や地域などの設定およびホスト名やパスワードを変更する

・apt でupdateしておく(aptitudeも使える)

・パス無しsudoを禁止する

・aptのミラーを変える(まだやってない)

・自動でupdateするようにする(まだやってない)

・NTPサーバの変更(まだやってない)

・swapの設定(必要なら)

 

リモートログイン用のユーザを作る

個人的な好みだけど、sshでのログインを制限したい。運用としては、接続できるユーザをクライアントPCで使っているユーザのみにして、piユーザ(ユーザ名は変更しているのですでに違う名前だけど)へsuしてsudoを使うようにしたい。

$ sudo useradd user

/etc/ssh/sshd_configに以下を追加してuserのみをログイン可に設定

AllowUsers user

 

piユーザのユーザ名を変更

リモートログイン用に作ったuserを一時的にsudoグループへ追加

$ sudo gpasswd -a user sudo

userへsuしてpiのユーザ名を変更し、home/piのディレクトリ名も変更。

終了後はuserをsudoグループから外す。

$ sudo gpasswd -d user sudo

Raspberry Pi 事始

買ったもの

Raspberry Pi 3 Model B

・電源アダプタ

TOSHIBASDHC MicroSDカード 16G

ほんとは前のモデルのPi 2を買う予定だったんだけど、値上がってたので仕方なく3を購入。でもWifiついてて便利だったから結果的には良かった。

 

その後に購入したもの

・iBUFFALO PC用スピーカー BSSP29UWH

LOGICOOL ウェブカム C270 

・BU-Bauty USBマイク(使えなくて返品)

秋葉原でジャンクのスピーカーを買ったらホントにジャンクで使えなかったのでamazonで上記のものを買った。

ドングルサイズのUSBマイクは不良品だったので返品。でもC270のマイクが割と使えるので無くても良かった。

スピーカーはそのうちポータブルでBluetooth対応のものに変えたい。

 

ケースは今のところ買っていなくて、余っていた石鹸入れに入れている。ケーブル類を挿すと蓋が閉まらない。そのうち何とかしよう。

さくらのVPSに環境を構築するメモ--postgresqlの設定

データベースクラスタの初期化

postgresqlを使うためには一度データベースクラスタを初期化する必要があるらしい。

$ su - postgres

[postgres]$ initdb --encoding=UTF8 --no-locale

んで、起動
$ sudo /etc/rc.d/init.d/postgresql start

これでやっとユーザが作れる
$ su - postgres

[postgres]$ createuser -P -S -d -R user_name

データベースを作る
[postgres]$ createdb db_name

接続してみる
$ psql db_name user_name


そのほかに入れたもの
$ gem install mongrel
$ gem install rake -v=0.8.1
rakeはバージョンが変わるとRakefileの書き方が違うらしくてエラーになる。。
railsはこういうの多いなあ。

さくらのVPSに環境を構築するメモ--dbまわりのインストール

postgresqlを使うので入れていく。

とりあえずmysqlが入っているので削除
$ sudo yum remove mysql

postgresqlを入れる
$ sudo yum install postgresql-server postgresql-devel postgresql-contrib

入ったのは
postgresql-server 8.2.40

DBアダプタを入れる
$ gem install pg

postgresユーザを確認する
$ id postgres
作成されているようだ。

sqlite3も使うかも知れないので、アダプタを入れとく
$ yum list installed sqlite
3.6.20
$ sudo gem install sqlite3

いろいろ足りないらしい。必要なものを入れる。
$ sudo yum install ruby-devel sqlite-devel

$ sudo gem install sqlite3
やっとはいった。