레드헷 리눅스 재부팅시 서비스 기동 실패

byungjun4458의 이미지

안녕하세요

다름이 아니라 지금 아주 특이한 상황이 있어서 도움을 받고자 글을 작성해 봅니다.

RedHat 8.1 / RedHat 7.7 대상에서 발생하는 문제이며
재기동시 특정 서비스 시작시 실패가 발생합니다.

하지만 문제는 수동으로 서비스를 시작하면 정상적으로 기동됩니다.

제일 처음 확인한것은 아래와 같습니다.

1. runlevel 명령어로 현재 실행 중인 run level 확인
2. cd /etc/rc.d/rc[런레벨 번호].d 이동 (e.g. cd /etc/rc.d/rc3.d)
3. ls -al | grep 서비스 이름 검색
4. SXX서비스이름 형태의 파일 존재 여부 확인 (시작 문자열이 S인지 확인 및 XX 번호 확인)
5. 해당 파일 실행 여부 확인 절대 경로 및 상대경로 모두 실행 테스트 (e.g. ./S99서비스 이름 start , /etc/rc.d/rc3.d/S99서비스 이름 start)

허나 재부팅시 기동되는 스크립트를 수동으로 하면 모두 정상적으로 기동됩니다...
더불어 우선순위도 99로 해봤는데도 동일하네요

무조건 재부팅시에만 아래처럼 실패가 발생하는데 이제 어디를 봐야 할까요? ㅠㅠ

File attachments: 
첨부파일 크기
Image icon 화면 캡처 2021-07-16 085510.png1.2 MB
academic의 이미지

RedHat 이 아니라 RHEL(RedHat Enterprise Linux) 겠지요?

RHEL 7부터는 systemd 로 기동합니다. 적어주신 방법은 SysV init 방식이라 RHEL 7이나 8에서는 제대로 동작하지 않습니다.

systemd를 공부하셔서 서비스 유닛 작성하시면 될 겁니다.

----
academic은 제 고등학교 때 동아리 이름입니다.
academic, 아주 가끔은 저도 이랬으면 좋겠습니다.

김정균의 이미지

설마요.. init process 대신 systemd 가 대신 수행하기는 하지만, 그렇다고 사용할 수 없는 방식은 아닙니다.

RHEL 7부터는 systemd 로 기동합니다. 적어주신 방법은 SysV init 방식이라 RHEL 7이나 8에서는 제대로 동작하지 않습니다.

academic의 이미지

김정균님 말씀이 정답입니다. 구구절절이 설명하기보다는 systemd에 익숙해지십사 생각해서 그렇게 적었더니 김정균님이 역시나 지적해주시네요. ^^;

죄송합니다.

----
academic은 제 고등학교 때 동아리 이름입니다.
academic, 아주 가끔은 저도 이랬으면 좋겠습니다.

김정균의 이미지

RHEL 7 부터는 init 대신 systemd 로 운영이 되어 집니다. 그러므로 /etc/rc.d/init.d 의 script 들은 systemd 가 대신 실행을 하게 되는데요.

이 경우, 환경 변수 등이 미묘하게 달라질 수 있습니다. 시스템 환경에 의존이 되어 실행되는 프로그램이라면 일반 쉘에서 동작할 때와 다르게 동작할 수 있습니다. 이는 init 에 의해서 실행 될 때도 동일하게 적용이 될 수 있습니다.

academic의 이미지

systemd가 호환성을 위해 SysV init 스크립트를 실행할 때 의존성 정보는 Linux Standard Base(LSB) 헤더의 정보를 읽어온다고 본 기억이 있습니다.

LSB 헤더 같은 사소할 수 있는 것도 꼼꼼히 적어주는 등, SysV init 스크립트를 표준에 맞게 잘 작성해야 systemd가 처리할 때 문제가 안 생길 것 같습니다.

어차피 systemd로 계속 갈 거라면 이 참에 서비스 유닛으로 init 스크립트를 컨버팅하는 것도 고려해보시지요.

----
academic은 제 고등학교 때 동아리 이름입니다.
academic, 아주 가끔은 저도 이랬으면 좋겠습니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.