JavaScript is required to for searching.
탐색 링크 건너뛰기
인쇄 보기 종료
Oracle Solaris 11.1에서 서비스 및 결함 관리     Oracle Solaris 11.1 Information Library (한국어)
search filter icon
search icon

문서 정보

머리말

1.  서비스 관리(개요)

2.  서비스 관리(작업)

SMF 서비스 모니터링

서비스 모니터링(작업 맵)

서비스 상태를 나열하는 방법

서비스의 사용자 정의를 나열하는 방법

서비스 인스턴스에 종속되는 서비스를 표시하는 방법

서비스가 종속되는 서비스를 표시하는 방법

SMF 변환 이벤트의 알림을 설정하는 방법

SMF 서비스 관리

SMF 서비스 관리(작업 맵)

SMF에서 RBAC 권한 프로파일 사용

SMF 서비스를 만드는 방법

서비스 인스턴스를 사용 안함으로 설정하는 방법

서비스 인스턴스를 사용으로 설정하는 방법

서비스를 다시 시작하는 방법

유지 관리 상태인 서비스를 복원하는 방법

SMF 프로파일을 만드는 방법

SMF 프로파일을 수동으로 만드는 방법

SMF 프로파일을 적용하는 방법

SMF 서비스 구성

SMF 서비스 구성(작업 맵)

SMF 서비스 등록 정보를 수정하는 방법

한 서비스의 여러 등록 정보를 수정하는 방법

파일에 의해 구성된 서비스를 수정하는 방법

서비스에 대한 환경 변수를 변경하는 방법

inetd 제어 서비스에 대한 등록 정보를 변경하는 방법

서비스의 사용자 정의를 삭제하는 방법

inetd 제어 서비스에 대한 명령줄 인수를 수정하는 방법

inetd.conf 항목을 변환하는 방법

실행 제어 스크립트 사용

제어 스크립트 사용(작업 맵)

실행 제어 스크립트를 사용하여 레거시 서비스를 중지하거나 시작하는 방법

실행 제어 스크립트를 추가하는 방법

실행 제어 스크립트를 사용 안함으로 설정하는 방법

실행 제어 스크립트를 SMF 서비스로 변환하는 방법

서비스 관리 기능 문제 해결

SMF 문제 해결(작업 맵)

시작되지 않는 서비스를 디버깅하는 방법

손상된 저장소를 복구하는 방법

서비스 시작 없이 부트하는 방법

상세 정보 표시 모드로 부트하는 방법

부트 중 system/filesystem/local:default 서비스가 실패할 경우 sulogin 프롬프트를 강제로 표시하는 방법

3.  Fault Manager 사용

색인

SMF 서비스 구성

다음 작업에서는 SMF 서비스를 구성하는 방법을 보여줍니다. 특히 서비스 또는 서비스 인스턴스에 대한 서비스 등록 정보 및 다른 구성 정보를 수정하는 방법을 보여줍니다.

SMF 서비스 구성(작업 맵)

다음 작업 맵에서는 SMF 서비스를 구성하는 데 필요한 절차에 대해 설명합니다.

작업
설명
수행 방법
서비스를 수정합니다.
지정된 서비스 인스턴스의 서비스 등록 정보를 수정합니다.
지정된 서비스 인스턴스의 등록 정보를 여러 개 수정합니다.
서비스 인스턴스의 구성 파일을 수정합니다.
서비스 인스턴스의 환경 변수를 수정합니다.
서비스에 대한 admin 계층의 사용자 정의를 삭제합니다.
inetd 서비스를 수정합니다.
inetd로 제어되는 서비스의 구성 등록 정보를 변경합니다.
inetd로 제어되는 서비스의 시작 옵션을 변경합니다.
inetd.conf 항목을 변환합니다.
inetd 서비스를 SMF를 사용하여 모니터링할 수 있는 레거시 실행 서비스로 변환합니다.

SMF 서비스 등록 정보를 수정하는 방법

이 절차에서는 서비스를 시작할 수 있는 사용자를 식별하는 등록 정보를 수정하는 방법을 보여줍니다.

  1. 관리자로 전환하거나 Service Management 권한 프로파일을 포함하는 역할로 전환합니다.

    자세한 내용은 Oracle Solaris 11.1 관리: 보안 서비스의 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  2. start/user 등록 정보에 지정된 값을 변경합니다.

    먼저 해당 서비스를 식별하기 위해 FMRI를 제공합니다. 다음으로 서비스를 시작하는 UID를 지정합니다.

    # svccfg -s FMRI
    svc:/service: setprop start/user = astring: newlogin
  3. 서비스를 새로 고칩니다.
    # svcadm refresh FMRI

한 서비스의 여러 등록 정보를 수정하는 방법

이 절차에서는 setprop 하위 명령에 필요한 것보다 적은 정보를 입력하여 여러 서비스 등록 정보를 수정하는 방법을 보여 줍니다. 이 예에서는 여러 개의 DNS 서비스 등록 정보가 변경됩니다.

  1. 관리자로 전환하거나 Service Management 권한 프로파일을 포함하는 역할로 전환합니다.

    자세한 내용은 Oracle Solaris 11.1 관리: 보안 서비스의 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  2. 등록 정보 값을 변경합니다.

    editprop 하위 명령이 지정된 서비스의 등록 정보 및 등록 정보 그룹을 임시 파일에 수집하면 VISUAL 또는 EDITOR 환경 변수에 이름이 지정된 프로그램이 호출되어 이를 편집합니다. 자세한 내용은 svccfg(1M) 매뉴얼 페이지를 참조하십시오

    # svccfg -s network/dns/client editprop
    
    ##
    ## The value used to construct the "nameserver" directive in resolv.conf(4).
    ##
    setprop config/nameserver = net_address: (192.168.1.10 192.168.1.11)
    
    ##
    ## The value used to construct the "search" directive in resolv.conf(4).
    ##
    # setprop config/search = astring: "example.com sales.example.com" 

    이 시점에서는 파일을 저장하지 않습니다.

  3. 변경 내용을 모든 인스턴스에 적용합니다.

    파일을 저장하고 편집기를 종료할 때 변경 내용을 적용하도록 파일 맨 아래에 있는 refresh 라인의 주석을 해제합니다.

    ## Uncomment to apply these changes to all instances of this service.
    refresh

파일에 의해 구성된 서비스를 수정하는 방법

다음 절차에서는 inetd 서비스로 관리되지 않는 서비스의 구성을 변경하는 방법을 보여줍니다.

  1. 관리자로 전환하거나 Service Management 권한 프로파일을 포함하는 역할로 전환합니다.

    자세한 내용은 Oracle Solaris 11.1 관리: 보안 서비스의 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  2. 필요에 따라 구성 파일에 대한 변경 작업을 수행합니다.

    많은 서비스에는 시작 또는 기타 구성 정보를 정의하는 데 사용되는 하나 이상의 구성 파일이 있습니다. 이러한 파일은 서비스가 실행 중인 동안 변경할 수 있습니다. 파일의 내용은 서비스가 시작될 때만 확인됩니다.

  3. 서비스를 다시 시작합니다.
    # svcadm restart FMRI

예 2-15 새 NTP 서버 추가

새 NTP 서버를 추가하여 NTP 클라이언트를 지원하려면 서버에 대한 새 항목을 /etc/inet/ntp.conf 파일에 추가합니다. 그런 다음 NTP 서비스를 다시 시작합니다. 이 예는 ntp.conf 파일의 내용 및 서비스 다시 시작 방법을 보여줍니다.

# cat /etc/inet/ntp.conf
   .
   .
server ntpserver1.example.com
server ntpserver2.example.com
# svcadm restart svc:/network/ntp:default

서비스에 대한 환경 변수를 변경하는 방법

이 절차는 디버깅을 위해 cron 환경 변수를 수정하는 방법을 보여줍니다.

  1. 관리자로 전환하거나 Service Management 권한 프로파일을 포함하는 역할로 전환합니다.

    자세한 내용은 Oracle Solaris 11.1 관리: 보안 서비스의 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  2. 서비스가 실행 중인지 확인합니다.
    # svcs system/cron
    STATE          STIME    FMRI
    online         Dec_04   svc:/system/cron:default
  3. 환경 변수를 설정합니다.

    이 예에서는 UMEM_DEBUGLD_PRELOAD 환경 변수가 설정되었습니다. setenv 하위 명령에 대한 정보는 svccfg(1M) 매뉴얼 페이지를 참조하십시오.

    # svccfg -s system/cron:default setenv UMEM_DEBUG default
    # svccfg -s system/cron:default setenv LD_PRELOAD libumem.so
  4. 서비스를 새로 고치고 다시 시작합니다.
    # svcadm refresh system/cron
    # svcadm restart system/cron
  5. 변경 작업이 수행되었는지 확인합니다.
    # pargs -e `pgrep -f /usr/sbin/cron`
    100657: /usr/sbin/cron
    envp[0]: LOGNAME=root
    envp[1]: LD_PRELOAD=libumem.so
    envp[2]: PATH=/usr/sbin:/usr/bin
    envp[3]: SMF_FMRI=svc:/system/cron:default
    envp[4]: SMF_METHOD=/lib/svc/method/svc-cron
    envp[5]: SMF_RESTARTER=svc:/system/svc/restarter:default
    envp[6]: TZ=GB
    envp[7]: UMEM_DEBUG=default

inetd 제어 서비스에 대한 등록 정보를 변경하는 방법

  1. 관리자로 전환하거나 Service Management 권한 프로파일을 포함하는 역할로 전환합니다.

    자세한 내용은 Oracle Solaris 11.1 관리: 보안 서비스의 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  2. 특정 서비스에 대한 등록 정보를 나열합니다.

    이 명령은 FMRI로 식별된 서비스에 대한 모든 등록 정보를 표시합니다.

    # inetadm -l FMRI
  3. 서비스에 대한 등록 정보를 변경합니다.

    inetd 제어 서비스에 대한 각 등록 정보는 등록 정보 이름 및 지정된 값으로 정의됩니다. 지정된 값 없이 등록 정보 이름을 제공하면 등록 정보가 기본값으로 재설정됩니다. 서비스 등록 정보에 대한 특정 정보는 해당 서비스와 연관된 매뉴얼 페이지에서 다룹니다.

    # inetadm -m FMRI property-name=value
  4. 등록 정보가 변경되었는지 확인합니다.

    다시 등록 정보를 나열하여 올바르게 변경되었는지 확인합니다.

    # inetadm -l FMRI
  5. 변경 사항이 적용되었는지 확인합니다.

    변경으로 원하는 효과를 얻었는지 등록 정보 변경 사항을 확인합니다.

예 2-16 telnet에 대한 tcp_trace 등록 정보 변경

다음 예는 telnet에 대한 tcp_trace 등록 정보를 true로 설정하는 방법을 보여줍니다. telnet 명령을 실행한 후 syslog 출력을 확인하면 변경 사항이 적용되었는지 알 수 있습니다.

# inetadm -l svc:/network/telnet:default
SCOPE    NAME=VALUE
         name="telnet"
 .
 .
default  inherit_env=TRUE
default  tcp_trace=FALSE
default  tcp_wrappers=FALSE
# inetadm -m svc:/network/telnet:default tcp_trace=TRUE
# inetadm -l svc:/network/telnet:default
SCOPE    NAME=VALUE
         name="telnet"
 .
 .
default  inherit_env=TRUE
         tcp_trace=TRUE
default  tcp_wrappers=FALSE
# telnet localhost
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
login: root
Password: 
.
.
.
Last login: Mon Jun 21 05:55:45 on console
Sun Microsystems Inc.   SunOS 5.10      s10_57  May 2004
# ^D
Connection to localhost closed by foreign host.
# tail -1 /var/adm/messages
Jun 21 06:04:57 yellow-19 inetd[100308]: [ID 317013 daemon.notice] telnet[100625]
    from 127.0.0.1 32802

서비스의 사용자 정의를 삭제하는 방법

등록 정보, 등록 정보 그룹 및 서비스 인스턴스에서 사용자 정의를 제거할 수 있습니다.

예 2-17 등록 정보에서 사용자 정의 제거

이 예에서는 서비스에서 사용자 정의를 삭제할 때 발생하는 효과를 보여 줍니다. 먼저 부트 프로세스 중 /var/tmp가 정리되도록 rmtmpfiles 서비스의 clean_vartmp 등록 정보를 설정하기 위한 사용자 정의를 적용합니다. 권한을 가진 사용자 자격으로 다음 명령을 입력합니다.

# svccfg -s svc:/system/rmtmpfiles setprop options/clean_vartmp = true
# svcadm refresh svc:/system/rmtmpfiles

그런 다음 등록 정보가 변경되었는지 확인합니다.

$ svcprop -p options/clean_vartmp svc:/system/rmtmpfiles
true

사용자 정의를 확인하려면 다음 명령을 입력합니다.

$ svccfg -s svc:/system/rmtmpfiles listcust
options/clean_vartmp    boolean     admin      true
$ svcprop -p options/clean_vartmp -l all svc:/system/rmtmpfiles
options/clean_vartmp boolean manifest false
options/clean_vartmp boolean admin true

사용자 정의를 제거하려면 권한을 가진 사용자로 다음 명령을 입력합니다.

# svccfg -s svc:/system/rmtmpfiles delcust options/clean_vartmp
 Deleting customizations for property: options/clean_vartmp

이제 사용자 정의를 확인하는 명령을 실행하면 다음과 같은 내용이 표시됩니다.

$ svccfg -s svc:/system/rmtmpfiles listcust
$ svcprop -p options/clean_vartmp -l all svc:/system/rmtmpfiles
options/clean_vartmp boolean manifest false

inetd 제어 서비스에 대한 명령줄 인수를 수정하는 방법

  1. 관리자로 전환하거나 Service Management 권한 프로파일을 포함하는 역할로 전환합니다.

    자세한 내용은 Oracle Solaris 11.1 관리: 보안 서비스의 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  2. 특정 서비스에 대한 exec 등록 정보를 나열합니다.

    이 명령은 FMRI로 식별된 서비스에 대한 모든 등록 정보를 표시합니다. grep 명령을 추가하면 출력이 서비스에 대한 exec 등록 정보로 제한됩니다.

    # inetadm -l FMRI|grep exec
  3. 서비스에 대한 exec 등록 정보를 변경합니다.

    exec 등록 정보와 함께 command-syntax 세트는 서비스가 시작될 때 실행되는 명령 문자열을 정의합니다.

    # inetadm -m FMRI exec="command-syntax"
  4. 등록 정보가 변경되었는지 확인합니다.

    다시 등록 정보를 나열하여 올바르게 변경되었는지 확인합니다.

    # inetadm -l FMRI

inetd.conf 항목을 변환하는 방법

다음 절차에서는 inetd.conf 항목을 SMF 서비스 매니페스트로 변환합니다. 이 절차는 inetd에 종속되는 타사 응용 프로그램이 시스템에 추가될 때마다 실행해야 합니다. 또한 /etc/inetd.conf의 항목에 대해 구성 변경 작업을 수행해야 하는 경우 이 절차를 실행하십시오.

  1. 관리자로 전환하거나 Service Management 권한 프로파일을 포함하는 역할로 전환합니다.

    자세한 내용은 Oracle Solaris 11.1 관리: 보안 서비스의 지정된 관리 권한을 사용하는 방법을 참조하십시오.

  2. inetd.conf 항목을 변환합니다.

    inetconv 명령은 선택된 파일의 각 항목을 서비스 매니페스트로 변환합니다.

    # inetconv -i filename

예 2-18 /etc/inet/inetd.conf 항목을 SMF 서비스 매니페스트로 변환

# inetconv -i /etc/inet/inetd.conf