/etc/init.dスクリプトがXで起動されたかのように起動するにはどうすればよいですか?

/etc/init.dスクリプトがXで起動されたかのように起動するにはどうすればよいですか?

/etc/init.dの起動スクリプトで起動すると正しく動作しないJavaアプリケーションの奇妙な点を追跡しようとしていますが、GUIターミナルウィンドウを開き、/etc/init.d/で起動すると実行されます。 myappが起動したら大丈夫です。 (奇妙なことは、アプリケーションの一部が起動方法のコード操作を使用していくつかのハッキングを実行することです。

正解はこの投稿私はGnome端末がウィンドウマネージャ内で実行されているという手がかりを与えました。 tty端末(ctrl-alt-f1またはsshを介して)を介してスクリプトを実行することが起動時に実行するのと同じように動作することを確認できました。

私の主な質問:コンピュータの起動時にアプリケーションが起動しますが、Xで起動したように動作するようにするにはどうすればよいですか?これまで、特定のパラメータを使用してJava VMを起動する必要があるため、スクリプトパスに従いました。

フォローアップの質問(厳密に理解するために):ウィンドウマネージャで実行されているアイテムを介してスクリプトが実行されたときにスクリプトが異なる動作をするために、後で何が起こっていますか? Googleはまだこれについて教えていません。

ベストアンサー1

/etc/init.dスクリプトは非対話型で非ログインであり、Xセッションにアクセスしようとしません。システム全体提供する。1 システムサービスは特定のサービスに関連付けられていません。ログインuser、2ですが、Xセッションは常にログインしているユーザーに属します。

アプリケーションが機能するためにGUIコンテキストが必要な場合は、システムサービスではありません。あなたはまだ説明していません。なぜそれを求めるか何ができるか~/.xinitrcただし、initの代わりにデスクトップ環境のブートシステムを使用する必要があるかもしれません。

1

2サービスはしばしば自分の特別なユーザーに関連付けられますが、サービスはそうではありません。 ログインしたがって(通常、そのようなユーザーできないログしました)。

おすすめ記事