を実行すると、起動ps-e
時に以下が表示されます。
PID TTY CMD
...
1880 ? my_auto_script
1881 tty1 login
1882 tty2 getty
...
my_auto_script
から呼び出されます/etc/rc.local
。私は/etc/init.d/rc.local
次のように構成しました。
Required-Start: $all
Default-Start: 2 3 4 5
したがって、このタスクは最後に実行する必要があります。しかし、tty
どのプロセスの後でも実行されないようです。これが私に必要なものです。これをどのように実行しますか?
答え1
stty
はで作成されます/etc/inittab
。デフォルトでは、これを生成する行はrc
スクリプトを実行する行の後に続きます。たとえば、私のものには(カスタムではない)inittab
次のものがあります。
...
l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
...
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6
それではrc.local
実際にソースがあるのですね。今後あなたtty
のが作成されました。回線を変えるのは安全ではないと思います。私の考えでは、もっと知識が豊富な人が確認/反論するのを待たなければならないようです。
ユーザーがログインする前に最後の瞬間にカスタマイズしたい場合は、スクリプトを追加してみてはいかがでしょうか/etc/profile.d
。これは、VTだけでなく、端末エミュレータで実行されるシェルにも影響します。
答え2
スタートプログラム(含む/etc/rc.local
)これがスタートアッププログラムの中核です。起動時に、ユーザーがログインする前に実行されます。
システムの起動時にプログラムを実行させ、プログラムが完了するまでユーザーがログインできるようにするには、2つのオプションがあります。多くのバージョンのcron@reboot
では、起動時にジョブを実行するためにランタイムの代わりにランタイムを指定できます。これが@reboot
サポートされているかどうかを確認するには、システムのcrontab(5)マニュアルを確認してください。または(または他の起動スクリプト)でプログラムを実行しますが、/etc/rc.local
バックグラウンドで実行してください。
/path/to/my_auto_script &