시작 시 /etc/init/ttys0.conf를 자동으로 실행하는 방법은 무엇입니까?

시작 시 /etc/init/ttys0.conf를 자동으로 실행하는 방법은 무엇입니까?

에 스크립트가 있습니다 /etc/init/ttyS0.conf. 나는 c야직렬 콘솔 액세스를 위한 KVM 게스트 구성그래서 네트워크 인터페이스가 손상되더라도 직렬 연결을 통해 계속 액세스할 수 있습니다.

ttyS0실행하여 시작할 수 sudo start ttyS0있으며 재부팅할 때까지 정상적으로 작동합니다. 시스템을 재부팅하면 ttyS0더 이상 실행되지 않습니다.

시작 시 이 스크립트를 자동으로 조정하려면 어떻게 해야 합니까?

감사해요


내 스크립트는 다음과 같습니다.

# ttyS0 - getty
#
# This service maintains a getty on ttyS0 from the point the system is
# started until it is shut down again.

start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]

respawn
exec /sbin/getty -L 115200 ttyS0 xterm

답변1

에서여기

respawn
console none

start on (local-filesystems)
stop on [!12345]

script

exec start ttyS0
end script

나는 의심 작동해야합니다. 그렇지 않으면 start tty0을 시작하려는 것을 시작하는 스크립트로 바꾸십시오.

답변2

이를 수행하는 방법에는 여러 가지가 있습니다.

스크립트가 프로세스를 호출하는 경우 /etc/init.d를 사용할 수 있습니다.

스크립트를 /etc/init.d에 넣은 다음 chmod a+x "script"를 사용하여 파일에 대한 권한을 변경해야 합니다. 그런 다음 update-rc.d "script" 기본값을 실행하면 모든 것이 시작됩니다. 이제 부팅 시 스크립트가 시작되어야 합니다.

다음은 몇 가지 다른 예입니다.

실시예 1

실시예 2

답변3

Ubuntu는 런레벨을 기반으로 하는 SYSV 시작(Debian과 동일)을 사용합니다.

현재 사용하고 있는 런레벨에 스크립트를 추가해야 합니다. Ubuntu의 경우초기화프로세스는 기본적으로 2입니다. 따라서 ttyS0.conf를 rC2.d 디렉토리에 추가하고 이를 시작하겠다고(중지하지 않음) 명시해야 합니다. 다음과 같이 스크립트에 소프트 링크를 추가하면 됩니다.

ln -s /etc/init/ttyS0.conf /etc/rc2.d/S99ttyS0.conf

S99 접두사는 "S" -> 스크립트 시작 및 스크립트 시작 순서 "99"를 나타냅니다(이 스크립트 이후에 다른 스크립트를 실행해야 하는 경우 이 숫자를 낮춥니다).

그런 다음 재부팅(런레벨 6)하거나 종료(런레벨 0)할 때 이를 중지해야 합니다.

ln -s /etc/init/ttyS0.conf /etc/rc0.d/S99ttyS0.conf
ln -s /etc/init/ttyS0.conf /etc/rc6.d/S99ttyS0.conf

접두사는 "S" -> 중지 스크립트(런레벨 0 및 6에만 해당)를 제외하고 유사합니다.

도움이 되었기를 바랍니다. 더 많은 정보여기

관련 정보