Raspbian サーバ構築ガイド |
●ラズベリーパイのOS環境の確認 a. OS起動後にグラフィック画面が自動起動するか Yes=> OK No => コマンド(sudo raspi-config)等を用い、自動起動(AutoLogin,X自動立ち上げ)する様にしておく。 b. 日本語キーボードが正しく使えるようになっているか Yes=> OK No => コマンド(sudo raspi-config)等を用い、日本語キーボード対応にしておく。 c. デイスプレーの解像度が、1280×1024 (1024×768) 以上になっているか (HDMI対応ディスプレーの場合ほぼ問題なし) Yes=> OK No => 手動による設定は、/boot/config.txt を編集する。 注: 記述が失敗すると画面が見えなくなる、この場合はラズベリーパイの再インストールと再試行が早い。 例) 1280x1024 にする時の一例 (詳しくは専門サイトを参照) $ sudo vi /boot/config.txt <Enter> -------------------------- #hdmi_safe=1 hdmi_device= 1 or 2 hdmi_goup=2 hdmi_mode=35 -------------------------- ●KaracrixBuilderをインストールする前の準備 1.必要パッケージのインストール インターネットに繋がっている状態で、ターミナル画面より以下実行して下さい。 パッケージ実行中に、「続行しますか [Y/n]?」と出たら y あるいは Y をキー入力して続けて下さい。 $ sudo apt-get update <Enter> $ sudo apt-get upgrade <Enter> $ sudo apt-get install gcc make xorg-dev xfonts-base libssl-dev libopencv-dev scim-anthy chkconfig gedit apache2 emacs jfbterm gparted <Enter> 2.WEBサーバの設定 KaracrixBuilderのWEB画面を見る場合は、以下WEBサーバの設定をしておく必要があります。 $ sudo vi /etc/apache2/apache2.conf <Enter> -------------------------------------------- #<Directory /var/www/> <-- オリジナル <Directory /home/pi/karacrix32F/sys/sweb/htdocs/> <-- 変更 -------------------------------------------- sudo vi /etc/apache2/sites-available/000-default.conf <Enter> -------------------------------------------- #DocumentRoot /var/www/html <-- オリジナル DocumentRoot /home/pi/karacrix32F/sys/sweb/htdocs <-- 変更 #Include conf-available/serve-cgi-bin.conf <-- オリジナル Include conf-available/serve-cgi-bin.conf <-- 変更 -------------------------------------------- sudo vi /etc/apache2/conf-available/serve-cgi-bin.conf <Enter> -------------------------------------------- #ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <-- オリジナル ScriptAlias /cgi-bin/ /home/pi/karacrix32F/sys/sweb/cgi-bin/ <-- 変更 #<Directory "/usr/lib/cgi-bin"> <-- オリジナル <Directory "/home/pi/karacrix32F/sys/sweb/cgi-bin"> <-- 変更 -------------------------------------------- sudo a2enmod cgid // cgiの有効化 (必須) sudo vi /lib/systemd/system/apache2.service // /tmpの使用を許可 (apache2.serviceファイルが存在していた場合:必須) -------------------------------------------- #PriveteTmp=true PriveteTmp=false -------------------------------------------- 3.ここで、一旦OSを再起動して、以下KaracrixBuilderの設定に進んで下さい。 ========================================================================================== ●KaracrixBuilderのインストール 比較的新しいRaspbian/OS(64bit)でしたら以下を karacrix32F_v351_raspbian3_20170926.tgz 古いRaspbian/OS(32bit)でしたら以下を karacrix32F_v351_raspbian2_20150505.tgz をダウンロードしてこれ(通常,ファイルは"/home/pi/ダウンロード"にダウンロードされる)を、 例えばファイルマネージャを使用するなどして、ホームディレクトリ(/home/pi)に置き直します。 次に、この圧縮ファイルを解凍します。 ダウンロードファイルをダブルクリックして解凍画面から解凍するか、コマンドを用いて解凍します。 以下はTerminal画面よりコマンドを用いて解凍する例です。(ホームディレクトリ(/home/pi)で行います) $ tar xvfz karacrix32F_v351_raspbian3_20170926.tgz <Enter> あるいは $ tar xvfz karacrix32F_v351_raspbian2_20150505.tgz <Enter> 解凍すると、ホームディレクトリに Karacrix32F というディレクトリが生成されます。 ●KaracrixBuilderの起動 ファイルマネージャより karacrix32F に移動し、その中にある karacrix.sh をクリックし、 「実行(E)」ボタンからKaracrixBuilderを起動するか、以下コマンドを用いて起動します。 $ cd /home/pi/karacrix32F <Enter> $ ./karacrix.sh <Enter> ●KaracrixBuilderの使い方 CentOSやUbuntuでの使用と同じです。他の関連情報をご参照下さい。 ●karacrix32F のデフォルト設定 ダウンロードしたKaracrixBuilderの中には、RaspberryPi用I/Oボードに対応した通信制御ドライバ(S1)が、搭載されています。 RaspberryPiにこのI/Oボードが接続されている場合、通信制御ドライバ(S1)をコンパイルするだけで使えるようになっています。 通信制御ドライバ(S1)をコンパイル後、実行してお使い下さい。 ●電源オンからKaracrixBuilderの自動起動とアプリの自動起動まで RaspberryPiの電源オン後、制御プログラムを自動起動したい場合は、以下設定しておきます。 a. RaspberryPiのグラフィック画面が自動的に立ち上がる様にしておくこと。(自動ログイン) b. KaracrixBuilderが自動起動する設定を下記行っておく。 $ cd ~ <Enter> $ touch .xsessionrc <Enter> $ vi .xsessionrc <Enter> -------------------------------------------------- #!/bin/sh sleep 1 exec /home/pi/karacrix32F/karacrix_loginstart.sh & -------------------------------------------------- c. アプリ自動起動の為の作業 c-1. 作成したアプリ(制御ソフト)をコンパイルしておく。 c-2. ブートプログラムに作成したアプリを起動するよう記述を加えコンパイルしておく。 参照KaracrixBuilder画面 =>「制御プログラム登録→ブートプログラム」の編集とコンパイル 説明 : ブートプログラムは、KaracrixBuilderが起動されると一回実行される特別なプログラムです。 このプログラムの中に、通信制御ドライバ(S1)及び必要なプログラムを起動するように記述し コンパイルすることによって、自動起動させることが出来るようになります。 ========================================================================================== 4.参考 4.1.OSのRAM化 スワップの停止 $ sudo dphys-swapfile swapoff <Enter> $ sudo dphys-swapfile uninstall <Enter> $ sudo apt-get remove dphys-swapfile <Enter> //SWAP free SDカードが書き込み劣化しないよう良く使うエリアをRAM化しておく。 $ sudo vi /etc/fstab <Enter> 以下の内容(3行)を、/etc/fstab ファイルの最終行に追加しておく。 --------------------------------------------------------------- tmpfs /tmp tmpfs defaults,noatime,size=32m,mode=1777 0 tmpfs /var/tmp tmpfs defaults,noatime,size=16m,mode=1777 0 tmpfs /var/log tmpfs defaults,noatime,size=32m,mode=0755 0 --------------------------------------------------------------- 4.2.OSのRAM化に伴う設定 RAM化されたところに必要なディレクトリを生成させます。 $ sudo vi /etc/rc.local <Enter> 以下の内容(13行)を、/etc/rc.local ファイルの exit 0 行の前に追加する。 ----------------------------------- mkdir -p /var/log/ConsoleKit mkdir -p /var/log/fsck mkdir -p /var/log/apt mkdir -p /var/log/apache2 mkdir -p /var/log/ntpstats chown root.ntp /var/log/ntpstats touch /var/log/lastlog touch /var/log/wtmp touch /var/log/btmp chown root.utmp /var/log/lastlog chown root.utmp /var/log/wtmp chown root.utmp /var/log/btmp /etc/init.d/apache2 start ----------------------------------- 4.3. ユーザ情報メモ a. piのデフォルトユーザ名は pi b. piのパスワードは raspberry 4.4. 漢字入力不具合 最近のRaspbianで走る自動起動されたKaracrixBulderの漢字入力(半角全角ボタン)に不具合が起きています。 自動起動(rcブート)されたKaracrixBulderがインプットメソッドサーバにアクセスすると拒絶されるのです。 原因は今のところ不明です。 対処法:自動起動されたKaracrixBulderを一旦、「SYSEND」ボタンで終了して下さい。 そして、KaracrixBulderをファイルマネージャ(あるいは端末画面[cd ~/karacrix32F; ./karacrix.sh])より再起動させて下さい。 Menu -> アクセサリ -> ファイルマネージャ -> karacrix32F -> karacrix.sh -> 実行(E) 自動起動されないKaracrixBuilderからでは、漢字入力の不具合は起きません。