tty 프로세스에 로그인한 후 실행되도록 /etc/init.d/rc.local을 편집합니다.

tty 프로세스에 로그인한 후 실행되도록 /etc/init.d/rc.local을 편집합니다.

을 실행하면 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

s tty는 에서 생성됩니다 /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. 이것이 시작 프로그램의 핵심입니다. 시작 시, 사용자가 로그인하기 전에 실행됩니다.

시스템이 시작될 때 프로그램이 실행되도록 하고 프로그램이 완료될 때까지 사용자가 로그인하도록 허용하려는 경우 두 가지 옵션이 있습니다. 많은 버전의 cron @reboot에서는 시작 시 작업을 실행하기 위해 런타임 대신 런타임을 지정할 수 있습니다 . 이것이 @reboot지원되는지 알아보려면 시스템의 crontab(5) 설명서를 확인하세요. 또는 (또는 다른 시작 스크립트)에서 프로그램을 실행 /etc/rc.local하되 백그라운드에서 실행하세요.

/path/to/my_auto_script &

관련 정보