回答:
Alt + F1-F12を使用するだけで、GUIを起動せずに12の異なるコンソールタブを使用できます。
コンソール(キーボードと画面が接続されている)を使用している場合は、Linux 仮想コンソールシステムを使用して、(ctrl-)alt-F1からF12などを使用して複数の端末を切り替えることができます。
設定された端末の数とgettyプロセス(ログインとパスワードを要求する)を持っている端末の数は、設定によって異なります。
screen
(私の意見では)よりも優れていtmux
ます。からインストールできsudo apt-get install tmux
ます。また、でマンページも確認してくださいman tmux
。
tmux
コンソールのいずれかを入力して開始できます(XTLの回答を参照)。
最も重要なコマンドを次に示します(C-b d
つまり、CtrlキーとBキーを同時に押してから、Dキーを押します)。
C-b d
セッションを切り離すtmux attach
実行中のセッションを再接続するシェル上C-b "
現在のフレームを水平方向に分割します(新しいシェルが開始されます)C-b %
現在のフレームを垂直に分割します(新しいシェルが開始されます)C-b arrow (up, down, left, right)
現在のフレームのウィンドウ間を移動するC-b c
新しいフレーム(新しいシェルが開始されます)C-b n
次のフレームC-b l
最後のフレームC-b b
C-b
実行中のアプリケーションに送信するこれは画面でも行うことができます。画面を使用すると、画面セッションから切り離し、ログアウト、ログインし、何も失うことなく画面セッションに再接続することもできます。プログラムは引き続き実行され、切断した端末にはすべての出力が表示され続けます。
スクリーンチュートリアルへのリンク:
http://www.rackaid.com/resources/linux-screen-tutorial-and-how-to/
http://magazine.redhat.com/2007/09/27/a-guide-to-gnu-screen/
便利な.screenrcのヒントが記載されたスレッドへのリンク:
https://bbs.archlinux.org/viewtopic.php?id=55618
Raspberry Pi固有のチュートリアル:
http://raspi.tv/2012/using-screen-with-raspberry-pi-to-avoid-leaving-ssh-sessions-open
実行するphpスクリプトがユーザーと対話しない場合や入力が必要な場合は、
&
スクリプトをバックグラウンドに送信するコマンドを使用できます
以下に例を示します。
pi@raspberrypi ~ $php code1 &
これにより、スクリプトが実行され続けるバックグラウンドに送信されます。
端末にsshする場合、同じユーザーで2回sshを実行し、2つの端末を使用できます。
sshセッションから複数の端末を開きたい場合、
画面を見るか、画面をbyobu
囲むラッパーであるインストールを改善する必要があります。
byobuは、ctrl-aのキーの組み合わせではなく、シンプルなファンクションキーを使用して新しい画面を簡単に開くことができるラッパーです。また、名前を付けることができるすべての開いている仮想端末を含むステータス行も表示します。
もう1つの優れた機能は、ssh接続が切断されている間、すべての画面を表示できるという事実です。sshを介して再度接続し、byobuを呼び出すだけで、すべてが以前のようになります。
それが役に立てば幸い。
完全を期すために、別のオプションはbyobuを使用することです。GNU screenの上にある便利なレイヤーです。それは素晴らしいデフォルトを提供し、私の感覚では使いやすいです。私はRapsberry Piで個人的に使用していますが、うまく機能します。それをインストールするには、単に入力します:
$ sudo apt-get install byobu
インストールしたら、次の方法で構成します。
$ byobu-config
ログイン時に自動的に起動し、ステータス通知アプレットを切り替えることができます(稼働時間、読み込み、日付...)
補足として、この種の仮想コンソールは、異なるマシン上の異なるユーザー間で同じコンソール入出力を共有するのにも役立ちます(テキストモードの画面共有と呼ぶことができます)。
byobu-config
)。
元の要件はPHPスクリプトをバックグラウンドで起動することであったため、コマンドを使用できますnohup
。例:
$ nohup php myscript.php &
開始されると、コマンドライン引数として指定されたコマンドはバックグラウンドでnohup
実行され、その入出力はそれを開始した端末からリンク解除され、SIGHUP
シグナル(nohup
名前)がバックグラウンドプロセスに送信されるのを防ぎます開始コンソールを終了します(通常、プログラムが終了するシグナル)。出力はファイルにリダイレクトされます(デフォルトnohup.out
)。
詳細については:man nohup
。
より良い、より完全な答えを得るには、プログラムを完全に「デーモン化」することをお勧めします。おそらく、PHPスクリプトを使用してそれを行う方法を説明するリソースをWebで見つけることができます。
disown
選択したバックグラウンドプロセスのハングアップを防ぐコマンドもあります。