Raspberry Pi + Arch Linux 初期設定

Arch が使ってみたくなったので、公式から Arch のイメージを落とし、SD カードに書き込む。
デフォルトで DHCP でつながり、sshd が動くので環境によっては電源投入すると即 SSH ログインできる。(デフォルトのホスト名は alarmpi)
root でログイン。初期パスワードも root。

Read more

Raspberry Pi + Arch Linux 初期設定

適当なユーザを追加する。

$ sudo adduser foo

pi の groups を見て、

$ groups pi
pi : pi adm dialout cdrom sudo audio video plugdev games users netdev input spi gpio

それぞれ新しいユーザをそのグループに追加していく。

$ sudo adduser foo adm
$ sudo adduser foo dialout
...
$ sudo adduser foo gpio

新しいユーザでログインしなおして、用済みのデフォルトユーザを削除する。

$ sudo userdel -r pi

$ sudo visudo で sudoers にある pi 用の記述を削除する。

# ↓この行を消す
pi ALL=(ALL) NOPASSWD: ALL

別に新しくユーザを追加しなくても、root ログインしてから usermod を使用してデフォルトユーザの名前を変更するだけでも良いかもしれない。その場合においても、sudoers の変更はするべき。

Raspberry Pi + Raspbian sSMTP を使用して、root 宛のメールを Gmail に飛ばす

cron ジョブの実行を仕掛けてるとエラーなどで root 宛にメールが飛んでくる。
これを自分の持ってる既存のメールアドレスに飛ばしたいが、sendmail はよくわからないし、postfix みたいな本格的なものを導入するのも面倒である。
そこで、sSMTP を使用すると外部の SMTP サーバを使用してメールを送信でき、root 宛のメールを自分の既存のメールアドレスに送ることができる。
sSMTP は sendmail の代わりとなって動くため、sendmail を使用してメールを飛ばすものに sendmail の代わりに使用されることができる。

Read more

Raspberry Pi + Raspbian 無線 LAN アダプタの省電力モードをオフにする

raspi を小型無線 LAN アダプタで接続しているが、放っておくと ping が通らなかったり、SSH の接続が切れたりする現象に悩まされて調べたところ、
Raspberry Pi • View topic - WLAN disappears after some time
を見たところ省電力モードが原因らしい。

$ lsusb
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 1a40:0101 Terminus Technology Inc. 4-Port HUB
Bus 001 Device 005: ID 2019:ab2a PLANEX GW-USNano2 802.11n Wireless Adapter [Realtek RTL8188CUS]

で無線子機が RTL8188CUS のを確認する。
8192cu ドライバが使われるこれは省電力モードが特殊らしく、
iwconfig で見ても常に Power Management:off としか表示されず、iwconfig wlan0 power off もエラーが出て実行できない。

$ sudo nano /etc/modprobe.d/8192cu.conf で設定ファイルを作成し、以下の内容を書き込むことで省電力モードを無効化できる。

# Disable power management
options 8192cu rtw_power_mgnt=0 rtw_enusbss=0

省電力モードが有効かどうかは $ cat /sys/module/8192cu/parameters/rtw_power_mgnt で確認でき、
上記の設定をする前は 1 を返し、設定後 reboot すると 0 になっているはずである。

この設定をしたところ、ping が通らなかったりマシンを見失うことがなくなった。めでたし。

Raspberry Pi + Raspbian 無線 LAN 接続設定

wpa_supplicant の設定になるが、めんどくさいので GUI から設定する。

  1. デフォルトユーザでログインし、$ startx で LXDE が起動する。
  2. 表示されたら、デスクトップにある WiFi Config を開く。左下のメニューから wpa_gui を探して起動しても可。
  3. Scan を押しスキャンダイアログを開き、それにある Scan を押し周囲のアクセスポイントをスキャンする。
  4. 対象のアクセスポイントをダブルクリックすると接続設定を入力するダイアログが出るので、
    適切に設定したら Add し、メインウィンドウに戻ってくると Network の一覧に追加されている。
  5. 元のウィンドウの Connect を押すとアクセスポイントに接続され、DHCP で IP アドレスが降ってくる。

大抵はこれで完了。
固定アドレスを割り振りたい場合は /etc/network/interfaces を適切に編集する。