JavaScript is required to for searching.
탐색 링크 건너뛰기
인쇄 보기 종료
Oracle Solaris 관리: 일반 작업     Oracle Solaris 11 Information Library (한국어)
search filter icon
search icon

문서 정보

본 문서 정보

1.  Oracle Solaris 명령에 대한 정보 찾기

2.  사용자 계정 및 그룹 관리(개요)

3.  사용자 계정 및 그룹 관리(작업)

4.  Oracle Solaris 시스템 부트 및 종료

5.  Oracle Configuration Manager 작업

6.  서비스 관리(개요)

SMF 소개

SMF 개념

SMF 서비스

SMF 종속성

서비스 식별자

서비스 상태

SMF 증명

SMF 프로필

서비스 구성 저장소

SMF 저장소 백업

SMF 스냅샷

SMF 관리 계층

SMF 서비스 오류 로깅

SMF 관리 및 프로그래밍 인터페이스

SMF 명령줄 관리 유틸리티

서비스 관리 구성 라이브러리 인터페이스

SMF 구성 요소

SMF의 마스터 다시 시작 프로그램 데몬

SMF의 위임된 다시 시작 프로그램

SMF 등록 정보 및 등록 정보 그룹

서비스 구성 저장소에서 정보 관리

SMF 정보 보기

SMF 정보 수정

SMF 정보 삭제

SMF 및 부트

SMF 호환성

실행 레벨

실행 레벨 또는 마일스톤 사용 시기

시스템의 실행 레벨 확인

/etc/inittab 파일

시스템을 실행 레벨 3으로 설정할 때 발생하는 동작

7.  서비스 관리(작업)

8.  Fault Manager 사용

9.  시스템 정보 관리(작업)

10.  시스템 프로세스 관리(작업)

11.  시스템 성능 모니터링(작업)

12.  소프트웨어 패키지 관리(작업)

13.  디스크 사용 관리(작업)

14.  시스템 작업 일정 잡기(작업)

15.  CUPS를 사용하여 프린터 설정 및 관리(작업)

16.  시스템 콘솔, 터미널 장치 및 전원 서비스 관리(작업)

17.  시스템 충돌 정보 관리(작업)

18.  코어 파일 관리(작업)

19.  시스템 및 소프트웨어 문제 해결(작업)

20.  기타 시스템 및 소프트웨어 문제 해결(작업)

색인

SMF 개념

이 단원에서는 SMF 프레임워크에서 사용되는 용어와 용어 정의에 대해 설명합니다. 이러한 용어는 본 설명서 전체에서 사용됩니다. SMF 개념을 파악하려면 이러한 용어를 숙지해야 합니다.

SMF 서비스

SMF 프레임워크의 기본적인 관리 단위는 서비스 인스턴스입니다. 각 SMF 서비스에는 구성된 버전이 여러 개 있을 수 있습니다. 동일한 버전의 여러 인스턴스가 단일 시스템에서 실행될 수도 있습니다. 인스턴스는 서비스의 특정 구성이며, 웹 서버는 서비스입니다. 포트 80에서 수신 대기하도록 구성된 특정 웹 서버 데몬이 인스턴스입니다. 웹 서버 서비스의 인스턴스마다 구성 요구 사항이 다를 수 있습니다. 서비스의 구성 요구 사항은 시스템 전체에 걸친 것이지만 각 인스턴스는 필요에 따라 특정 요구 사항을 대체할 수 있습니다. 단일 서비스의 여러 인스턴스는 서비스 객체의 하위 객체로 관리됩니다.

서비스는 표준 장기 실행 시스템 서비스(예: in.dhcpd 또는 nfsd)만 나타내는 것이 아니라, ISV 응용 프로그램을 포함하는 다양한 시스템 엔티티를 나타냅니다. 또한 서비스는 다음과 같은 최신 엔티티를 나타낼 수 있습니다.

일반적으로 서비스는 응용 프로그램 및 기타 서비스(로컬 및 원격)에 기능 목록을 제공하는 엔티티입니다. 서비스는 암시적으로 및 명시적으로 선언된 로컬 서비스 목록에 종속됩니다.

마일스톤은 특수한 유형의 서비스입니다. 마일스톤 서비스는 시스템 준비 레벨을 나타냅니다. 예를 들어, SMF에서 마일스톤이 실행 레벨을 나타냅니다. 또한 마일스톤을 사용하여 이름 서비스에 대한 svc:/milestone/name-services:default 또는 sysconfig 서비스에 대한 svc:/milestone/config:default와 같은 서비스 그룹의 준비 상태를 나타내는 데 사용될 수도 있습니다.

SMF 종속성

종속성은 서비스 간의 관계를 정의합니다. 이러한 관계를 사용하면 모든 서비스를 다시 시작하지 않고 결함으로 인해 직접적으로 영향을 받는 서비스만 다시 시작하여 제한적인 정확한 결함을 제공할 수 있습니다. 또한 종속성은 확장 및 재현 가능한 초기화 프로세스를 제공합니다. 마지막으로 정확한 종속성을 정의하면 종속된 모든 서비스를 병렬로 시작할 수 있으므로 시스템 시작 시에 현대적인 병렬 시스템을 활용할 수 있습니다.

서비스의 다시 시작 동작은 각 종속성에 대한 restart_on 속성을 통해 정의합니다. 오류나 다른 이유로 인해 서비스가 종속된 다른 서비스가 중지되거나 새로 고쳐질 경우 서비스를 중지하도록 구성할 수 있습니다. 이 프로세스에 의해 서비스가 중지된 후 서비스가 종속하는 다른 서비스가 시작되자마자 해당 서비스는 자동으로 다시 시작됩니다. 예를 들어, ssh 서비스는 network/ipfilter 서비스에 종속됩니다. restart_on 속성은 error로 설정되는데 이는 오류로 인해 network/ipfilter 서비스가 중지될 경우 ssh 서비스가 중지되고 자동으로 다시 시작된다는 것을 의미합니다. 다른 이벤트 유형이 발생할 경우 ssh 서비스는 중지되지 않습니다.

서비스 식별자

각 서비스 인스턴스는 FMRI(Fault Management Resource Identifier)로 이름이 지정됩니다. FMRI에는 서비스 이름과 인스턴스 이름이 포함되어 있습니다. 예를 들어, rlogin 서비스에 대한 FMRI는 svc:/network/login:rlogin입니다. 여기서 network/login은 서비스를 식별하며 rlogin은 서비스 인스턴스를 식별합니다.

FMRI에 대해 동등한 형식은 다음과 같습니다.

또한 대부분의 SMF 명령은 모호하지 않을 경우 축약 서비스 또는 인스턴스 이름을 사용할 수 있습니다. 예를 들면 더 긴 형식 대신에 system-log를 직접 사용할 수 있습니다. 적합한 FMRI 형식에 대한 지침은 SMF 명령 매뉴얼 페이지(예: svcadm(1M) 또는 svcs(1))를 참조하십시오.

각 서비스의 목적을 식별하는 데 도움이 되도록 서비스 이름에는 접두어가 포함됩니다. 이러한 접두어는 application, device, milestone, network 또는 system과 같은 이름을 포함합니다. site 접두어는 사이트별 사용자 정의에 사용하도록 예약되었으며 이 접두어를 사용하는 서비스는 Oracle Solaris 릴리스에서 제공되지 않습니다.

레거시 init.d 스크립트는 svc 대신 lrc로 시작하는 FMRI(예: lrc:/etc/rc2_d/S47pppd)로 표시되기도 합니다. 시스템 부트 도중 레거시 서비스의 초기 시작 시간은 svcs 명령을 사용하여 표시합니다. 그러나 SMF를 사용하여 이러한 서비스를 관리할 수 없습니다.

초기 시스템 배포 도중 /etc/inetd.conf에 나열된 서비스는 자동으로 SMF 서비스로 변환됩니다. 이러한 서비스에 대한 FMRI는 약간 다릅니다. 변환된 inetd 서비스에 대한 구문은 다음과 같습니다.

network/service-name/protocol

또한 RPC 프로토콜을 사용하는 변환된 서비스에 대한 구문은 다음과 같습니다.

network/rpc-service-name/rpc_protocol

여기서 service-name/etc/inetd.conf에 정의된 이름이며 protocol은 서비스에 대한 프로토콜입니다. 초기 시스템 배포 후에 inetconv 명령을 사용하여 inetd.conf 항목을 변환할 수 있습니다.

서비스 상태

svcs 명령은 서비스 인스턴스의 상태, 시작 시간 및 FMRI를 표시합니다. 각 서비스의 상태는 다음 중 하나입니다.

전환 중인 인스턴스의 상태에는 별표 "*"가 추가됩니다. 상태가 없거나 인식할 수 없는 경우 물음표 "?"가 표시됩니다.

SMF 증명

SMF 매니페스트는 서비스와 인스턴스 세트를 설명하는 XML 파일입니다. 해당 서비스 및 인스턴스의 등록 정보를 서비스 구성 저장소에 로드하기 위해 매니페스트를 가져옵니다. SMF·매니페스트 컨텐츠에 대한 자세한 내용은 service_bundle(4) 매뉴얼 페이지를 참조하십시오.

매니페스트의 기본 설정 위치는 /lib/svc/manifest입니다. 다른 서비스가 시작되기 전에 svc:/system/early-manifest-import:default 서비스는 부트 도중 여기에 저장된 매니페스트를 가져오고 업그레이드합니다. 가져오기 프로세스가 일찍 실행되면 저장소는 서비스가 시작되기 전에 최신 매니페스트의 정보를 포함하게 됩니다. 다른 때에 svcadm restart manifest-import 명령을 실행하여 이러한 매니페스트에서 정보를 가져올 수 있습니다. 호환성을 위해 /var/svc/manifest를 계속 사용할 수 있지만 여기에 있는 매니페스트는 svc:/system/manifest-import:default 서비스가 실행될 때까지 가져오거나 업그레이드되지 않습니다.

Oracle 또는 타사 소프트웨어 공급업체가 제공하는 매니페스트를 변경하지 마십시오. 업그레이드 시에 사용자 정의가 손실되므로 /lib/svc/manifest /var/svc/manifest에서 이러한 매니페스트를 직접 편집하지 마십시오. 대신에 사이트 프로파일을 만들어 서비스를 사용자 정의하거나 svccfg 또는 inetadm 명령을 사용하여 등록 정보를 직접 조작합니다. 또한 /lib/svc/manifest/site/var/svc/manifest/site 디렉토리는 사이트별 사용을 위해 예약되어 있습니다. Oracle Solaris 릴리스에서는 이러한 디렉토리에 매니페스트가 제공되지 않습니다.

Oracle Solaris 11 릴리스에서는 여러 매니페스트를 사용하여 단일 서비스를 설명할 수 있습니다. 이 기능은 예를 들어, 서비스의 기존 매니페스트를 수정하지 않고 서비스의 새 인스턴스를 정의하는 데 유용합니다. 여러 매니페스트가 동일한 서비스 또는 인스턴스에 대한 동일한 등록 정보를 정의할 경우 SMF는 사용할 값을 결정할 수 없습니다. 이 유형의 충돌이 감지된 경우 인스턴스는 유지 관리 상태가 됩니다.

SMF 프로필

SMF 프로파일은 시스템이 제공하는 서비스와 인스턴스를 사용자 정의할 수 있게 하는 XML 파일입니다. 프로파일을 사용하면 스크립트 세트 대신에 파일을 사용하여 사용자 정의하거나 배포 또는 설치 시에 구성을 사용자 정의할 수 있습니다.

시스템 제공 서비스를 위한 인스턴스를 추가하는 것을 비롯하여 모든 구성을 프로파일을 통해 사용자 정의할 수 있습니다.

로컬 사용자 정의는 /etc/svc/profile/site 디렉토리에 있는 .xml 접미어를 가진 파일에 저장해야 합니다. 시스템이 부트되거나 svcadm restart manifest-import 명령이 실행될 경우 이 디렉토리의 모든 사용자 정의가 적용됩니다.

매니페스트를 사용하면 /etc/svc/profile/site에 있는 파일 간의 모든 충돌하는 정의가 충돌로 간주되고 영향을 받은 인스턴스는 유지 관리 상태가 됩니다.

또한 설치 도중에 시스템 프로파일이 적용됩니다. /etc/svc/profile/generic.xml에서 시스템 프로파일을 변경해야 필요는 거의 없습니다. 자세한 내용은 smf_bootstrap(5) 매뉴얼 페이지를 참조하십시오.

프로필 사용에 대한 자세한 내용은 SMF 프로필을 적용하는 방법을 참조하십시오.

서비스 구성 저장소

서비스 구성 저장소는 영구적인 구성 정보와 서비스에 대한 SMF 런타임 데이터를 저장합니다. 저장소는 로컬 메모리와 로컬 파일 간에 분산됩니다. 서비스 구성 저장소는 SMF 인터페이스를 통해서만 조작하거나 질의할 수 있습니다. 저장소 조작 및 액세스에 대한 자세한 내용은 svccfg(1M)svcprop(1) 매뉴얼 페이지를 참조하십시오. 서비스 구성 저장소 데몬은 svc.configd(1M) 매뉴얼 페이지에서 설명되며, 서비스 구성 라이브러리는 libscf(3LIB) 매뉴얼 페이지에서 설명됩니다.

저장소의 등록 정보는 서비스 또는 인스턴스에서 정의할 수 있습니다. 서비스에 설정된 등록 정보는 해당 서비스의 모든 인스턴스가 공유합니다. 인스턴스에 설정된 등록 정보는 해당 인스턴스에만 사용되고 서비스의 등록 정보를 대체할 수 있습니다.

svccfg 명령은 등록 정보의 원시 보기를 제공하고 등록 정보가 서비스에 설정되었는지 아니면 인스턴스에서 설정되는지 여부를 정확하게 알려줍니다. svccfg 명령을 사용하여 서비스를 볼 경우 인스턴스 등록 정보를 볼 수 없습니다. 대신에 인스턴스를 볼 경우에는 서비스 등록 정보를 볼 수 없습니다. svcprop 명령은 인스턴스 등록 정보와 서비스 등록 정보가 모두 단일 등록 정보 이름 공간으로 결합되는 구성된 보기를 제공합니다. 서비스 인스턴스가 시작될 경우 해당 등록 정보의 구성된 보기가 사용됩니다.

모든 SMF 구성 변경은 Oracle Solaris 감사 프레임워크를 사용하여 기록할 수 있습니다. 자세한 내용은 Oracle Solaris 관리: 보안 서비스의 감사 서비스 구성(작업 맵)을 참조하십시오.

SMF 저장소 백업

SMF는 다음과 같이 저장소 백업을 수행합니다.

시스템에서는 각 유형의 네 가지 백업을 보관하고, 필요한 경우 가장 오래된 백업을 삭제합니다. 백업은 /etc/svc/repository-type- YYYYMMDD_HHMMSWS로 저장됩니다. 여기서 YYYYMMDD(연도, 월, 일) 및 HHMMSS(시, 분, 초)는 백업이 수행된 날짜 및 시간입니다. 시간 형식은 24시간제를 기반으로 합니다.

오류가 발생할 경우 이러한 백업에서 저장소를 복원할 수 있습니다. /lib/svc/bin/restore_repository 명령을 사용하면 됩니다. 자세한 내용은 손상된 저장소를 복구하는 방법을 참조하십시오.

SMF 스냅샷

서비스 구성 저장소의 데이터에는 편집 가능한 구성과 스냅샷이 포함되어 있습니다. 각 서비스 인스턴스에 대한 데이터가 스냅샷에 저장됩니다. 표준 스냅샷은 다음과 같습니다.

SMF 서비스는 항상 running 스냅샷으로 실행됩니다. 이 스냅샷은 존재하지 않을 경우 자동으로 만들어집니다.

svccfg 명령은 현재 등록 정보 값을 변경하는 데 사용됩니다. 이러한 값을 실행 중인 스냅샷으로 통합하기 위해 svcadm 명령이 실행될 경우 이러한 값을 서비스에서 볼 수 있습니다. 또한 svccfg 명령을 사용하여 다른 스냅샷의 인스턴스 구성을 보거나 이러한 구성으로 되돌아갈 수 있습니다.

SMF 관리 계층

Oracle Solaris 11 릴리스에서는 등록 정보, 등록 정보 그룹, 인스턴스 및 서비스의 소스를 기록하는 정보가 서비스 구성 저장소에 추가되었습니다. 이 정보를 사용하면 관리 사용자 정의에 해당하는 데이터 및 소프트웨어와 함께 제공된 데이터를 확인할 수 있습니다.

엔티티 소스를 식별하는 데 도움이 되도록 다음 계층이 정의되었습니다.

등록 정보 이름당 단일 등록 정보가 필요한 기존 클라이언트와의 호환성을 유지하고 대체를 위한 정책을 만들기 위해 계층화에는 간단한 대체 동작이 있습니다. admin 계층이 우선합니다. admin 계층의 값이 등록 정보에 있는 경우에는 서비스에 해당 값이 사용됩니다. 그렇지 않은 경우에는 site-profile 계층, system-profile 계층 및 manifest 계층이 차례대로 검사됩니다. 이 동작으로 인해 로컬 사용자 정의는 시스템이 설치될 때 제공된 값보다 우선할 수 있습니다.

이러한 계층은 시스템에서 자동으로 관리됩니다. 관리자가 저장소를 직접 변경한 사항은 admin 계층에만 표시됩니다. 다른 계층은 표준 위치에서 파일을 포함하거나 제거하여 변경합니다. 파일 컨텐츠로 인해 등록 정보가 저장소에 놓인 경우 해당 등록 정보에 대한 정보에는 컨텐츠가 제공된 파일의 이름이 포함됩니다.

관리자는 svccfg 또는 libscf 호출을 사용하여 하위 계층을 직접 수정할 수 없습니다. svccfg delete, svccfg delpg 또는 svccfg delprop 명령이 사용될 경우 엔티티는 완전히 삭제되는 대신에 마스킹됩니다. 일반적으로 사용자는 삭제된 엔티티를 볼 수 없지만 원할 경우 svccfg listcust 명령을 사용하여 마스킹된 엔티티를 명시적으로 탐색하고 svccfg delcust 명령을 사용하여 마스킹되지 않은 엔티티를 탐색할 수 있습니다.

svccfg listprop 명령에는 이러한 계층의 탐색을 사용으로 설정하는 옵션이 있습니다. 예를 들어, svccfg listprop -l all은 모든 계층과 각 계층에 있는 값을 인쇄합니다. 또한 svccfg listcust 명령을 사용하여 사용자 정의만 나열할 수 있습니다.

SMF 서비스 오류 로깅

서비스 및 해당 방법에서 발생하는 오류를 비롯한 서비스별 정보뿐만 아니라 사용으로 설정 작업, 시작 시간 등에 대한 정보가 /var/svc/log 에 있는 각 인스턴스에 대한 개별 파일에 기록됩니다. 서비스 로그 파일의 이름을 확인하려면 svcs -x service 명령을 실행합니다.

기본적으로 서비스가 유지 관리 상태로 전환되는 경우와 같은 관리 개입이 필요한 경우에만 SMF는 로그 메시지를 syslog 프로그램 및 콘솔에 기록합니다. 다른 옵션은 사용 가능하지만 거의 사용되지 않습니다. 다른 가능한 구성에 대한 자세한 내용은 svc.startd(1M) 매뉴얼 페이지를 참조하십시오.

오류 로깅 외에도 FMA 이벤트가 발생하거나 서비스가 서비스 상태로 전환하거나 서비스 상태에서 벗어날 경우를 알려주도록 SMF 서비스를 구성할 수 있습니다. 이러한 알림은 SNMP(Simple Network Management Protocol) 또는 SMTP(Simple Mail Transfer Protocol)를 사용할 수 있습니다. SMF 알림 설정에 대한 자세한 내용은 SMF 전환 이벤트의 전자 메일 알림을 설정하는 방법을 참조하십시오.