ノートパソコンで省電力サーバ
3月 12

3月3日にリリースされていたSqueezeCenter 7.0を新しいサーバにインストールしました.SqueezeCenterはSlimServerの名称が変更になったものですが,バージョン7.0ではインタフェースが一新されました.

Vine Linux 4.2へのインストールですが,一筋縄ではいきません. 本当はインストール手順を書きたいところなのですが,インストール自体が試行錯誤だったので,インストールが成功したときの状態しか記述できません. オフィシャルサイトで配布されているRPMパッケージは動作しませんでした. 後で調べてみたら,スタートアップスクリプトにOSのチェックが入っているのが理由だったのですが,それを回避するだけで動作するかどうかは不明です. どうせ,Shift_JISのキューシートを使うためには,ソースコードを変更しなければならないので,RPMではなく,手動でインストールした方がやりやすいと思います.

SqueezeCenterのインストール先は /opt/squeezecenter-7.0 としました. ソースコード squeezecenter-7.0.tgz をダウンロードして,このディレクトリに解凍しました. 本当は,

$ cd /opt/squeezecenter-7.0
$ Bin/build-perl-modules.pl
とするだけで,必要なPerlモジュールをビルドできるはずなのですが,Vine Linux 4.2で配布されているPerlモジュールをできるだけ使いたかったので,以下のパッケージをインストールしました.本当は必要ないものが混ざっているかも知れませんが.

  • perl-ExtUtils-CBuilder-0.18-0vl1
  • perl-Module-Build-0.2806-0vl1
  • perl-HTML-Template-2.7-0vl2
  • perl-CGI-Session-4.14-0vl2
  • perl-FreezeThaw-0.43-5vl1
  • perl-DBD-Pg-1.49-0vl3
  • perl-GD-2.35-0vl1
  • perl-Digest-SHA1-2.11-1vl1
  • perl-DBD-MySQL-4.001-0vl1
  • perl-DBI-1.53-0vl1
  • expat-devel-1.95.8-0vl5
  • MySQL-devel-5.0.27-0vl3

次に,build-perl-modules.pl をテキストエディタで開き,packages配列変数の定義のところで,’Encode::Detect’, ‘JSON::XS’, ‘YAML::Syck’ 以外の部分を # でコメントアウトします. そして,Bin/build-perl-modules.pl を実行し,上記の3つのモジュールのみをビルドします. いったん,

$ ./slimserver.pl
を実行し,http://localhost:9000/ でSqueezeCenterにアクセスできるかどうか確認します. コンソールにエラーが表示されるようであれば,そのエラーメッセージから類推して必要なパッケージのインストールを行います(たぶんここが一番難しい).

/etc/init.dにsqueezecenterというスタートアップスクリプトを作成します.

#!/bin/sh
#
# squeezecenter Startup script for the SqueezeCenter Music Server.
#
# chkconfig: 2345 80 30
#
# description: SqueezeCenter powers the Squeezebox, Transporter and SLIMP3
#              network music players and is the best software to stream
#              your music to any software MP3 player. It supports MP3, AAC,
#              WMA, FLAC, Ogg Vorbis, WAV and more!

#
prog="SqueezeCenter"
SQUEEZECENTER_CONFIG=/opt/squeezecenter-7.0/sysconfig

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

test -r $SQUEEZECENTER_CONFIG || exit 0

. $SQUEEZECENTER_CONFIG

test -x $SQUEEZECENTER_BIN || exit 0

# See how we were called.
case "$1" in
  start)
        # Start daemons.
        echo -n $"Starting $prog: "
        daemon --user $SQUEEZECENTER_USER $SQUEEZECENTER_BIN $SQUEEZECENTER_ARGS
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && touch $SQUEEZECENTER_LOCKFILE
        ;;
  stop)
        # Stop daemons.
        echo -n $"Shutting down $prog: "
        killproc $SQUEEZECENTER_BIN
        [ $? = 0 ] && success $"$prog stopped" || failure $"$prog stopped"
        echo
        rm -f $SQUEEZECENTER_LOCKFILE
        ;;
  restart)
        $0 stop
        $0 start
        ;;
  status)
        status $SQUEEZECENTER_BIN
        ;;
  *)
        echo "Usage: $0 {start|stop|restart|status}"
        exit 1
esac

exit $RETVAL

このスクリプトは,/opt/squeezecenter-7.0/sysconfig という設定ファイルが必要なので,以下に習って記述します.

# Edit this to suit your setup
SQUEEZECENTER_USER="squeezecenter-user"
SQUEEZECENTER_HOME="/opt/squeezecenter-7.0"
SQUEEZECENTER_BIN="${SQUEEZECENTER_HOME}/slimserver.pl"
SQUEEZECENTER_LOCKFILE="${SQUEEZECENTER_HOME}/lockfile"
SQUEEZECENTER_CFG_DIR="${SQUEEZECENTER_HOME}/prefs"
SQUEEZECENTER_LOG_DIR="${SQUEEZECENTER_HOME}/log"
SQUEEZECENTER_CACHE_DIR="${SQUEEZECENTER_HOME}/cache"
SQUEEZECENTER_ARGS="--daemon --prefsdir=$SQUEEZECENTER_CFG_DIR --logdir=$SQUEEZECENTER_LOG_DIR --cachedir=$SQUEEZECENTER_CACHE_DIR"

"squeezecenter-user"の箇所には,SqueezeCenterを動作させたいユーザー名を入れます.

最後に,

$ /etc/init.d/squeezecenter start
とやれば,SqueezeCenterが起動するはずです.

3 Responses to “SqueezeCenter 7.0 をインストール”

  1. Gunman Says:

    Hi Nyaochi, thanks for developing ACDIR! However, it doesn’t work for me to specify extra options. For example, when I type in lamecs –extra-opt “-b 320 -h -m s” CDImage.ape ACDIR won’t start. Can you tell me why? lamecs CDImage.cue works but it creates low quality mp3s (128 kbit). Greetings from Germany, Gunman

  2. Nyaochi Says:

    I no longer maintain ACDIR because I replaced the tool with CueProc:
    http://nyaochi.sakura.ne.jp/software/cueproc

    Try cueenc.bat:
    cueenc -c lame –extra-opt “-b320 -h -ms” CDImage.cue

    Cheers,
    Nyaochi

  3. футболки Says:

    Вот это древний блог

Leave a Reply