WEB UI編はこちらから

間が空いてしましました。
前回のWEB UIからの設定で、だいたいのことは出来ますが、SSH(セキュアシェル)でしかできない設定も当然ありますので紹介します。SSHの基本的な使い方は分かるものとして省略します。
volumioの場合は、ホスト名: volumio.local でipアドレスを打ち込まなくても、ログインできます。login as: root、password: volumio です。
Raspberry PiでSSH接続でのチューニング
実際に使用している設定で、便利な物を紹介しておきます。ディストリビューションは、Volumioの改良版である、ほーりーさん改を使用しています。ノーマルVolumioでも適用できると思います。
1. exFATのHDDをマウントする
CuBox時代に、ext4でのマウント方法を紹介しましたので、今回はexFATを紹介します。
現状、Linux、Windows、MACの全てで使用できる形式としては、FAT32が標準になりますが、残念ながら音があまりよくありません。NTFSはもっと悪いです。
感覚的には、ext4がやはり良い気がしますが、Raspberry Piだとrsyncでの同期に時間が掛かり過ぎるため、とりあえずexFATで運用することにしました。exFATはアロケーションユニットサイズが変更できる点も含め、オーディオ用途としては、FAT32よりも優れています。
※CuBox時代のeSATA接続はNASよりも確実に音が良かったのですが、USB接続はNASとどちらが良いか再検証したいと思います。
#exFATでマウントさせる root@volumio:~# apt-get install exfat-fuse exfat-utils root@volumio:~# mount -t exfat /dev/sda1 /mnt/USB
2. アルバムアートワークの表示
デフォルトでは、MPoD(MPaD)や、cantata等のアートワーク表示に対応していません。
#アートワーク反映 root@volumio:~# ln -s /var/lib/mpd/music /var/www/Music
3. 時刻合わせ、オーバークロックなど
アップサンプリングを行う場合はオーバークロックした方が安定するかもしれません。当方はデフォルトのままです。時刻合わせは念のためやっておいた方がよいと思います。
これらの設定は、raspi-configから可能です。
#raspi-configを起動 root@volumio:~# raspi-config
こんな画面が立ち上がります。
時刻合わせは、
4 Internationalisation Options ⇒ I2 Change Timezone ⇒ Asia ⇒ Tokyo ⇒ OK で終了です。
オーバークロックは本体の温度上昇や音質、動作の安定性を天秤にかけてお好みで。
4. LED消灯、HDMI出力の停止
個人的にはLEDは不要なので消灯しています。また、HDMIも使わないので停止しています。
#LED消灯 root@volumio:~# echo 1 > /sys/class/leds/led0/brightness #点灯 root@volumio:~# echo 0 > /sys/class/leds/led0/brightness #消灯
#HDMIの停止 root@volumio:~# /opt/vc/bin/tvservice -p #有効 root@volumio:~# /opt/vc/bin/tvservice -o #無効
5. Last.fmとの連動
以前にクライアントソフト、cantataからの連動方法を紹介してますが、この場合、クライアントソフトが立ち上がっている必要が有ります。今回は、raspberry側からの連動方法です。
root@volumio:~# apt-get install mpdscribble root@volumio:~# nano /etc/mpdscribble.conf
中ほどにあるusernameとpasswordに、Last.fmのデータを入力
[last.fm]
url = http://post.audioscrobbler.com/
username =
password =
root@volumio:~# nano /etc/default/mpdscribble
MPD_SYSTEMWIDE=1に変更
root@volumio:~# /etc/init.d/mpdscribble restart
理屈は分かっていません。
参考: https://volumio.org/forum/last-scrobbling-t31.html
6. HDDのスピンオフ
ローカルで繋いでいるHDDを一定期間アクセスが無い場合にスピンオフする設定です。
以前、CuBox時代に失敗していますが、再度やってみたところ上手くできました。


#hdparm sdparmのインストール root@volumio:~# apt-get install hdparm sdparm
HDDの種類により、どちらが対応しているか分からないそうです。
当方はWDのHDDを使用していますが、sdparmで停止できました。
#hdparm sdparmの常駐化 root@volumio:~# nano /usr/local/bin/usbhdd_spindown.sh
以下のシェルスプリクトを保存する
#!/bin/sh if [ $# -lt 2 ]; then echo "not enough arguments supplied." echo "hdd_spindown.sh [UUID] [INTERVAL]" exit 0 fi disk=`findfs UUID="$1"` interval=$2 count=$interval up=1 if [ -z $disk ]; then #echo "findfs error" exit 1 fi disk=`echo "$disk" |sed -e "s@/dev/@@"` state=`grep " $disk " /proc/diskstats` while [ true ]; do sleep 10 count=$(($count-10)) newstate=`grep " $disk " /proc/diskstats` if [ "$state" = "$newstate" ]; then if [ $count -lt 0 ]; then count=$interval if [ $up = 1 ]; then #echo -e "spin-down" sync state=`grep " $disk " /proc/diskstats` #hdparmを利用するとき hdparm -y /dev/$disk > /dev/null 2>&1 #sdparmを利用するとき sdparm --command=stop -r /dev/$disk > /dev/null 2>&1 up=0 fi fi else #echo -e "drive is up" count=$interval state="$newstate" up=1 fi done
#パーミッションを変更する root@volumio:~# chmod 755 /usr/local/bin/usbhdd_spindown.sh
#スクリプトが起動時に実行されるようにする root@volumio:~# nano /etc/inittab
以下を追加
#auto hdd spindown hd:2345:once:/bin/sh /usr/local/bin/usbhdd_spindown.sh (USBHDDのUUID) (直近のアクセスからスピンダウンまでの時間(秒)) > /dev/null 2>&1
※UUIDは、root@volumio:~#blkid -o listで確認できます。
僕はとりあえず5分でスピンオフの設定にしました。
再起動して、所定の時間でHDDのスピンオフができます。
参考: 8.USBHDDの定期的なスピンダウン方法 – RaspberryPiで各種サーバー作り! – ある阪大生の物置小屋
7. その他定番コマンド
自分用メモです。
#再起動 root@volumio:~# reboot #シャットダウン root@volumio:~# halt
#USB-HDDのマウント/アンマウント root@volumio:~# mount -t exfat /dev/sda1 /mnt/USB root@volumio:~# umount /mnt/USB
#MPDデータベースのアップデート root@volumio:~# mpc update
#設定変更後のMPD更新 root@volumio:~# /etc/init.d/mpd restart
#MPDの停止、再開 root@volumio:~# /etc/init.d/mpd stop root@volumio:~# /etc/init.d/mpd start
#現在のカーネル確認 root@volumio:~# uname -rv
#MPD バージョン確認 root@volumio:~# mpc version
#パーティションのUUID確認コマンド root@volumio:~# blkid -o list
とりあえずこの辺で。気が向いたら追加、更新します。
続いてI2S DACの電源分離化です。


コメント