有馬総一郎のブログ

(彼氏の事情)

2012年06月19日 19:18:00 JST - 2 minute read - Subsonic

Subsonic構築への道 その4(Subsonic 導入 debパッケージ編)

いよいよ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ファイルを配置するやり方(いまの自分の環境)を書く。