OpenSuse 12.3에서 /etc/init.d/sculpture는 어디에 있습니까?

OpenSuse 12.3에서 /etc/init.d/sculpture는 어디에 있습니까?

OpenSuse 12.3을 새로 설치하는 동안 프로그램을 "보호"하고 싶습니다. 그리고 인터넷에서 찾은 모든 예 중에서 먼저 /etc/init.d/myscript.../etc/init.d/skeleton

하지만 난 /etc/init.d/skeleton... 이 파일을 저장할 다른 곳이 있나요? 아니면 뭔가를 설치해야 할까요?

시스템이 최신 상태인지 먼저 확인했습니다.

다른 기존 스크립트를 복사하여 수정하거나 새 스크립트를 만들 수 있다는 것을 알고 있지만 /etc/init.d, 제가 잘못하고 있는 것인지 아니면 OpenSuse에서 이 작업을 수행할 수 있는 또 다른 특별한 방법이 있는지도 알 수 있습니다.

답변1

파일이 어디로 사라지는지 잘 모르겠지만 /etc/init.d/skeletonOpenSUSE 12가 잘 알려진 initscript와 완벽하게 호환되기 때문에 이 변경 사항이 레거시 교체와 관련이 있기를 바랍니다. 그러나 저는 시작 서비스를 사용하는 모델을 선호합니다.SysV init daemonsystemdsystemdsystemd

제 생각에는 전통적인 init 스크립트는 까다로울 수 있으며 때로는 더 깊은 쉘 스크립팅 지식이 필요할 수도 있습니다. 반면에 서비스( )의 systemd"initscript" 또는 구성 파일은 파일과 유사한 간단한 구문을 갖기 때문에 유지 관리가 더 쉽습니다 . 일부 유닛 파일을 작성하고 해당 파일을 디렉터리에 끌어서 놓아 활성화 할 수 있습니다. 이 디렉토리는 기본 디렉토리보다 우선순위가 높습니다 . 데몬 유닛의 예 는 다음과 같습니다.unitman systemd.unit.INI/etc/systemd/system/usr/lib/systemd/systemsshd

[Unit]
Description=OpenSSH Daemon
After=syslog.target network.target

[Service]
EnvironmentFile=/etc/sysconfig/ssh
ExecStartPre=/usr/sbin/sshd-gen-keys-start
ExecStart=/usr/sbin/sshd -D $SSHD_OPTS
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=always

[Install]
WantedBy=multi-user.target

또는 사용 중인 "레거시" 시작 스크립트를 계속 사용할 수도 있습니다. 그러나 systemd다음과 같은 몇 가지 깔끔한 기능이 손실됩니다 .

  • 시작 시간이 빨라지고 실제 서비스가 병렬로 시작됩니다.
  • 자동 종속성 처리
  • 서비스를 모니터링하고 충돌이 발생한 서비스를 자동으로 다시 시작
  • 그리고 더

sshd.service마지막으로, initscript( )와 동일한 기본 이름을 가진 유닛( )이 있는 경우 /etc/init.d/sshd해당 initscript는 무시되고 systemd해당 유닛이 우선시된다는 점을 기억하세요.

관련 정보