いよいよSubsonic導入。
まずやり方として普通にdebパッケージをインストールするやり方。
http://www.subsonic.org/pages/installation.jsp
HPに書いてあるけどね・・・
Java導入(Sun JavaでなくてもOKです)。
$ sudo apt-get install openjdk-6-jre
debパッケージファイルをダウンロード
$ wget http://downloads.sourceforge.net/project/subsonic/subsonic/4.6/subsonic-4.6.deb
インストール
$ sudo dpkg -i subsonic-4.6.deb
ポートを開放
$ sudo ufw allow 80
あとはサービス登録されたsubsonicを起動させれば使えるようになる。
$ sudo service subsonic start
メモリー、ポート、実行ユーザーを変えたい場合は以下のファイルを修正
/etc/default/subsonic
SUBSONIC_ARGS="--port=80 --max-memory=255"
SUBSONIC_USER=root
事実、デフォルトだとrootユーザで実行されるので、その事に対する注意喚起がされている。
変更の仕方が書かれたサイトが以下にある。
http://unlockforus.com/installing-subsonic-music-streamer-in-ubuntu-server-10-04-lts-lucid-lynx-2
コピペしただけだが
rootユーザに変更
# sudo su
# service subsonic stop
Subsonic用のユーザ、グループを追加
# adduser --system --no-create-home subsonic
システムユーザ `subsonic' (UID 106) を追加しています...
新しいユーザ `subsonic' (UID 106) をグループ `nogroup'
に追加しています...
ホームディレクトリ `/home/subsonic' は作成しませんでした.
#adduser subsonic audio
ユーザ `subsonic' をグループ `audio' に追加しています...
Adding user subsonic to group audio
Subsonic実行ユーザ変更の設定
/etc/default/subsonic
SUBSONIC_USER=subsonic
Subsonicのディレクトリ、ファイルのアクセス権限を変更
# chown -R subsonic:nogroup /tmp/subsonic
# chown -R subsonic:nogroup /var/subsonic
# chown -R root:root /var/subsonic/transcode
# chown -R root:root /var/subsonic/jetty/*/webapp
# chown subsonic /etc/default/subsonic
# chmod 754 /etc/default/subsonic
サービス再起動
# service subsonic restart
一般ユーザに戻る
# su [一般ユーザ]
実行ユーザの確認
$ ps -Af | grep subsonic
subsonic 5715 1 99 23:09 pts/1 00:00:08 java -Xmx255m
-Dsubsonic.home=/var/subsonic -Dsubsonic.host=0.0.0.0
-Dsubsonic.port=4040 -Dsubsonic.httpsPort=0 -Dsubsonic.contextPath=/
-Dsubsonic.defaultMusicFolder=/var/music
-Dsubsonic.defaultPodcastFolder=/var/music/Podcast
-Dsubsonic.defaultPlaylistFolder=/var/playlists -Djava.awt.headless=true
-verbose:gc -jar subsonic-booter-jar-with-dependencies.jar
1000 5746 5635 0 23:09 pts/1 00:00:00 grep --color=auto subsonic
ただ、これSubsonicが読み込む音楽ファイルが置かれている所有ユーザ、所有グループ、アクセス権限をちゃんと環境に合わせて変更しないとうまく音楽ファイルが読みこまれなくなったりするので注意!
次回はソースをmavenでコンパイルしてwarファイルを配置するやり方(いまの自分の環境)を書く。