MediatombサーバーをUpstart実行レベル2で自動的に起動させようとして、私は苦労してきました。理解できません。 Upstartは私にとってまだ新しいもので、理解できないと思います。私も マニュアル全体を読む であり、曖昧であり、物事がどのように機能するかについての内部動作については一切言及していません。
私は明らかにこのコマンドでmediatombを実行できますので、実行するのは私の質問ではありません:
Sudo mediatomb --config /etc/mediatomb/config.xml
または
mediatomb --config ~/.mediatomb/config.xml
Upstartがスーパーユーザーとしてサービスを開始すると思われますが、通常のユーザーとしてUpstartコマンドを実行するとどうなりますか?特権はエスカレートしますか?理解できないようです。
これらのコマンドは機能しません:
service mediatomb start
/etc/init.d/mediatomb start
Sudo initctl start mediatomb (says it started but not really)
私には、これは何らかの許可の問題のように見えますが、Upstartについてこれを理解するのに十分な理解がありません。とてもイライラします。
me@linux:/etc/init$ start mediatomb
start: Rejected send message, 1 matched rules; type="method_call", sender=":1.58"
(uid=1000 pid=2665 comm="start mediatomb ") interface="com.ubuntu.Upstart0_6.Job"
member="Start" error name="(unset)" requested_reply="0"
destination="com.ubuntu.Upstart" (uid=0 pid=1 comm="/sbin/init")
Xubuntuを使用してシステムを再インストールしました。今回はMediatombが自動起動しますが、ポート47152はローカルホストでのみ表示されます。サービスは、Sudo service mediatomb start
を使用して再起動することもできます。私の外部メディアデバイスはmediatombを見ることができません。
私は学んだ:
- Mediatombは、mediatombユーザーが所有する/var/lib/mediatomb.dbにdbを配置します
- Config.xmlは、/ etc/mediatomb/config.xmlのルートが所有しています。
- Webファイルは/ usr/share/mediatombにあり、rootが所有しています。
- / etc/initディレクトリにはUpstartスクリプトが含まれており、変更は加えていません。
- /etc/init.dディレクトリには、古い未使用のinitスクリプトが含まれています。
- 共有しているメディアディスクはルートによって自動マウントされ、777のアクセス許可があります。
この時点で、これは私のXubuntuが64ビットシステムであり、何らかの理由でリスナーが私の外部IPではなくlocalhostにバインドしているという事実に関連していると思われます。
更新:最終的に、サーバーがサービスを提供するファイルがないと判断する原因となった私のconfig.xmlの設定ミスであることがわかりました。私のライブラリはすべて.aviファイルであり、.aviプロファイルがconfig.xmlで誤って構成されていたため、何もレンダリングできませんでした。