☆Raspbian Tips
◆NOOBS
一つのイメージファイル内にファイルシステムを構築する。
保存したファイルが増えればファイルサイズが大きくなる
_◇複数OS選択
複数のOSをインストールした場合、起動直後に選択できる
_◇再インストール
Raspberry Pi起動時にShiftキーを押したままにするとインストール画面が表示される。
_◇raspi-config
初期設定ツール
再度設定する場合は
$ sudo raspi-config
※ロケール
国_言語.文字コード
ja_JP.UTF-8
※キーボード配列
Generic 105-key (Intel) PC
※キーボードレイアウト
Japanese – Japanese (OADG 109A)
※オルタネートグラフィックキー
ユーロ記号などの入力用
※コンポーズキー
アルファベットのアクセント記号入力用キー
_◇Rastrack
◆終了
_◇終了と再起動
※終了
$ sudo halt
※再起動
$ sudo reboot
_◇プロセスの強制終了
$ kill -9 プロセスID
◆管理
_◇sudoers
piは初期状態でsudoersに登録されている。
_◇管理者権限でのShellの実行
$ sudo -s
⇒プロンプトが#に変わる。exitすると一般ユーザに戻る
_◇ネットワークの設定
※/etc/network/interfaces
│ iface eth0 inet dhcp DHCPでIPアドレス得る
│ iface eth0 inet static 固定IPアドレス
│
│ address IPアドレス
│ netmask ネットマスク
│ gateway デフォルトゲートウエイ
※/etc/resolv.conf
│ nameserver DNSサーバのIPアドレスを与える
※ネットワーク設定の適用
$ sudo /etc/init.d/networking reload
_◇WiFi設定
※GUIツール WiFi Configを使用
※/etc/wpa_supplicant/wpa_supplicant.conf
│ ssid SSID(“SSID”)
│ psk パスフレーズ(“passwd”)
│ proto プロトコル(WPA2など)
│ key mgmt 鍵交換方式(WPA-PSKなど)
│ pairwise 鍵の種類(TKIPなど)
※パスフレーズの暗号化
$ wpa_passphrase SSID パスフレーズ
※Wifiの再設定
$ sudo ifdown wlan0
$ sudo ifup wlan0
※無線LAN情報の表示
$ iwconfig
_◇ディスプレイ設定
※GUIでの確認
設定>モニタの設定
※設定変更 /boot/config.txt
①HDMIからのディスプレイ情報を使用しない
hdmi_ignore_edid=0xa5000080
②over_scan(黒い外枠部)を表示しない
disable_overscan=1
③hdmiの接続規格選択
CEA…1
DMT…2
例)
hdmi_group=2
④画面解像度の設定
⇒選択した規格により設定番号は異なる
hdmi_mode=設定番号
⑤NOOBSの自動設定項目
$ NOOBS Auto-generated Settings:
以下に項目が並んでいるのでこれらを
#
でコメントアウトする
⑥sudo rebootで再起動
_◇パッケージのインストールとアンインストール
※APT
Advanced Packaging Tool
①apt-cache
パッケージの検索と詳細表示
apt-cache search “キーワード”
│ パッケージを検索する
apt-cache show パッケージ名
│ パッケージの詳細情報の表示
②apt-get
パッケージのインストール、削除、アップデート
apt-get update
│ パッケージ情報を取得する
│ 管理者権限必要
apt-get install パッケージ名
│ パッケージをインストールする
│ 管理者権限必要
⇒apt-get -y installとすると問い合わせ事項にすべてyで答える。
apt-get remove パッケージ名
│ パッケージを削除する
│ 管理者権限必要
apt-get upgrade パッケージ名
│ パッケージを更新する
│ 管理者権限必要
※Synaptic
APTのGUIフロントエンド
⇒要インストール
$ sudo apt-get install synaptic
◆リモートアクセス、ネットワーク
_◇SSHサーバー
※sshサーバーの起動
$ sudo /etc/init.d/ssh start
※sshサーバーの自動起動の設定
$ sudo update-rc.d ssh defaults
※SSHサーバーを立ち上げればリモートからTCPポート22でSSH接続が可能
SSH2 UNSPEC
⇒初回セキュリティ認証がでるが、known hostsリストに追加し接続
※Tera Term使用の場合、画面にファイルをドラッグ&ドロップでファイル転送可能
※File転送
⇒Windows側 FileZilla
_◇VNCサーバー
※TightVNC
インストール
$sudo apt-get install tightvncserver
実行
例)
$ tightvncserver :1 -geometry 1280×800 -depth 24
:1の1はディスプレイ番号、ビューワー側と合わせる
-geometry は解像度
-depth は色数
終了
$ tightvncserver -kill :1
⇒VNCサーバーを自動起動する場合には、なんらかの起動スクリプトを仕込む事が必要。
※Windows側 realVNCを利用
_◇Webサーバー
※nginx
インストール
$sudo apt-get install nginx
スタート
$sudo /etc/init.d/nginx start
初期状態の公開フォルダ(管理者権限必要)
/usr/share/nginx/www/
再起動
$sudo /etc/init.d/nginx restart
_◇PHP
※php5-fpm
インストール
$sudo apt-get install php5-fpm
※nginxでのPHPの使用
⇒/etc/nginx/sites-available/default (要管理者権限)
⇒index項目
初期設定では、index.html index.htmのみにindex.phpを追加
⇒location項目
fastcgi_pass項目以外のコメントアウトを外す
⇒/etc/php5/fpm/php.ini(要管理者権限)
cgi.fix_pathinfo=1を0に変更
再起動
$sudo /etc/init.d/php5-fpm restart
⇒nginxも再起動する
※確認
_◇MySQL
インストール
$ apt-get install mysql-server php5-mysql
⇒mysqlへの管理者パスワード設定が必要
mysqlへのログイン
$mysql -u root -p
_◇Samba
CIFS(Common Internet File System)互換
⇒Microsoft独自のSMB(Server message Block)を規格化したもの。NetBIOS不要。
インストール
$ sudo apt-get install samba samba-common-bin
共有フォルダの作成
$ sudo mkdir /var/samba
※Samba用に新規ユーザを追加する場合は
$ sudo useradd ユーザ名
$ sudo passwd ユーザ名
⇒パスワードを入力
※共有ホルダの所属ユーザをユーザ名に変更
$ sudo chown ユーザ名:グループ名 /var/samba
⇒ユーザ名=グループ名
$ sudo pbdedit -a ユーザ名
⇒パスワードを入力
⇒pbdeditはSambaユーザのデータベースであるSAMデータベースを管理する
※共有ホルダの公開設定
/etc/samba/smb.conf
⇒末尾に加える
[Share] comment = ~ browseable = yes path = /var/samba writable = yes valid users = ユーザ名 force user = ユーザ名
※Sambaの再起動
$ sudo /etc/init.d/samba restart
◆日本語環境
_◇GUI
※ibus-anthyをインストール
$ sudo apt-get install ibus-anthy
設定>IBusの設定>インプットメソッド(タブ)
インプットメソッド選択>日本語>Anthyを選択して「追加」
⇒設定閉じる
⇒半角全角キーにより日本語入力が可能となる
_◇CUI
※jfbtermとuimをインストール
$ sudo apt-get install jfbterm uim uim-anthy
※/usr/share/uim/generic-key-custom.scm
ファイル(管理者権限要)のgeneric-on-key, generic-off-keyの定義で
スペースをスペースに変更
⇒こうしないと日本語への切り替えがうまくいかない
※ログイン時にjfbtermとuimを起動するようにする
⇒.bashrc編集(管理者権限要)
.bashrcの末尾
RUNTTY=`/usr/bin/tty | cut -c 6-8`
if [ $RUNTTY = ‘tty’ ]
then
jfbterm -q -e uim-fep -u anthy
fi
◆ハードウエアインタフェース
_◇GPIO端子
+3.3V 1 2 +5V
I2C_SDA/G2 3 4 +5V
ISC_SCL/G3 5 6 GND
GPCLK0/G4 7 8 G14/UART_TXD
GND 9 10 G15/UART_RXD
G17 11 12 G18/PCM_CLK
PCM_DOUT/G27 13 14 GND
G22 15 16 G23
+3.3V 17 18 G24
SPI_MOSI/G10 19 20 GND
SPI_MISO/G9 21 22 G25
SPI_SCLK/G11 23 24 G8/SPI_CE0
GND 25 26 G7/SPI_CE1
_◇制御ライブラリ
※scratch
cymplecy(simplesi)よりダウンロード
$ sudo wget http://goo.gl/dANpKr -o isgh.sh
$ sudo bash isgh.sh
>Scratch GPIO4をダブルクリック>遠隔センサ接続有効
※python
GPIOライブラリの読み込み
import RPi.GPIO as GPIO
①GPIOの初期化
│ GPIO.cleanup()
②GPIOの端子配列の設定
Broadcomチップ準拠配列
│ GPIO.setmode(GPIO.BCM)
ボード上の端子番号配列
│ GPIO.setmode(GPIO.BOARD)
_◇GPIO制御例
#! /usr/bin/env python import RPi.GPIO as GPIO import time GPIO.setwarnings(False) GPIO.cleanup() GPIO.setmode(GPIO.BCM) GPIO.setup(4, GPIO.OUT) counter = 0 while True: GPIO.output(4, GPIO.HIGH) time.sleep(1) GPIO.output(4, GPIO.LOW) time.sleep(1) counter += 1 print(counter)