ラズベリーパイ

RSより販売されている名刺サイズの小型PC、ラズベリーパイに関する情報をまとめるページ。

サーバ運用

ラズベリーパイをサーバとして運用するまでのまとめ。

参考URL




OSのインストール

サーバとして運用するため、GUIは使用せず、CLIメインのOSを準備します。
新品のmicroSDをフォーマット。
まずはNOOBS LITEを公式からダウンロードして、解凍したファイルをmicroSDにコピー。
microSD、画面とマウスとキーボード、イーサネット(有線の場合)をRaspberry Piにつないで電源を入れる。

OSの選択画面が出るので、Rasbian Liteを選択してインストール。(無線の場合は先に設定)
途中現状のファイルを消去してもいいか確認が出るので、そのままyesで進める。

勝手に再起動して、OSが立ち上がる。
この後は、サーバとして使うため、SSH接続を許可する必要がある。
一度電源を切り、microSDをPCに接続。
bootというドライブに変わっているので、そこに空のファイルを作成し、「ssh」という名前に変更(拡張子なし)。

(ちなみにNOOBSを使わずにPCから直接microSDにOSをインストールした場合は、インストール後に最後のsshの名前のファイルを追加するといい)


再度Raspberry PiにmicroSDを戻して電源を入れる。
いろいろ表示されるが、最後のほうにIPアドレスが表示されていることを確認。

ここからはPCでの作業。

teratermなどの通信ソフトを用いて、表示されたIPアドレスにSSHでログイン。
標準のID,PassはPiとraspberry。
ログイン後はセキュリティ向上のため、任意のPassに変更する。
変更するには、sudo raspi-configを使用すると便利。
終了時に再起動するか聞かれるので、再起動。
次からは変更したPassでアクセスすること。

次に、サーバとして利用するため、IPアドレスを固定に変更。
標準設定はDHCPとなっているので、設定しているファイルを変更。
sudo nano /etc/dhcpcd.conf
エディタはviでもnanoでもemacsなんでもいいです。
このファイルのコメントで、#static 192.168.0.10/24と書かれた場所があるので、任意のIPアドレス、LANのルート、DNSに変更してコメント記号#を削除して保存。
(IP6の行は不要であればそのままコメントとしておく)
設定が終わったら、もう一度再起動し、IPアドレスが変わったことをSSHログインで確認する。
以下のコマンドで再起動。
sudo reboot

電源を切るときは、以下のコマンド。
sudo shutdown -h now
LEDが点滅し終わると電源OFFができる。

どこかのタイミングで、以下の更新コマンドを打っておくといい。
sudo apt-get update


httpサーバとしての設定

httpサーバとして運用するための設定を行う。
まずはapacheのインストール
sud apt-get install apache2

インストール後、apache -v でバージョンが確認できる。
以下のコマンドでapatch2が起動する。
sudo service apatch2 start

問題なければ、webブラウザでRaspberry PiのIPアドレスにアクセスすればデフォルトページが表示されるようになる。
このデフォルトページは/var/www/html/index.htmにあるので、編集すればすぐに反映される。

この段階で、家庭用のルータの設定を変更すれば、外部からでもアクセスが可能となる。
(グローバルアドレスでLAN内からアクセスしてもつながらないので注意)

サーバとするためにはファイルを大量に扱わなくてはいけなくなるので、ftp接続を用意する。
まずはfptサーバの導入。
以下のページをベースにインストールして設定を変更。
http://yamaryu0508.hatenablog.com/entry/2014/12/02/102648

この状態でftpで接続しても、アップロードではじかれてしまったので、フォルダの所有者権限を変更。(元はrootになっていた)
sudo chown pi /var/www/html/
これでffftpなどのクライアントソフトからデータをアップロードできる。

脱線:rubyの実行環境

いろいろ(どどんとふ)を動かしてみるために、rubyを実行できるようにしてみる。
https://qiita.com/kon_yu/items/c57e98eb693646ee5766

合わせてapache側の設定も変更。
http://note.kurodigi.com/apache-cgi/

htmlアクセスもといapache2のユーザはwww-dataであり、標準ユーザのpiと異なる。
セキュリティに注意しつつ、ディレクトリのユーザ権限を変更していけば動作する。
最終更新:2019年01月06日 12:49