집 >운영 및 유지보수 >리눅스 운영 및 유지 관리 >Linux의 두 가지 서비스 범주는 무엇입니까?
Linux 서비스는 관리 방식에 따라 "독립형"과 "슈퍼 데몬", 즉 독립적인 관리 서비스와 통합 관리 서비스의 두 가지 범주로 구분됩니다. 독립 관리 서비스는 다른 메커니즘을 통한 관리 없이 독립적으로 시작할 수 있는 반면, 통합 관리 서비스는 통합 데몬을 통해 시작 및 관리를 담당합니다.
이 튜토리얼의 운영 환경: CentOS6 시스템, Dell G3 컴퓨터.
데몬이라고도 하는 Linux 시스템 서비스는 메모리에 상주하며 필요한 서비스(시스템 또는 네트워크 서비스)를 제공하기 위해 계속 실행되는 프로세스를 말합니다.
Linux 시스템 서비스는 관리 방식에 따라 주로 독립형 관리 서비스와 슈퍼 데몬, 즉 독립 관리 서비스와 통합 관리 서비스의 두 가지 범주로 분류됩니다.
독립형: 이러한 유형의 서비스 메커니즘은 비교적 간단하며 독립적으로 서비스를 시작할 수 있습니다. 그 특징은 다음과 같습니다:
1. 다른 메커니즘에 의한 관리 없이 독립적으로 시작될 수 있습니다.
2. 독립 실행형 서비스가 시작되고 메모리에 로드되면 메모리 공간과 시스템 리소스를 차지합니다. 서비스가 중지되었습니다.
3. 서비스가 상시 운영되기 때문에 클라이언트 요청에 대한 응답이 더 빠릅니다.일반적인 독립 실행형 서비스에는 httpd 및 ftp
super-daemon이 포함됩니다. 이 관리 메커니즘은 통합 데몬을 통해 다른 서비스를 시작하고 관리하는 일을 담당합니다. CentOS6.X에서 이 슈퍼 데몬은 xinetd 프로그램입니다. 기능은 다음과 같습니다.
1. 모든 서비스는 xinetd에 의해 제어되므로 네트워크 방화벽과 같은 xinetd에 대한 보안 제어 메커니즘이 있을 수 있습니다. 2. 클라이언트가 서비스를 요청할 때까지 필요한 서비스가 시작되지 않습니다. , xinetd는 해당 서비스를 깨울 것입니다. 연결이 끝나면 해당 서비스가 종료됩니다. 따라서 슈퍼 데몬 방식은 항상 시스템 자원을 점유하지 않습니다
3. 요청이 있을 때만 서비스가 시작되므로 서버의 응답 속도는 당연히 독립형 방식만큼 빠르지 않습니다일반적인 슈퍼 데몬 서비스에는 텔넷 등이 포함됩니다.
독립 실행형
시작 스크립트
독립 실행형 시작 스크립트는 /etc/init.d/ 디렉터리에 있습니다. 실제로 거의 모든 서비스 시작 스크립트가 여기에 있습니다. .[root@localhost init.d]# ls /etc/init.d/ abrt-ccpp htcacheclean ntpd smartd abrtd httpd ntpdate snmpd xinetd ......(省略)이 디렉토리에는 우리가 알고 있는 httpd와 같은 독립 실행형 서비스 시작 스크립트뿐만 아니라
xinetd도 있다는 사실을 알고 계셨나요? 이것은 무엇을 의미합니까? 이는 xinetd 서비스가 실제로 독립형 관리 방식을 사용하고 있음을 보여줍니다. 생각해 보세요. xinetd는 많은 슈퍼 데몬 서비스를 시작하고 중지하는 역할을 하기 때문에 메모리에 상주해야 합니까~
시작 방법
방법 1:모든 시작 스크립트는 /etc에 있으므로 /init.d/, 모든 것을 직접 호출하세요!
[root@localhost init.d]# /etc/init.d/crond Usage: /etc/init.d/crond {start|stop|status|restart|condrestart|try-restart|reload|force-reload}직접 전화해서 사용법을 알려드리면
[root@localhost init.d]# /etc/init.d/crond restart Stopping crond: [ OK ] Starting crond: [ OK ]참 간단해요!
방법 2: 서비스 스크립트를 사용할 수도 있습니다:
[root@localhost init.d]# service crond status crond (pid 3278) is running...이것은 더 간단하지만 서비스는 독립형 서비스를 관리하는 데만 사용할 수 있습니다.
还有,这个用法可以查看系统所有stand-alone服务的状态 [root@localhost init.d]# service --status-all abrt-ccpp hook is installed abrtd (pid 2331) is running... abrt-dump-oops is stopped acpid (pid 1807) is running... ......(省略)
참고:모든 Linux 배포판에서 서비스 스크립트를 사용할 수 없으므로 /etc/init.d/* [action]을 사용하는 것이 좋습니다. 원리를 이해하는데도 도움이 됩니다~~
super-daemon
startup script
super-daemon 시작 스크립트는 /etc/xinetd.d/에 있습니다.[root@localhost xinetd.d]# ls /etc/xinetd.d/ chargen-dgram daytime-stream echo-dgram tcpmux-server time-stream ......(省略)슈퍼 데몬 모드에서 시작된 서비스 확인:
방법 1: chkconfig를 사용하여 xinetd 기반 서비스에서 서비스의 시작 상태 확인:
[root@localhost xinetd.d]# chkconfig ...... xinetd based services: echo-dgram: off echo-stream: off rsync: off tcpmux-server: off telnet: on ......방법 2: 서비스의 시작 스크립트 직접 보기
[root@localhost xinetd.d]# grep -i 'disable' /etc/xinetd.d/* ...... /etc/xinetd.d/daytime-dgram: disable = yes /etc/xinetd.d/daytime-stream: disable = yes /etc/xinetd.d/discard-dgram: disable = yes /etc/xinetd.d/discard-stream: disable = yes /etc/xinetd.d/echo-dgram: disable = yes /etc/xinetd.d/telnet: disable = no ......위의 비활성화=아니요는 서비스가 활성화되었음을 의미합니다.
시작 방법
시작 스크립트에 비활성화=no가 있으면 서비스가 활성화되었음을 의미하므로 시작 방법은 다음과 같습니다. 1 먼저 시작 스크립트를 편집합니다. 그리고 활성화해야 하는 항목을 변경합니다. 서비스 비활성화 항목을 no로 변경합니다. 2. 그런 다음 xinetd를 다시 시작합니다: /etc/init.d/xintd restart [xinetd 자체는 독립 실행형 서비스이므로]
관련 권장 사항: "
위 내용은 Linux의 두 가지 서비스 범주는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!