2016年10月16日日曜日

CentOS7導入したRaspberry Pi 3 の基礎設定(領域拡張・無線LAN・日本語キーボード・pip利用)

■目的
普段はubuntuで使っているラズパイ3ですが、試しにCentOS入れてスクレイピング用にpythonコードを仕込もうと思った際のメモ
Python2はデフォルトでインストールされているので使えるのですが、python3を入れようとしたのですがpyenvでの導入はうまくいかなくて諦めました。

■参考にさせて頂いたサイト
http://yomon.hatenablog.com/entry/2016/04/17/152031
http://pppurple.hatenablog.com/entry/2016/01/24/213645
http://uxmilk.jp/12691

■内容
ラズベリーパイにCentOSを入れて初期設定してみる。
こちらの方のやり方を基本忠実に実施していく。
http://yomon.hatenablog.com/entry/2016/04/17/152031

□Rootパーティションのサイズ拡張
の項目にありますが、16GのSDカードを使っているのですが最初dfで見るとroot領域が2Gしか見れないです。
root領域の拡張の仕方ですが、READMEに書いてあるやり方をするとKernel Panicで起動しなる。とありましたが私はREADMEに書いてあるやり方ですんなり拡張できました。

デフォルトのディレクトリ(/root)配下にREADMEがあり、そこに書いてある以下を実行

== CentOS 7 userland ==

If you want to automatically resize your / partition, just type the following (as root user):
touch /.rootfs-repartition
systemctl reboot

再起動後のdfで正常に認識していました。

□Wi-Fiの設定
続いてWifiを使えるようにする設定ですが、一回有線でインターネット接続できる環境にした後
同じくREADMEに書いてある以下を実行

curl --location https://github.com/RPi-Distro/firmware-nonfree/raw/54bab3d6a6d43239c71d26464e6e10e5067ffea7/brcm80211/brcm/brcmfmac43430-sdio.bin > /usr/lib/firmware/brcm/brcmfmac43430-sdio.bin

curl --location https://github.com/RPi-Distro/firmware-nonfree/raw/54bab3d6a6d43239c71d26464e6e10e5067ffea7/brcm80211/brcm/brcmfmac43430-sdio.txt > /usr/lib/firmware/brcm/brcmfmac43430-sdio.txt

上記実行後に念のためrebootするとwlan0が確認できたので、後は本文通り
# nmcli d wifi
-> Wifiアクセスポイントのリストが一覧されます
# nmcli d wifi connect <your_uuid> password <your_keyphrase>
# nmcli d
無線LANの設定をします。

□次に(本当は最初にやっておけばよかった)USBキーボードを日本語入力にします。
 http://qiita.com/sh1k1ya/items/c025bb4d9ca207aacaaa
 色々なサイトに記述がありますが、基本
 「localectl set-keymap jp106」
 のコマンド実行で対応できました。

 後はyum update/selinux/firewalldあたりのアップデートや設定をして基本的には使える状態になりました。

□次にpython3を動かそうと入れたかったので
 http://pppurple.hatenablog.com/entry/2016/01/24/213645
 を参考にpyenvでインストールしようと思ったところ
 pyenv install 3.5.Xが一向に終わらなかったので諦めて標準で使えるpython2でスクレイピング用のコードを書こうと思いpip installで「feedparser」を入れようと思ったのですがpipが使えませんでした。

□yum installしようとしたのですが、そもそもラズパイはARM仕様なのでepelが使えず、pipを入れることができないという仮説に行き着きました。
 そこで
 http://uxmilk.jp/12691
 に記載のある方法でpipを使えるようにしました。


■終わり
やっぱりラズパイをcentで使うメリットはあまりないかも。
ubuntuで使っていればもっと楽にセットアップできたかもしれません。
まぁいい勉強になりました。

私の体験が誰かの生産性向上に役立っていただけることを祈って