ラベル 遠隔操作 の投稿を表示しています。 すべての投稿を表示
ラベル 遠隔操作 の投稿を表示しています。 すべての投稿を表示

2013年12月12日木曜日

Raspberry Pi :Apache、PHP その1

前回は、Raspberry Pi に Apacheをインストールし、バッシュのCGIを実行しました。
今回はついでに入れたPHPを試してみます。


基本的にはCGIのフォルダにPHPファイルを入れるだけで動きます。

まず、次のようにファイルを作ります。

su コマンドを実行し、/usr/

su
password: *****

cd /var/www/ (または cd /usr/lib/cgi-bin/)
touch test.php
vi test.php

viエディタは起動時にコマンドモードです。
「i」を押すと編集ができるようになります。「ESC」でコマンドモードに戻れます。

<?php
echo 'Hello PHP!';
?>

として、コマンドモードで :wq と入力して保存します。

パソコンから192.168.***.***/test.php (または、192.168.***.***/cgi-bin/test.php)

と入力すると

Hello PHP!

と表示されます。

2013年11月2日土曜日

Raspberry Pi :Apache、CGI、root

root権限を使うことで、より自由に色々なことができます。
ここではroot権限で色々なことをやってみようと思います。

・sudo
これはあるroot権限の操作をターミナルで実行するときに使います。一回だけ使うイメージです。
ではsudoを使ってApacheというサーバーソフトを入れてみましょう。(PHPも後で使うかもしれないので一応入れました)

ターミナルを開いて
sudo apt-get update

sudo apt-get upgrade

sudo apt-get install apache2 php5

sudo chown pi -R /var/www

sudo update-rc.d apatche2 default

とコマンドを打ちます。途中で続行するか聞かれるのでYを押してください。

これですでにサーバーとして機能しているので

ターミナルで

ifcofig

を押して、割り当てられたIPアドレスを調べます。
同じルーターにつながったPCからhttp://192.168.***.***/
と入れるとIt's work!と表示されると思います。
このHTMLファイルは/var/www/に存在しますので書き換えれば色々なページが作れます。


次にCGIを使えるようにしようと思います。
まず、Apacheを止めます。
apachectl -k graceful-stop

ちなみに再開する時は
sudo /etc/init.d/apache2 start
とします。


CGIを使えるようにする前にroot権限でファイルを扱えるようにしたいと思います。

sudo passwd root

と入れるとパスワードを入れてくれと出てきます。忘れないようなパスワードを入れます。
忘れるとRaspberry Piを再インストールする必要があります。

次に
su
 と入れるとパスワードを聞かれます。
先ほど入れたパスワードを入れるとroot権限でターミナルが使えるようになります。
suをやめたいときはexitと入れると元に戻ります。

vi /etc/apache2/mods-available/mime.conf

で設定ファイルを開きます。
vi エディタはコマンドモードと文章書き込みモードがあります。
左下に「挿入」とあれば書き込みモードです。[esc]キーでモードを変えられます。
左下に「挿入」と無ければコマンドモードです。[i]を押すとモードを変えられます。

mine.config の219行目の#マークを削除します。
AddHandler cgi-script .cgi
コマンドモードにして:wqで上書き保存して終了します。(失敗した時は:qとすると保存しないで終了できます。)

次に

vi /etc/apache2/sites-available/default

を入力し、ファイルを開きます。
今度は<Directory /var/www/>という項目に
 +ExecCGIを追記します。

<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews +ExecCGI
AllowOverride None
Order allow,deny
allow from all
</Directory>

同様にviエディタのコマンドモードにして:wqで上書き保存して終了します。(失敗した時は:qとすると保存しないで終了できます。)

次にテスト用のCGIを書きます。

vi /usr/lib/cgi-bin/mycgi.cgi

として、

#!/bin/bash

echo “Content-type:text/html”
echo “”


echo Hello!

として:wqで保存します。

最後にCGIの権限を変更します。

sudo chmod 755 /usr/lib/cgi-bin/

sudo chmod 755 /usr/lib/cgi-bin/mycgi.cgi

最後にApacheを再開します。

sudo /etc/init.d/apache2 start


これでブラウザから

http://192.168.***.***/cgi-bin/mycgi.cgi

とすると

Hello!

と表示されます。


2013年9月15日日曜日

Raspberry Pi 入門 1:起動とVNC編

最新情報の目次はこれで、最終的に動画のような物も作れます。
Raspberry Pi Noobsで簡単リモートデスクトップ
WiringPiのセットアップ・・・C言語でGPIOを動かしてみる
Pythonのセットアップ・・・人気のPythonで動かしてみる

WebからPHPで簡単アクセス・・・PHP、Pythonで遠隔GPIO



                                        
以下古い記事です。

-------------------------------------------
1、Windows PCでの作業で説明します。

まずLinuxイメージをダウンロードして、2GB以上のSDカードに保存するところから始めます。
今回は4GBを使いました。

ページから色々なOSがダウンロードできるようになっています。
ここで、Raspberry Piに最適化されているという「RaspbianというLinuxで作ってみましょう。
今回は図の2013-02-09-wheezy-rasbian.zipを使ってみます。



そして次に、同じページにあるWin32DiskImagerというリンクをクリックしてダウンロードます。これを使ってWindows上でLinuxSDカードを作るとか、良くわかりませんがそういうソフトらしいです。

ダウンロードした二つのZipファイルを解凍して、Win32DiskImagerを使って先ほどのRaspbianをSDカードに展開します。


SDカードはG:ドライブとして認識されています。青いフォルダボタンで解凍したRaspbianの.imgファイルを選択してください。Writeボタンを押すと書き込んでくれます。
これでWindows PCでの作業は終わりです。

SDカードは数十MBと表示されるが、問題は無いようです。 ※もしも、SDカードを元に戻したいときはSDフォーマッター4.0を使うと直る。
・USBキーボード

・USBキーボード

起動すると画面に色々メニューが出ますので、以下のように設定してください。
起動すると画面に色々メニューが出ますので、以下のように設定してください。
起動すると画面に色々メニューが出ますので、以下のように設定してください。
(この設定はあとでraspi-configすれば開きます。)
最後に日本語化が必要な方には色々と方法がありますが、個人的に組込に関しては日本語化しない方が海外の情報を利用しやすくなるので英語もお勧めです。
最後に日本語化が必要な方には色々と方法がありますが、個人的に組込に関しては日本語化しない方が海外の情報を利用しやすくなるので英語もお勧めです。
再起動してiBusを左下のメニューボタンから設定します。
※Linuxターミナルの使い方は各種書籍が出ているので利用してみてください。


https://www.sdcard.org/jp/downloads/formatter_4/eula_windows/
参考
http://blog2.k05.biz/2012/01/blog-post_31.html

-------------------------------------------
Raspberry Pi での作業
まず各種機器を接続
・USBマウス
・5V 700mAのスマフォ用電源

・LANケーブルを接続しておく
・HDMIケーブル、HDMI端子があるデジタルテレビに接続してみる。
HDMIケーブルには方向があるので注意してほしい、TVと書いてある方をTVにつながないと全く動かないです。

最初にずらずら―っと色々でてきますがじっくり待ちます。






------------------------------------------




expand_rootfs
    rootfs を SD カードいっぱいに拡張してくれます。
overscan 
    画面いっぱいに表示してくれるのでEnableにしました
configure_keyboard
  Generic 105-key (Intl) PC
    Keyboard layout
      Other 
        Japanese
          [Japanese]
           [The default for the keyboard layout]
                      [No compose key]
                      Use Control+Alt+Backspace to terminate the X server?  [No]
change_pass
      パスワードを設定できます。
change_locale
    ja_JP.EUC-JP EUC-JP
    ja_JP.UTF-8 UTF-8
   Default locale for the system environment
     ja_JP.UTF-8
change_timezone
      Asia
         Tokyo
memory_split
    何もいじらないでOK
overclock
    何もいじらないでOK
ssh
    [YES]
boot_behaviour
        [YES]
update
    何もいじらないでOK

Finish で終了し再起動してください。


-------------------------------------------







LXTerminal で最新のアップグレード情報を更新
$sudo apt-get update
各種プログラム等を更新
$sudo apt-get upgrade

-------------------------------------------------------
必要な人は日本語化もできます。
日本語漢字フォントなどを手に入れる
$sudo apt-get install ttf-kochi-gothic xfonts-intl-japanese xfonts-intl-japanese-big xfonts-kaname
日本語入力ibus-anthyを手に入れる
$sudo apt-get install ibus-anthy

[設定]->[IBusの設定]をクリック
[インプットメソッドタブ]->[インプットメソッド選択]->[日本語-Anthy]->追加ボタンクリック

参考
http://www.designspark.com/jpn/nodes/view/type:knowledge-item/slug:JPN-raspberry-pi-Japanese-version
http://juncoffee.jp/?p=4095
http://ameblo.jp/mijyu-sakura/entry-11329029030.html
-------------------------------------------------------


次に遠隔操作出来るようにしましょう。

せっかく小さいRaspberry Piにモニター等をつなぐのでは面倒です。最悪ポータブルのアナログTVで見れれば良いかと思います。しかし、それでずっと作業するのは苦痛なのでLANを通して遠隔操作をしたいと思います。



VNCサーバーを使った遠隔操作についての説明です。
要するにノートPC等でRaspberry Piにリモートアクセス出来ると開発環境が非常にコンパクトになるというわけです。
まずは前回の構成で通常に起動してください。もちろんLANはつないでおいてください。
ターミナルで
 $sudo apt-get update
次に
 $sudo apt-get install tightvncserver と入力しましょう。
実行しますかと聞かれるのでYを入力します。
これでVNCが入ったので、次はRaspberry PiのIPアドレスを調べます。
ターミナルで
 $ifconfig
を入れます。たぶん、inetアドレス:192.168.0.9 などと表示されていると思います。
それをメモしておいてください。
次にVNCサーバーの起動をします。ターミナルで
 $tightvncserver 
と入力してください。パスワードを求められるので、VNCで遠隔ログインするときのパスワードを入力してください。
---------------------------------------
次にノートPCなどに遠隔ログインして操作できるクライアントソフトを入れます。
Windows用のソフトもあればJavaもあります。好きな方を使用してください。
個人的にはViewerだけダウンロードする方が安全かなと考えています。
今回はJavaで見てみようと思います。
tvnjviewer-2.6.2-bin.zip
をダウンロードして解凍
tightvnc-jviewer.jar
を実行します。Java1.6がインストールされてないと使えないので注意してください。普通は動くと思います。
ポート番号は5901を指定します。
[Connect] を押すと先ほどのパスワードが聞かれますので、同じものを入力。
以下のようにログインできれば完成です。
毎回VNCを立ち上げるのが面倒な場合-------------------
penguintutorというページにアクセスして、設定を簡単にインストールできる。
ターミナルから以下のコマンドを入れていく
まず、chkconfigをインストール
sudo apt-get install chkconfig
次に以下のコマンドを入れていく
wget http://www.penguintutor.com/otherfiles/tightvncserver-init.txt
sudo mv tightvncserver-init.txt /etc/init.d/tightvncserver
sudo chmod 755 /etc/init.d/tightvncserver
sudo chkconfig tightvncserver on
最後にスタート->アクセサリ->ファイルマネージャー でpiフォルダが表示されるので、右クリックで「隠しフォルダを表示」を押すと
.vncというフォルダが出る。
中にxstartupという歯車マークの付いたファイルがあるのでleafpadで開く
テキストの最後に
/etc/X11/Xsession -s LXDE &
と編集する。
---------------------------------------------------------------
VNCで起動しているとターミナルからシャットダウンするか、TVをつないてマウスで操作するしか方法が無いようです。
遠隔でシャットダウンするにはターミナルで
sudo shutdown -h now
とコマンドを入れれば終了できます。
最後に無線化などする場合は以下の方法がある。
現在公開されている Raspberry Pi だと以下のドングルがUSBポートに挿し込むだけで使えるようです。
他には小型ルーターを使って無線経由の有線接続もできる。
例えば、PLANEXポータブルWi-Fiポケットルータ MZK-RP150Nのコンバータモードを使う事もできる。
Raspberry Pi のUSBポートに負荷を与えたくない時に良いかもしれない。
参考サイト