変奏現実

パソコンやMMORPGのことなどを思いつくまま・・・記載されている会社名・製品名・システム名などは、各社の商標、または登録商標です。

この画面は、簡易表示です

Raspberyy-Pi

【Raspberyy-Pi】 もう一度ちゃんと設定してみる ~WordPressが観れるまで~

適当にやったせいで、何もかもが遅すぎ、でもコンビニで売っているモバイル・バッテリー(容量:2600mAH)で3時間ぐらい動いたので良し。
改めて初期設定からやり直す。

  1. microSDカードに書き込むRasberianのイメージファイルをダウンロードする。
    • 今回は、
      Version: June 2014
      Release date: 2014-06-20
  2. WindowsからmicroSDカードにRaseianのイメージを書き込むためにWin32DiskImager-0.9.5もダウンロードする。
  3. Win32DiskImagerで2014-06-20-wheezy-raspbian.zipの中の2014-06-20-wheezy-raspbian.imgを指定して書き込む。
    • ちゃんとZIPファイルを解凍してから行った方がいいだろう。
  4. HDMIケーブル、キーボード、LANケーブル、USBの無線LANアダプター(BUFFALO WLI-UG-GNM)を繋いでから、電源を入れる。
    • HDMIケーブルを後でつないでもモニターを認識しないことがある。
  5. Linuxのいつものカーネルの起動ログが画面を流れていった後に「Raspberry Pi Software Configuration Tool (raspi-config)」が表示される。
    • ここで設定を間違えた場合は sudo raspi-config とコマンドを入力すれば、やり直せる。
    1. Expand Filesystem を反転させたままEnter。
      1. Root partition has been resized. The filesystem will be enlarged upon the next reboot  と出てくるのでOKが反転の状態でEnter。
    2. 下カーソルでChange User Passwordを反転させEnter。
      1. ここでデフォルトのユーザ(pi)のパスワードを変更する。※passwd pi を起動してくれるだけ。
    3. 下カーソルでInternationalisation Optionsを反転させEnter。
      1. Change Localeを反転させたままEnter。
      2. しばらく待つ。※長くかかる理由は次のページをみれば大体想像が付くだろう。
      3. [*] en_GB.UTF-8 UTF-8の[*] をSpaceで[ ] に切り替える。
      4. en_US.UTF-8 と ja_JP.UTF-8に[*]の状態にする。
      5. TABキーで<OK>を反転させEnter。
      6. Configuring locales 画面に切り替わるので、下カーソルでen_US.UTF-8を反転させEnter。
      7. しばらく待つ。
    4. 再び、下カーソルでInternationalisation Optionsを反転させEnter。
      1. 下カーソルでChange Timezoneを反転させEnter。
      2. しばらく待つ。※長くかかる理由は下の4の長い都市リストをみれば大体想像が付くだろう。
      3. 下カーソルでAsiaを反転させEnter。
      4. 下カーソルでTokyoを反転させEnter。
    5. 再び、下カーソルでInternationalisation Optionsを反転させEnter。
      1. 下カーソルでChange Keyboard Layoutを反転させEnter。
      2. 何かエラーが出るがキニシナイ。
      3. 下カーソルでGeneric 105-key (Intl) PCを反転させEnter。
      4. 下カーソルでOtherを反転させEnter。
      5. 下カーソル・・・面倒なのでJを押してJapaneseを反転させEnter。
      6. 元の画面に戻ったような錯覚が起きるが、先の画面では全てEnglishだったハズ。ここでは上カーソルキーで先頭のJapaneseを反転させEnter。
        1. OADG 109Aでもよい気がするけどね。
      7. The default for the keyboard layoutを反転させEnter。
      8. No compose keyを反転させEnter。
      9. By default the combination Control+Alt+Backspace dos nothing. If you want it can be used to terminate the X server. Use Control+Alt+Backspace to terminate the X server? と表示されるので左右カーソルでYesを反転させEnter。
      10. ※この設定は一部間違いが含まれている気がするので、あえて操作を全て記録。
    6. Advanced Optionsを反転させEnter。
      1. Hostnameを反転させEnter。
      2. ユニークなホスト名を入力。
        • Raspberry-Piを買い足すなんてアリエナイ!と自信がある人は変更不要。
        • 面倒な人はシリアルナンバーでもよし。
          • 例:sn-01。
          • 記号の「-」(ハイフン)は先頭以外ならOK、数字だけでもよいけど、マシン名[1]のIPアドレスが[192.168.*.2]だったりすると誰でも混乱する。
          • 記号の「_」(アンダースコアー)はWindowsでは使えるけどそれはローカル・ルール。LinuxのDHCPサービスを使ってPCのIPアドレスを割り当てようとした途端、MAC-ADDRESSが正しくても、マシン名に問題があるので、認識せずIPアドレスが貰えなくなってしまう。しかし多くは中身がLinuxであろう市販のルーターはMAC-ADDRESSしか見てないことが多い、おそらくトラブルが絶えなかったので【マシン名は見ないことにした】のだろう。
          • ちゃんと検証するつもりが無いなら、記号は使わない方が良い。
    7. 再び、下カーソルでAdvanced Optionsを反転させEnter。
      1. 下カーソルでSSHを反転させEnter。
        1. 左右キーで<Enable>を反転させEnter。
    8. TABキーで<Finish>を反転させEnter。
    9. Reboot と 聞いてくるので、仕方なくリブートさせる。
  6. とりあえず最新にする。
    1. sudo apt-get update
  7. マシン名で接続できるようにAvahi デーモンをインストールする。
    1.  sudo apt-get install avahi-daemon
    2.  Do you want to continue [Y/n] はEnterでスルー。
  8. WinSCPが使いやすい様に、rootのパスワードを設定しておく。
    1. sudo passwd root
    2. 好きなパスワードを設定。
  9. この辺で、Tera-TermやWinSCPから {マシン名} . local で接続してみる。
    • 例: Tera-Termなら pi@sn-01.local で接続。
  10. sudo apt-get upgrade もやっておく。
    • たくさん出てくる。とんでもなく長く時間がかかる。
    • wolfram-engine が233MBとグンを抜いて長い。
      • 本来は有償のものらしいけど、Raspberry-Piでは無償で使えるらしい。
        • Raspberry-PiではPredictive Interface等、特に動作を遅くする一部の機能を無効化しているらしい。
      • 重いけど、消すとupdateの度に妙なエラーが出るらしいし、タダで使ってみたくなるかもしれないので、そのままにしておく。
    • などど書いている間も色々パッケージの更新が進行中。
    • opensslやsshのアップデートも入っていたので、やった方が安心。(かもしれない。
  11. 無線LANの設定
    1. /etc/network/interfacesを編集
      1. iface wlan0 inet dhcp
      2. wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
    2. /etc/wpa_supplicant/wpa_supplicant.conf
      1. ここでLANケーブルを外し、USB接続のキーボードとマウスを取りつけて、X-WindowのWifi Configから追加する。
        • LANケーブルもつなげたまま、X-Windowを起動していたら、途中で無線LANアダプタが無反応になった。
        • LANケーブルを外し、無線LANアダプタを挿しなおすしたら再開できた。
        • 本体が3W、無線LANアダプタがMax. 2.5Wなので、相対的にUSB接続のキーボードとマウスの消費電力も結構大きいのかもしれない。
        • X-Windowの【Wifi Config】で複数の無線LAN親機やテザリングを選択し個別に設定でき、何よりもパスワード以外のパラメータは自動的(?)に設定してくれるので安心。
        • 無線ルータやスマフォのテザリングなど使いそうなものを設定をしておくといい。
        • 何度もSCANすると、その度に、同じ名前で、いくつも Network {…}ができるので、不要なものは消しておくこと。
  12. Apache2の代りにlighttpdを使う
    1. sudo apt-get install lighttpd
    2. ブラウザで {マシン名}.local  を表示させたら、Welcom page がちゃんと表示。
  13. サービス管理を変える
    1. apt-get install chkconfig
    2. 不要なサービスは停止させる・・・でもどれが不要かはまだ未定。
    3. sudo chkconfig –list を眺めてみると、apache2はサービスそのものが未登録、lighttpdは自動起動が登録済みだった。
  14. VNCを追加 スマフォからもX-Windowが観れるようにした方が安心だから
    1. sudo apt-get install tightvncserver
    2. tightvncserver
    3. VNC用のパスワードを聞かれる。長いパスワードを入れても8文字以降は無視されるので、気の利いたパスワードを入力する。
    4. sudo vi ~/.vnc/xstartup で、最後に【 /usr/bin/lxsession -s LXDE & 】 の行を追加。
    5. なお、2~4の設定は pi ユーザのみ行う。tightvncserver  がpiユーザ専用になっているからだ。
      1. ポート番号や画面番号はいつも変動するので、~/.vnc/*.log の内容をメモっておくこと。
    6. 自動起動の設定を作っておく。
      1. sudo vi /etc/init.d/tightvncserver  で、以下のテキストをコピペ。
        • コメントっぽい部分も意味があり、解釈されるので、外さないこと。
      • #!/bin/bash
        ### BEGIN INIT INFO
        # Provides: tightvncserver
        # Required-Start: $syslog
        # Required-Stop: $syslog
        # Default-Start: 2 3 4 5
        # Default-Stop: 0 1 6
        # Short-Description: vnc server
        # Description:
        #
        ### END INIT INFO
        # /etc/init.d/tightvncserver
        ## Carry out specific functions when asked to by the system
        case “$1” in
        start)
        su pi -c ‘/usr/bin/vncserver’
        echo “Starting VNC server”
        ;;
        stop)
        pkill vncserver
        echo “VNC Server has been stopped (didn’t double check though)”
        ;;
        *)
        echo “Usage: /etc/init.d/blah {start|stop}”
        exit 1
        ;;
        esacexit 0
      1. sudo chmod 755 /etc/init.d/tightvncserver
      2. sudo chkconfig tightvncserver on
    7. WindowsのVNC Viewerを使う場合、
      • VNC Server:【 {マシン名} . local : {port番号} 】だけでよく、画面番号は不要らしい。
      • これはユーザごとにポートを分けたせいで、設定次第な様が気がする。
  15. MySQL
    1. sudo apt-get install php5-cgi php5-mysql mysql-server
      • MySQLのrootユーザのパスワードを入力。
  16.  lighttpdのプラグインを追加。
    1. /etc/lighttpd/conf-enabled/に、fastcgi と fastcgi-php の シンボリック・リンクを貼る。
      • ln  -S   ../conf-available/10-fastcgi.conf          .
        ln  -S   ../conf-available/15-fastcgi-php.conf  .
  17. WordPressをダウンロード。
    1. wget http://ja.wordpress.org/wordpress-3.9.2-ja.zip
    2. unzip wordpress-3.9.2-ja.zip
    3. sudo   mv   wordpress  /var/www/.
    4. sudo   chown -R www-data.www-data  /var/www/wordpress
  18. DB作成
    1. sudo apt-get install phpmyadmin
      • lighttpdを選択。
      • DBのパスワードも設定するがエラー。
    2. 再び、sudo apt-get install phpmyadmin で同じ設定。
    3. これで、ブラウザで、http://{マシン名}.local/phpmyadmin/ を開ける。
    4. WordPress用のデータベースを作り、ここでデータベース固有のユーザを作る。
      • このユーザにはlocalhostのみ先のデータベース の全ての特権を与えグローバル特権は何も与えない。
      • このユーザはWordPressが使用するので、何かが起きても、他に影響を与えない様にする。
    5. wp-config-sample.phpをコピってwp-config.phpを作り、先のDB名、ユーザ名、パスワードに上書きする。chown で www-data.www-data に変更。
    6. ブラウザからhttp://{マシン名}.local/wordpress/ を開く。
      1. ここでIPアドレスで開くと後で痛い目に遭う。
      2. あらゆるリンクがIPアドレス指定になり、DHCPサーバーが別のIPアドレスを振るとCSSが全てun-knownになり、RSSなどのリンクもボロボロになる。
      3. だから、「もう一度ちゃんと初期設定してみる」ハメになったのだ。
    7. WordPressインストール画面が開いたら、指定の情報を設定する。
      • たったこれだけのために全部再インストールすることになったのでココは絶対間違える訳にはいかない。
  19. 以上で設定を終了。
  20. topの状況。
    1. top – 01:55:07 up  2:18,  2 users,  load average: 0.89, 0.86, 0.53
      Tasks: 114 total,   1 running, 113 sleeping,   0 stopped,   0 zombie
      %Cpu(s): 20.0 us, 50.0 sy,  0.0 ni, 30.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
      KiB Mem:    447996 total,   431780 used,    16216 free,    22212 buffers
      KiB Swap:   102396 total,        0 used,   102396 free,   225980 cached
    2. メモリが512MBなので、空きメモリはたったの16,216KB これはきつそう。
  21. nucのtopの状況。
    1. top – 02:27:41 up 161 days, 23:36,  1 user,  load average: 0.14, 0.04, 0.01
      Tasks: 143 total,   1 running, 142 sleeping,   0 stopped,   0 zombie
      Cpu(s):  1.1%us,  0.3%sy,  0.1%ni, 98.4%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
      Mem:   3366248k total,  3207116k used,   159132k free,   189420k buffers
      Swap:  3506168k total,    28608k used,  3477560k free,  1447436k cached
    2. メモリが4GBなので、空きメモリも159,132KB と、かなり余裕。
  22. freeの状況。
    1.                        total            used          free     shared     buffers      cached
      Mem:       447996        429772      18224               0      16812     206096
      -/+ buffers/cache:     206864      241132
      Swap:       102396                   0     102396
  23. nucのfreeの状況。
    1.                        total             used            free     shared     buffers     cached
      Mem:     3366248     3194624      171624               0     189856    1403260
      -/+ buffers/cache:    1601508    1764740
      Swap:     3506168         28608    3477560
  24. 多分、これで大丈夫のハズ。
  25. 公開する時には、iptables、ウイルス対策、rootツールチェッカーも必要だろうけど…

最後に、ドコかのコピペで十分だった訳ではありません。
raspberry-Piに関するたくさんのページを参考にそれぞれ試して良い結果を得られたものを採用させていただきました。
その結果、もう一度やり直すハメになった訳ですけどね・・・(遠い目
多分、sudo apt-get update や sudo apt-get upgrade をする度に 良いことも、悪いことも、色々起きているのでしょうね。・・・(遠い目
CentOSだって、驚きのアップグレードで痛い目に遭う時もあるので・・・(遠い目
service tightvncserver off すると、
/etc/init.d/tightvncserver: line 23: syntax error near unexpected token `(‘
/etc/init.d/tightvncserver: line 23: `echo “VNC Server has been stopped (didn’t double check though)”’
あ、” が全角だった・・・まだまだ何かありそう・・・(遠い目
やっと、service tightvncserver stop して topを見ると・・・
top – 03:08:38 up  3:31,  2 users,  load average: 0.11, 0.17, 0.18
Tasks: 129 total,   1 running, 128 sleeping,   0 stopped,   0 zombie
%Cpu(s):  2.0 us,  2.3 sy,  0.0 ni, 95.0 id,  0.0 wa,  0.0 hi,  0.7 si,  0.0 st
KiB Mem:    447996 total,   430540 used,    17456 free,    16936 buffers
KiB Swap:   102396 total,        0 used,   102396 free,   206276 cached
CPUの使用率が激減、tightvncserver の自動起動ははずした方がよさそう。
sudo chkconfig tightvncserver off
とりあえずコレでよし。
service tightvncserver start
bash: ‘/usr/bin/vncserver’: No such file or directory
ん?‘ がおかしい?`のハズ、また全角か・・・(遠い目
修正して、service tightvncserver start。
またtopで観てみると95.3 id さっきと全く違う・・・(遠い目




top