Ubuntu/Debian Linux에서 Solaris로 Init.d 스크립트를 어떻게 번역합니까?

StackOverflow https://stackoverflow.com/questions/286570

  •  08-07-2019
  •  | 
  •  

문제

데몬을 시작하기 위해 사용하는 몇 가지 init.d 스크립트가 있습니다. 내가 인터넷에서 찾은이 스크립트의 대부분은 모두 START-STOP-DAEMON을 사용합니다. 나의 이해는 "START-STOP-DAEMON"은 Linux 또는 BSD 배포판에 특화되어 있으며 Solaris에서는 사용할 수없는 명령입니다.

Linux에서 Solaris로 Init.d 스크립트를 번역하는 가장 좋은 방법은 무엇입니까? 제가 사용할 수있는 START-STOP-DAEMON과 동등한 명령이 있습니까?

나는 Solaris 사용자가 많지 않기 때문에 내 질문이 본질적으로 유효하지 않은지 아닌지조차 모른다는 것을 선불로 인정할 의향이 있습니다.

도움이 되었습니까?

해결책

스타트 스톱 데몬은 Linux이며 Solaris에서는 그다지 많이 사용되지 않습니다. INIT 스크립트를 재사용하려면 명령을 포트 할 수 있다고 생각합니다.

그렇지 않으면 사용중인 Solaris의 버전에 따라 다릅니다. Solaris 10 및 OpenSolaris로 시작하여 새로운 시작 스크립트 프레임 워크 "Solaris Service Management Facility"를 사용하여 명령으로 구성합니다. svcs, svccfg 그리고 svcadm.

보다 http://www.oracle.com/technetwork/server-storage/solaris/overview/servicemgmthowto-jsp-135655.html 자세한 내용은.

구형 Solaris 릴리스의 경우 대부분의 초기 스크립트는 START-Stop-Daemon과 같은 도우미 명령없이 순수한 쉘로 작성됩니다.

다른 팁

Solaris 10 이상에서 SMF를 사용하는 것이 권장되지만 이전 릴리스에서는 /etc/init.d에서 Init 스크립트를 만들고 RCX.D 디렉토리에서 링크를 작성합니다. 다음은 rsync 데몬을 시작하기위한 Init 스크립트의 베어 본 예입니다.

#!/sbin/sh

startcmd () {
    /usr/local/bin/rsync --daemon  # REPLACE WITH YOUR COMMANDS
}

stopcmd () {
    pkill -f "/usr/local/bin/rsync --daemon"  # REPLACE WITH YOUR COMMANDS
}

case "$1" in
'start')
        startcmd
        ;;
'stop')
        stopcmd
        ;;
'restart')
        stopcmd
        sleep 1
        startcmd
        ;;
*)
        echo "Usage: $0 { start | stop | restart }"
        exit 1
        ;;
esac

각 RCX.D 디렉토리에서 스크립트에 대한 링크를 만듭니다 ( "S"/"K"컨벤션에 따릅니다).

ln rsync /etc/rc3.d/S91rsync
for i in `ls -1d /etc/rc*.d | grep -v 3`; do ln rsync $i/K02rsync; done

각 rcx.d 디렉토리의 readme를보고 init.d의 Man 페이지를 확인하십시오. 여기에 약간의 남자 페이지가 있습니다.

rc? .D 디렉토리의 파일 이름은 [sk] nn 형식이며, 여기서 S는이 작업을 시작하고 K는이 작업을 죽이고 NN은 작업을 죽이거나 시작하는 상대 시퀀스 번호입니다.

상태에 입력 할 때 (초보자, 0,2,3 등) RC [S0-6] 스크립트는 k로 접두사를 한 다음 접두사로 접두사를 접두사 한 /etc/rc어요 스크립트를 실행합니다. S.와 함께 /etc /rc [S0-6] 디렉토리 중 하나에서 각 스크립트를 실행할 때 /sbin /rc [S0-6] 스크립트는 단일 논증을 전달합니다. k로 접두사가 접두사에 대한 스크립트에 대한 'stop'과 S로 접두사에 대한 인수에 대한 인수에 대한 인수를 전달합니다. S로 접두사에 대한 스크립트에 대한 인수는 동일한 시퀀스 번호를 여러 스크립트에 적용하는 데 해를 끼치 지 않습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top