RaspberryPi
CATEGORY
- 2016.01.04(月)
- SSL設定しようとして諦めた話
- 2015.12.28(月)
- NginxにphpMyAdminを通す
- 2015.12.26(土)
- Nginxの最新版を入れる
- 2015.10.12(月)
- RasPiで室温を計測する
- 2015.05.22(金)
- RasPiをDLNAサーバにする
SSL設定しようとして諦めた話
2016.01.04 Mon
あけましておめでとうございます。
このブログがいつ消えるかは僕のやる気次第ですよろしくお願いいたします。
この前取得したドメインでwebサーバを建てました。→ poyo.info
そして正月の暇な気分に任せてStartSSLでSSL証明書を発行し、https対応してやろうと血迷ったのが昨日の夜です。
結果的に言うと諦めました。なんで諦めたかは後で書きます。とりあえずやり方だけ書いていきます。
最初にググってあちこちのサイトを見てから始めたのですが、結論から言うとStartSSLの仕様が大きく変わっており、一部大きく異る操作を行うこととなりました。
これまでは緑を基調とした比較的ポップなサイトでしたが、2016/1/4現在は水色が基調のはやりのフラットデザインを採用しています(所々前からの使い回しと思われる画像もあります
手順としてはだいたい以下のとおりです
1. StartSSLにSign-up
2. domain validation
3. Free SSL Certificateを発行
4. 秘密鍵、公開鍵、その他をnginxに読み込ませる
1. Sign-up
StartSSLにアクセスし、トップページの"Start Now for Free SSL Centrificate"をクリックします。
するとSign-upかAuthenticateが選択できるのでSign-upに進みます。
以前はここで住所、年齢、氏名等を入力する画面が出ましたが、今は国を選択しメールアドレスを入力してValification codeを発行してもらうだけです。
前はこれでIdentity Validationが完了していたっぽい?んですが現在はもう少し厳しくなってました。ログイン後の画面で3つあるタブのうち一番右、Validations Wizardを選択するとdomain, email, Personal Identity, OtherのValidationが選択できます。このうちemailは最初のSign-upで完了しており、Personal Identityを選択すると以下の画面が出ます。

Class2以上のSSL証明書が必要な場合はこちらの認証が必要ですが、Class1には必要ありません。
2. domain validation
一番上のdomain validationを選択しcontinue。top level domain(www.poyo.infoならpoyo.info)を入力する画面が出ますので、ここに入力すると以下の画面が出ます。

使っているdomain宛のメールアドレスを受信できる状態にする必要があります。またはWhois代理公開をしている場合、そのコンタクト情報を正しく入力しておく必要があります。僕はどっちもしておきました。
送られてきたメールに書いてあるコードを入力し、validationを終えます。
このとき意外とメールが来るのが遅いことがあるようです。最初のメールが5分以上遅延して送られてきました。
3. Free SSL Certificate
Certificates Wizardタブを選択し、今回はwebサーバに用いるので”Web Server SSL/TLS Certificates”を選択してcontinueします。

www.poyo.infoなどと入力し、秘密鍵のパスワードを設定します。10~32文字の英数字混合のパスが求められます。
次のページで秘密鍵が表示されるのでコピーして保存します。
このとき、絶対Download Private Keyを押して手元に残しておくことをおすすめします。(後からわからなくなると確認するすべがない
次は公開鍵を手に入れるのですが、時間かかります。Tool Boxタブを選択し、Certificate Listを選択すると以下の様な表が出ます。
Private Keyを手に入れてすぐの時はStatusがPending issuedになっているのでこの状態になるまで待ちます。メールに寄る通知などは来なかったです。僕はここで一旦切り上げて寝ました。朝起きたら以下のとおり↓

右のRetrieveボタンを押すと公開鍵をダウンロードすることができます。
ご丁寧にzipで固めてあり、開くとApache、IIS、Nginx、Other用にそれぞれzipがあるので適宜使ってください。
ここまで来たらようやくStartSSLから離れられます。
適当に使ってるwebサーバに鍵を転送します。(公開鍵→startssl.crt、秘密鍵→startssl.key)
適当にフォルダを決めて
パーミッションの変更
Apacheには中間証明書を指定するところがあり、Nginxにはありません。Nginxではサーバ証明書にくっつけてしまえば勝手にやってくれるらしいです(それでいいのか…
現在、StartSSLで作成してきた秘密鍵にはパスフレーズが設定されています。これをそのままnginxに読み込ませると、nginxを起動する度にパスフレーズが求められて面倒です。外してしまいます。
no start lineとエラーが出ています。僕は察しました。「アッ、貼り付けるときに一行目がバグったな」
-----BEGIN RSA PRIVATE KEY-----を追加し、再度実行。
もういいや…毎回パスフレーズ入れよ…
「公開鍵と秘密鍵、合ってるか確かめときたいな」と思い
ググっても全然わからず。
ここで心折れて辞めました。メンタルが弱いんです。
気が向いたらまたやります。
Tweet
このブログがいつ消えるかは僕のやる気次第ですよろしくお願いいたします。
この前取得したドメインでwebサーバを建てました。→ poyo.info
そして正月の暇な気分に任せてStartSSLでSSL証明書を発行し、https対応してやろうと血迷ったのが昨日の夜です。
結果的に言うと諦めました。なんで諦めたかは後で書きます。とりあえずやり方だけ書いていきます。
最初にググってあちこちのサイトを見てから始めたのですが、結論から言うとStartSSLの仕様が大きく変わっており、一部大きく異る操作を行うこととなりました。
これまでは緑を基調とした比較的ポップなサイトでしたが、2016/1/4現在は水色が基調のはやりのフラットデザインを採用しています(所々前からの使い回しと思われる画像もあります
手順としてはだいたい以下のとおりです
1. StartSSLにSign-up
2. domain validation
3. Free SSL Certificateを発行
4. 秘密鍵、公開鍵、その他をnginxに読み込ませる
1. Sign-up
StartSSLにアクセスし、トップページの"Start Now for Free SSL Centrificate"をクリックします。
するとSign-upかAuthenticateが選択できるのでSign-upに進みます。
以前はここで住所、年齢、氏名等を入力する画面が出ましたが、今は国を選択しメールアドレスを入力してValification codeを発行してもらうだけです。
前はこれでIdentity Validationが完了していたっぽい?んですが現在はもう少し厳しくなってました。ログイン後の画面で3つあるタブのうち一番右、Validations Wizardを選択するとdomain, email, Personal Identity, OtherのValidationが選択できます。このうちemailは最初のSign-upで完了しており、Personal Identityを選択すると以下の画面が出ます。

Class2以上のSSL証明書が必要な場合はこちらの認証が必要ですが、Class1には必要ありません。
2. domain validation
一番上のdomain validationを選択しcontinue。top level domain(www.poyo.infoならpoyo.info)を入力する画面が出ますので、ここに入力すると以下の画面が出ます。

使っているdomain宛のメールアドレスを受信できる状態にする必要があります。またはWhois代理公開をしている場合、そのコンタクト情報を正しく入力しておく必要があります。僕はどっちもしておきました。
送られてきたメールに書いてあるコードを入力し、validationを終えます。
このとき意外とメールが来るのが遅いことがあるようです。最初のメールが5分以上遅延して送られてきました。
3. Free SSL Certificate
Certificates Wizardタブを選択し、今回はwebサーバに用いるので”Web Server SSL/TLS Certificates”を選択してcontinueします。

www.poyo.infoなどと入力し、秘密鍵のパスワードを設定します。10~32文字の英数字混合のパスが求められます。
次のページで秘密鍵が表示されるのでコピーして保存します。
このとき、絶対Download Private Keyを押して手元に残しておくことをおすすめします。(後からわからなくなると確認するすべがない
次は公開鍵を手に入れるのですが、時間かかります。Tool Boxタブを選択し、Certificate Listを選択すると以下の様な表が出ます。
Private Keyを手に入れてすぐの時はStatusがPending issuedになっているのでこの状態になるまで待ちます。メールに寄る通知などは来なかったです。僕はここで一旦切り上げて寝ました。朝起きたら以下のとおり↓

右のRetrieveボタンを押すと公開鍵をダウンロードすることができます。
ご丁寧にzipで固めてあり、開くとApache、IIS、Nginx、Other用にそれぞれzipがあるので適宜使ってください。
ここまで来たらようやくStartSSLから離れられます。
適当に使ってるwebサーバに鍵を転送します。(公開鍵→startssl.crt、秘密鍵→startssl.key)
適当にフォルダを決めて
$ wget https://www.startssl.com/certs/ca.pemこいつらを落としてきます。
$ wget https://www.startssl.com/certs/sub.class1.server.ca.pem
パーミッションの変更
$ chmod 400 startssl.crt startssl.key ca.pem sub.class1.server.ca.pem
Apacheには中間証明書を指定するところがあり、Nginxにはありません。Nginxではサーバ証明書にくっつけてしまえば勝手にやってくれるらしいです(それでいいのか…
$ cat sub.class1.server.ca.pem >> startssl.crt
現在、StartSSLで作成してきた秘密鍵にはパスフレーズが設定されています。これをそのままnginxに読み込ませると、nginxを起動する度にパスフレーズが求められて面倒です。外してしまいます。
$ openssl rsa -in startssl.key -out startssl_nopass.keyアレ…
unable to load Private Key
1996223696:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:703:
no start lineとエラーが出ています。僕は察しました。「アッ、貼り付けるときに一行目がバグったな」
-----BEGIN RSA PRIVATE KEY-----を追加し、再度実行。
$ openssl rsa -in startssl.key -out startssl_nopass.keyファ!?
unable to load Private Key
1995896016:error:0906D064:PEM routines:PEM_read_bio:bad base64 decode:pem_lib.c:818:
もういいや…毎回パスフレーズ入れよ…
「公開鍵と秘密鍵、合ってるか確かめときたいな」と思い
$ openssl x509 -in startssl.crt -modulus -nooutしたのですが
$ openssl x509 -in startssl.crt -noout -modulusアアアアッ…なんだこれは…
unable to load certificate
1995597008:error:0906D064:PEM routines:PEM_read_bio:bad base64 decode:pem_lib.c:818:
ググっても全然わからず。
ここで心折れて辞めました。メンタルが弱いんです。
気が向いたらまたやります。
スポンサーサイト
カテゴリー:RaspberryPi
Tweet
NginxにphpMyAdminを通す
2015.12.28 Mon
Nginxの最新版の導入が成功しましたら、データベースをより管理しやすくするためにphpMyAdminを入れます。
(インストールはこの前の記事でやった)
まずはphp5の環境設定から。
MySQLのセキュリティのための設定
ここからはNginxの設定に入ります。
公開ドメイン名: www.poyo.info
ドキュメントルート: /var/www
Wordpress: /var/www/wordpress
phpMyAdmin: /usr/share/phpmyadmin
としておきます。
各種設定は/etc/nginx/conf.d/*.confとして保存し、先ほどのnginx.confによってincludeされます。
まずはデフォルトで入っている設定ファイル類のバックアップを取ります。
次にWordpressとphpMyAdminの設定をかきます。
Tweet
(インストールはこの前の記事でやった)
まずはphp5の環境設定から。
$ sudo vim /etc/php5/fpm/php.ini
・683行目付近 文字コードの設定
default_charset = "UTF-8"
・865行目付近 タイムゾーンの設定
date.timezone = "Asia/Tokyo"
・1645行目付近 言語設定
mbstring.language = Japanese
$ sudo vim /etc/php5/fpm/pool.d/www.confここまできたらサービスの再起動を行います。
・22行目付近 PHP実行ユーザ名の設定
user = nginx
・23行目付近 PHP実行グループ名の設定
group = nginx
・33行目付近 FastCGIリクエストの設定
listen = 127.0.0.1:9000
sudo /etc/init.d/php5-fpm restart
MySQLのセキュリティのための設定
$ mysql_secure_installation
Enter current password for root (enter for none): ←パッケージ導入時に指定したパスワードを入力
Change the root password? [Y/n] n
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y
Thanks for using MySQL!
ここからはNginxの設定に入ります。
公開ドメイン名: www.poyo.info
ドキュメントルート: /var/www
Wordpress: /var/www/wordpress
phpMyAdmin: /usr/share/phpmyadmin
としておきます。
$ sudo vim /etc/nginx/nginx.confNginxは/etc/nginxにインストールされているはずです。
user nginx;
worker_processes 4; # Raspberry Pi2なので「1」→「4」に修正
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
gzip on; #コメントアウトを外す Gzip圧縮転送を有効
include /etc/nginx/conf.d/*.conf;
}
各種設定は/etc/nginx/conf.d/*.confとして保存し、先ほどのnginx.confによってincludeされます。
まずはデフォルトで入っている設定ファイル類のバックアップを取ります。
$ cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/wordpress.conf
$ mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.org
$ cp /usr/share/nginx/html/index.html /var/www/index.html
$ cp /usr/share/nginx/html/50x.html /var/www/50x.html
次にWordpressとphpMyAdminの設定をかきます。
$ sudo vim /etc/nginx/conf.d/wordpress.confこれでhttp://[ラズパイのIPアドレス]/phpmyadminにアクセスすればphpMyAdminが表示されるはずです。
server {
listen 80;
server_name poyo.info www.poyo.info;
# アップロードできるサイズの指定(Nginxのデフォルト値は1MByte)
client_max_body_size 16M;
# www が省略時されたときでも、www を付加したサーバ名に統一する
if ($http_host = "poyo.info") {
rewrite (.*) http://www.poyo.info$1;
}
location / {
root /var/www;
index index.php index.html index.htm;
}
location /blog {
alias /var/www/wordpress;
index index.php;
# WordPress用のファイル・ディレクトリ不在時のリダイレクト対応
try_files $uri $uri/ /wordpress/index.php?$args;
# WordPress用のカスタムパーマリンク対応
if (!-e $request_filename) {
rewrite ^.+?($/.*) $1 last;
rewrite ^.+?(/.*\.php)$ $1 last;
rewrite ^ /wordpress/index.php last;
}
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /var/www;
}
# FastCGI用の設定
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www$fastcgi_script_name;
include fastcgi_params;
}
location /phpmyadmin {
alias /usr/share/phpmyadmin;
index index.php
#アクセスの制限
allow 127.0.0.1;
allow 192.168.0.0/24;
deny all;
}
location ~ /phpmyadmin/.*\.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/$uri;
include fastcgi_params;
}
}
カテゴリー:RaspberryPi
Tweet
Nginxの最新版を入れる
2015.12.26 Sat
ようやくドメインを取得し、ラズパイをもう一台手に入れたので、こいつでWordpressを動かし、このブログをそっちにお引越ししたいと考えています。
ApacheにするかlighttpdにするかNginxにするか悩みましたが、どうも調べた限りではNginxがもっとも軽そうなのでこいつにします。
最新版は1.8.0です。ちょっと気持ち悪いので手動で入れなおそうと思います。
/tmp/nginxにソースパッケージを展開しコンパイルします。
nginx-debが何か悪さしてるっぽい?よくわからない。
言われるままにコマンドを打つ。依存関係の解消をするコマンドらしい。
さらに、ここでまだnginxが動いていることに気づく。
冬休み中に設定を終えてしまいたいですね…
Tweet
ApacheにするかlighttpdにするかNginxにするか悩みましたが、どうも調べた限りではNginxがもっとも軽そうなのでこいつにします。
sudo apt-get install nginx php5 mysql-server php5-fpm php5-mysql phpmyadmin chkconfigしかし、ここで入れたnginxのバージョンは1.2.1でした。
#勝手に入ってくるapache2を切る
sudo chkconfig apache2 off
最新版は1.8.0です。ちょっと気持ち悪いので手動で入れなおそうと思います。
#nginxのアンインストール
sudo apt-get remove nginx
#Nginxのリポジトリ追加
echo 'deb-src http://nginx.org/packages/debian/ wheezy nginx' | sudo tee -a /etc/apt/sources.list
#PGP公開キーを登録
wget http://nginx.org/keys/nginx_signing.key -O - | sudo apt-key add -
#GnuPGに登録
wget http://nginx.org/keys/nginx_signing.key -O - | gpg --no-default-keyring --keyring ~/.gnupg/trustedkeys.gpg --import -
/tmp/nginxにソースパッケージを展開しコンパイルします。
sudo apt-get update最後のインストールになってエラーが出ました。
sudo apt-get build-dep nginx
mkdir /tmp/nginx
cd /tmp/nginx
sudo apt-get source nginx
cd nginx-*
dpkg-buildpackage -uc -b
cd ..
#インストール
dpkg -i nginx_*~wheezy_armhf.deb
nginx-debが何か悪さしてるっぽい?よくわからない。
言われるままにコマンドを打つ。依存関係の解消をするコマンドらしい。
sudo apt-get -f installこれでもまだエラーが出る。今度はnginx-commonが妨害しているようだ。
さらに、ここでまだnginxが動いていることに気づく。
sudo service nginx stopもう一度インストールを試す
sudo apt-get remove nginx-common
$ dpkg -i nginx_*~wheezy_armhf.deb上手くいった。やったね。
(Reading database ... 82645 files and directories currently installed.)
Unpacking nginx (from nginx_1.8.0-1~wheezy_armhf.deb) ...
----------------------------------------------------------------------
Thanks for using nginx!
Please find the official documentation for nginx here:
* http://nginx.org/en/docs/
Commercial subscriptions for nginx are available on:
* http://nginx.com/products/
----------------------------------------------------------------------
Setting up nginx (1.8.0-1~wheezy) ...
Installing new version of config file /etc/nginx/scgi_params ...
Installing new version of config file /etc/nginx/fastcgi_params ...
Installing new version of config file /etc/nginx/koi-win ...
Installing new version of config file /etc/nginx/nginx.conf ...
Installing new version of config file /etc/nginx/koi-utf ...
Installing new version of config file /etc/nginx/win-utf ...
Installing new version of config file /etc/nginx/uwsgi_params ...
Installing new version of config file /etc/nginx/mime.types ...
Installing new version of config file /etc/init.d/nginx ...
Installing new version of config file /etc/logrotate.d/nginx ...
Installing new version of config file /etc/default/nginx ...
$nginx -v
nginx version: nginx/1.8.0
冬休み中に設定を終えてしまいたいですね…
カテゴリー:RaspberryPi
Tweet
RasPiで室温を計測する
2015.10.12 Mon
最近ずっとbotの方にかかりきりでRaspberryPiを放置していた(サーバとしてしか使っていなかった)のですが、先輩が温度センサーとブレッドボード、ジャンパワイヤをお土産でくださったので使ってみることに。
今回用いるのはaitendoのI2C温度センサー、TMP102です。

以下のサイトを参考にしました。
raspberry piで温度計測(TMP102)
まずI2Cデバイスを扱えるようにします。
/etc/moduesに以下を追加(後述するがもしかしたら必要ない?
以下のように該当行をコメントアウト
しかし僕のRaspberryPi2にはraspi-blacklist.confが存在しませんでした。ググったところこの部分は仕様変更があったようで、次のサイトを参考にしました。→Raspberry PiでI2Cを使う。raspi-blacklist.confが無い時
もしかしたらこれですべて自動で使えるようになって、/etc/modulesに書き込む必要は無かったかもしれませんが、これは検証していません。
なにはともあれここまで終わったら一旦RasPiをシャットダウンし、電源を抜きます。
RaspberryPiを買った時に初期でついてきたGPIOカードを参考にしてジャンパワイヤを刺していきます。

TMP102の回路図はaitendoのサイトのリンクから見ることができます。
[tmp102] >> [RasPi]
V+ >> 3.3V
SDA >> GPIO2(I2C_SDA1)
SCL >> GPIO3(I2C_SCL1)
GND >> GND
ADD0 >> GND

まぁこんな感じで接続します。
このときADD0をどこにつなぐかで0x48か0x49になるかが決まるらしいです。今回のようにGNDに接続すると0x48になります。
i2c-toolsをインストール。

もしi2cdetect 1でエラーが返ってくるようならi2cdetect 0で試してみてください。また、ADD0をGND以外につなぐとここで49が表示されます。
次にこれを温度に変えるスクリプトを組みます。僕にもよくわかんないですがこういうことらしいです。tmp102.shとか適当な名前で保存してください。
ついでなのでpythonでもこいつから温度を取得してみたいと思います。
また、pyenv環境の人はこのやり方では上手く行きません。次の記事で書きます。
Tweet
今回用いるのはaitendoのI2C温度センサー、TMP102です。

以下のサイトを参考にしました。
raspberry piで温度計測(TMP102)
まずI2Cデバイスを扱えるようにします。
/etc/moduesに以下を追加(後述するがもしかしたら必要ない?
$ sudo vim /etv/modules
i2c-dev
以下のように該当行をコメントアウト
$ sudo vim /etc/modprobe.d/raspi-blacklist.conf
#i2c-bcm2708
しかし僕のRaspberryPi2にはraspi-blacklist.confが存在しませんでした。ググったところこの部分は仕様変更があったようで、次のサイトを参考にしました。→Raspberry PiでI2Cを使う。raspi-blacklist.confが無い時
$ sudo raspi-configして設定するだけなのでむしろ簡単になったといえるかもしれません。
もしかしたらこれですべて自動で使えるようになって、/etc/modulesに書き込む必要は無かったかもしれませんが、これは検証していません。
なにはともあれここまで終わったら一旦RasPiをシャットダウンし、電源を抜きます。
$ sudo shutdown -h now
RaspberryPiを買った時に初期でついてきたGPIOカードを参考にしてジャンパワイヤを刺していきます。

TMP102の回路図はaitendoのサイトのリンクから見ることができます。
[tmp102] >> [RasPi]
V+ >> 3.3V
SDA >> GPIO2(I2C_SDA1)
SCL >> GPIO3(I2C_SCL1)
GND >> GND
ADD0 >> GND

まぁこんな感じで接続します。
このときADD0をどこにつなぐかで0x48か0x49になるかが決まるらしいです。今回のようにGNDに接続すると0x48になります。
i2c-toolsをインストール。
$ sudo apt-get install i2c-tools
$ sudo i2cdetect 1すると以下の様な結果を得ます。

もしi2cdetect 1でエラーが返ってくるようならi2cdetect 0で試してみてください。また、ADD0をGND以外につなぐとここで49が表示されます。
$ sudo i2cget -y 1 0x48 0x00 wとして何か値が返ってくるのを確認してください。これでダメだったら温度センサーが死んでるのでは…
次にこれを温度に変えるスクリプトを組みます。僕にもよくわかんないですがこういうことらしいです。tmp102.shとか適当な名前で保存してください。
#!/bin/bashこの計算スクリプトではbcという計算ソフトを利用しているらしいのでこれもインストールシておきます。
hexraw=$(sudo i2cget -y 0 0x48 0x00 w)
while [ "$hexraw" == "" ]; do
hexraw=$(sudo i2cget -y 0 0x48 0x00 w)
done
msb=$(echo ${hexraw:4:2})
lsb=$(echo ${hexraw:2:1})
dec=$(printf "%d\n" "0x$msb$lsb")
echo "scale=4; $dec*0.0625" | bc
$ sudo apt-get install bcここまでくれば後は実行するだけです。
$ ./tmp102.sh無事値が帰ってきたら成功です。また、たまにError: Read failedが出ます。原因が不明で困っています。
22.3125
ついでなのでpythonでもこいつから温度を取得してみたいと思います。
$ sudo apt-get install python-smbuspython-smbusをインストールし、以下の様なスクリプトを組みます。
import smbusあとは実行するだけです。
import time
bus = smbus.SMBus(1)
data = bus.read_i2c_block_data(0x48, 0)
msb = data[0]
lsb = data[1]
print (((msb << 8) | lsb) >> 4) * 0.0625
$ sudo python tmp102.pysudoつけてないとエラーが出ます。また、Read failedの時の例外処理をしてないのでその時もエラーが出ます()
22.375
また、pyenv環境の人はこのやり方では上手く行きません。次の記事で書きます。
カテゴリー:RaspberryPi
Tweet
RasPiをDLNAサーバにする
2015.05.22 Fri
SambaとNetatalkを設定し、ファイル共有を行える環境になったところで、RasPiからデータを配信できるようにminiDLNAを突っ込みます。
簡単でいいですね。
設定ファイルは/etc/minilna.confです。ここで参照するフォルダや、データベースの更新頻度を決めます。
とりあえずLAN内のその他のデバイスから"http://[ローカルホスト名]:8200"にアクセスしてみましょう。
おそらく指定したフォルダ内にメディアファイルがあったとしても、
あとはLAN内にあるデバイスにDLNAクライアントを入れてたのしむだけです。
最近Xperia Z Ultra SOL24を中古で購入しました。かっこいいですねこれ。画面が大きいので動画等のコンテンツをかなり楽しめます。地味についてるフルセグ/ワンセグが便利ですw


SOL24なのでUQ mobileのSIMを契約しようとしたのですが、まさかの未成年なので契約不可という壁に行き当たってしまいました…
しばらくはiPhoneのテザリングと学内Wi-Fiでの運用になりますね…悲しい…
Tweet
sudo apt-get install minidlna
簡単でいいですね。
設定ファイルは/etc/minilna.confです。ここで参照するフォルダや、データベースの更新頻度を決めます。
sudo vim /etc/minidlna.confポートはデフォルトで8200になっています。これもmiinidlna.confの中に記述箇所があるので変更可能です。その他の細かい項目についてはよく知らないので言及を控えます。
#変更箇所のみ記述しています
#V=Videos(動画ファイル),P=Pictures(画像ファイル),A=Audio(音楽ファイル)など、
#メディアの種類ごとでフォルダ分け出来ます
media_dir=V,/var/nas/videos
media_dir=P,/var/nas/pictures
media_dir=A,/var/nas/music
#DBの自動更新。デフォルトではコメントアウトされている。
inotify = yes
#DBの更新頻度。デフォルトではコメントアウトされている。
notify_interval = 895
とりあえずLAN内のその他のデバイスから"http://[ローカルホスト名]:8200"にアクセスしてみましょう。
おそらく指定したフォルダ内にメディアファイルがあったとしても、
MiniDLNA statusと表示されると思います。これはDBが更新されていないからです。DBの更新方法は
Audio files:0
Video files:0
Image files:0
minidlna -Rまたは
sudo service minidlna restartでできます。普段の更新は自動更新の間隔で十分でしょう。もっと大量のファイルを扱うなら、遅めの間隔が良いようです。
あとはLAN内にあるデバイスにDLNAクライアントを入れてたのしむだけです。
最近Xperia Z Ultra SOL24を中古で購入しました。かっこいいですねこれ。画面が大きいので動画等のコンテンツをかなり楽しめます。地味についてるフルセグ/ワンセグが便利ですw


SOL24なのでUQ mobileのSIMを契約しようとしたのですが、まさかの未成年なので契約不可という壁に行き当たってしまいました…
しばらくはiPhoneのテザリングと学内Wi-Fiでの運用になりますね…悲しい…
カテゴリー:RaspberryPi
Tweet