ログオフした後もプログラムを実行
ナビゲーションに移動
検索に移動
systemd パッケージはデフォルトでログアウト時にユーザープロセスを終了しないようにビルドされています。Systemd/ユーザー#ログアウト時にユーザープロセスを終了を参照してください。
ログオフ後もプロセスを実行し続ける方法は複数存在します:
- GNU coreutils の nohup(1) を使用する。
- Bash/Zsh の組み込みコマンド
disown
を使用する。 - ターミナルマルチプレクサを使用する (再アタッチすることができます)。
X アプリケーション
xmove はもはやメンテナンスされていないため、別の方法を使うと良いでしょう。
第二の X サーバー
以下の内容でスクリプトを作成して chmod で実行可能属性を付与してください (chmod a+x scriptname.sh
):
#!/bin/sh if [ $# -eq 0 ] ; then # check to see if arguments are given (color depth) a=24 # default color depth else a=$1 # use given argument fi if [ $a -ne 8 -a $a -ne 16 -a $a -ne 24 ] ; then echo "Invalid color depth. Use 8, 16, or 24." exit 1 fi for display in 0 1 2 3 4 5 ; do if [ ! -f "/tmp/.X$display-lock" ] ; then exec startx -- :$display -depth $a -quiet exit 0 fi done echo "No displays available." exit 1
上記のスクリプトを実行すると新しい X サーバーが起動します。アプリケーションを起動して xlock -mode blank
でサーバーをロックすることができます (xlock(1) を使うには xlockmore パッケージが必要です)。
一番目の X サーバーでアプリケーションは起動しないでください。
AGP モードなど一部の機能はひとつの X サーバーでしか機能しないため、二番目の X サーバーだけを使用し、一番目の X サーバーはコンピュータの他のユーザーも使用できるようにしてください。
xpra
Xpra を使うことで X プログラムの実行を切断しても続行し、後で再接続することができます。リモートマシンで X プログラムを起動して、ssh でマシンに接続し、切断してから再接続するということが可能になります。
X2Go
X2Go はセッションのサスペンドをサポートしており、他のクライアントから再接続することができます。リモート環境だけでなく、ローカルマシンでも使用できます。