先日AmazonでRaspberry Pi2 を注文したところ、即日発送されてきました。Raspberry Pi1の時は半年くらい待った気がしますが、いつでも買えるっていうのはいいものですね。
仕事でRaspberry Pi2を使ったイントラサーバーをセットアップする用事があって今回購入しましたが、せっかくなので私用でも使おうと思っていました。
以前購入したRaspberry Pi1は紆余曲折を経て我が家のメディアサーバーとして活躍中ですが、写真画像の配信が若干遅いため、この際Raspberry Pi2にリプレースしようと思います。
前回セットアップ時のメモが消えてしまったので(T T)、今度はブログに記録を残します。。
出来上がりはこんな感じです。
カードリーダーにSDカードをセットして、黄色いボタンを押すと「SDカードを読み込みます」「コピーしたファイルを削除する場合は、もう一度ボタンを押して下さい」「XX個のファイルをコピーします」などといろいろアナウンスしてくれます。
プッシュボタンを18番ポートとGNDポートにつなげます。
今回はカードリーダーケースにボタンをくっつけました。
ライブラリ群のアップデート。
sudo apt-get update
sudo apt-get upgrade
sudo rpi-update
外付けHDDのセットアップ。
# ファイルタイプがxfsの時に必要
sudo apt-get install xfsprogs
# 接続されたHDDを確認 (/dev/sda1など)
sudo fdisk -l
# UUIDを調べる(UUID="xxx-xxx-xxx-xxx" TYPE="xxx")
sudo blkid /dev/sda1
#/etc/fstabにUUID="xxx-xxx-xxx-xxx" /mnt/hdd1 xxx defaults 0 2を追記
sudo vi /etc/fstab
SDカードを自動的にマウントするため、autofsをインストール
sudo apt-get install autofs
# 「#/misc /etc/auto.misc」のコメントを外す。
sudo vi /etc/auto.master
# 「sdcard -fstype=vfat,sync,rw,gid=100,umask=002 :/dev/sdc1」を追加
sudo vi /etc/auto.misc
# /media/sdcard -> /misc/sdcardのシンボリックリンクを作る。
cd /media
sudo ln -s /misc/sdcard
音声読み上げ機能を使うので、USBのサウンドカードを利用
# USBサウンドカードを優先。alsa-base.confのoptions snd-usb-audio index=-2を0に。
sudo vi /etc/modprobe.d/alsa-base.conf
# 設定変更後はリブート
sudo reboot
# これで音が鳴ればOK。
aplay /usr/share/sounds/alsa/Front_Center.wav
# 鳴らない場合、設定を変更してみる。(n はヘッドフォン端子が1、HDMIでは2、0で自動判別)
amixer cset numid=3 n
# ボリューム設定
alsamixer
# 設定を保存
sudo alsactl store
# どうしても音がならない場合、ALSAをリセットしてみる。
alsactl restore -P
それからMiniDLNA(ReadyMedia)のインストール。
sudo apt-get install gettext libavcodec-dev libavformat-dev libavutil-dev libflac-dev libvorbis-dev libogg-dev libid3tag0-dev libexif-dev libjpeg-dev libsqlite3-dev
mkdir ~/src
cd ~/src
wget http://downloads.sourceforge.net/project/minidlna/minidlna/1.1.4/minidlna-1.1.4.tar.gz?r=https%3A%2F%2Fsourceforge.net%2Fprojects%2Fminidlna%2F&ts=1441591573&use_mirror=jaist
tar -xzvf minidlna-1.1.4.tar.gz
cp -Rpd minidlna-1.1.4 minidlna-1.1.4.org
wget https://sourceforge.net/p/minidlna/patches/144/attachment/minidlna-image_utils.patch
patch -u -p1 -d minidlna-1.1.4 < minidlna-image_utils.patch
diff -ubBr minidlna-1.1.4.org/ minidlna-1.1.4
cd minidlna-1.1.4
./configure
make
sudo make install
sudo cp linux/minidlna.init.d.script /etc/init.d/minidlna
sudo chmod a+x /etc/init.d/minidlna
sudo update-rc.d minidlna defaults 99 01
# 設定ファイル修正(media_dir=/media/hdd1に変更)
sudo vi /etc/minidlna.conf
写真や動画のEXIF/XMP情報を取得するため、exiv2をインストール(aptの方だと動画に対応してなかったので手動インストール)
wget http://www.exiv2.org/exiv2-0.25.tar.gz
tar -xzvf exiv2-0.25.tar.gz
cd exiv2-0.25
./configure --enable-video
make
sudo make install
自動取り込みのPythonスクリプト(automove。smilkobuta 製)をダウンロード。
sudo apt-get install python3-pip python3-rpi.gpio
sudo pip-3.2 install enum34
wget http://hello.lumiere-couleur.com/app/automove/automove_1.0.zip
unzip automove_1.0.zip
chmod +x automove/automove_sdcard.sh
# Raspberry Pi起動時に実行されるよう、/etc/rc.localにコマンドを追加
sudo vi /etc/rc.local
↓の行を追加
/home/pi/automove/automove_sdcard.sh &
音声読み上げのAquesTalk Piをautomoveのフォルダ内にインストール。
ls ~/automove/
aquestalkpi/
automove.py
automove_sdcard.sh
最後に、動かしているところの動画です。
VIDEO
取り込みが終わると、自動的にMiniDLNAがデータベースを更新してくれて、アルバムーバ などのDLNAクライアントアプリから見えるようになります。
こうやって書いてみると、けっこう大変だー。
普通の方はEye-Fi かFlashAir を買うとよろしいかと思われます。
SD自動取り込み機能付きのNASもありますので、こういうのもいいですよ。