起動時に2つのttyでアプリケーションを起動するには?

起動時に2つのttyでアプリケーションを起動するには?

現在、2つのttyが自動的にログインしていますが、デバイスがロードされるとすぐに、あるttyではノードスクリプトを起動し、他のttyではCプログラムを起動する必要があります。

デバイスはRaspbianを実行するRaspberry Piです。 1つのデバイスのように動作するように設定されており、両方のプログラムは、デバイスがシャットダウンする前に一度に数時間実行されます。

を介してプログラムを正常に起動しましたが、/etc/rc.localこれは実際にはttyで起動するのと同じではないようです。ロードを求めるメッセージが表示される前に閉じます。

答え1

あなたが望むものは何でも/ etc / inittabから始めることができると思います

例えば(/etc/inittabから抜粋)

# TERMINALS
c1:12345:respawn:/sbin/agetty 38400 tty1 linux

# Launch top redirecting its output to tty2, without redirecting input
c2:2345:respawn:/usr/bin/top >/dev/tty2 2>&1

# Launch ascii-invaders with redirected input 
# (you will be able to control the game with keyboard after switching to tty3)
c3:2345:respawn:/usr/games/bin/ascii-invaders </dev/tty3 >/dev/tty3 2>&1

答え2

実際に必要なものに応じて、実際にフォーム初期化スクリプトを起動する方が良いかもしれません。ただし、どういうわけか(たとえば、バックグラウンドで実行して)デーモン化する必要があるかもしれません。それ以外の場合、初期化システムはプログラムが完了するのを待ちます。一方、プログラムと対話する必要がある場合は、制御端末を使用して実行する方が簡単です。tmuxこれら2つの方法をinitスクリプトで実行して組み合わせることができます。screen

関連情報