목차
11.1 서비스의 개념
11.2 독립 데몬 관리
11.3 부팅 시 관리 서비스가 자동으로 시작됩니다.
11.4 管理xinetd及相关瞬时守护进程
11.4.1 管理瞬时守护进程
11.4.2 瞬时守护进程的配置
11.5 CentOS 7上管理服务
转载请注明出处:" >转载请注明出处:

리눅스 서비스 관리

Jun 23, 2017 pm 01:50 PM
제공하다 관리하다


이 문서의 디렉토리:

11.1 서비스의 개념

11.2 독립 데몬 관리

1 1.3 관리 서비스는 부팅 시 자동으로 시작됩니다

11.4 xinetd 및 관련 임시 데몬 관리

11.5 CentOS 7에서 서비스 관리


CentOS 7과 CentOS 6의 서비스 관리 방식은 완전히 다릅니다. 이 기사에서는 먼저 CentOS 6의 관리 방법을 설명하고 마지막으로 CentOS 7의 서비스 관리 방법을 나열합니다.


11.1 서비스의 개념

서비스는 외부 세계에 서비스를 제공하는 프로세스로, 언제든지 외부 세계의 서비스 요청을 지속적으로 제공해야 하기 때문에 백그라운드에 배치됩니다. 서비스 프로세스는 메모리에 상주해야 하며 터미널과 관련되어서는 안 됩니다. 그렇지 않으면 터미널이 서비스 프로그램을 종료합니다. 또한, 외부요청을 받아 외부세계에 서비스를 제공하기 위해서는 본 서비스 전용의 "서비스창구"가 있어야 하며, 이 서비스창구가 포트번호이며, 해당 포트를 통해 서비스 제공자를 확인할 수 있습니다. 숫자.

서비스를 제공하는 쪽을 서버라고 하고, 서버에 서비스를 요청하는 쪽을 클라이언트라고 합니다. 먼저 서버가 서비스 프로세스를 시작하고 이때 해당 포트 번호가 열립니다. 그런 다음 클라이언트는 서버에 대한 요청을 시작하기 위해 서버 IP 주소와 포트 번호를 지정합니다. 패킷 검색 요청은 특정 포트 번호에 대한 것입니다. 커널은 해당 포트 번호를 듣고 있는 응용 프로그램을 알고 있으므로 응용 프로그램이 메시지를 받은 후 해당 응용 프로그램에 요청 메시지를 보냅니다. , 클라이언트와 연결을 설정하고 데이터 전송을 수행합니다.

모든 서비스가 항상 포트 번호를 제공하는 것은 아닙니다. 예를 들어, xinetd 서비스는 필요할 때만 해당 포트를 인수합니다. 예를 들어, rsync 수신 포트가 222인 경우 rsync가 요청되면 xinetd는 이를 수행합니다. 청취 프로세스 중 포트 번호는 222입니다. 요청하지 않으면 xinetd에는 포트 번호가 없습니다.

리눅스에서는 서비스가 독립 데몬과 슈퍼 데몬으로 구분됩니다. 독립 데몬 프로세스는 백그라운드에서 자신을 모니터링하며, 기본적으로 모든 서비스는 독립 데몬급 서비스이다. 슈퍼 데몬은 xinetd 서비스를 대신하여 일부 특수 서비스를 관리합니다. 이러한 서비스가 요청되면 xinetd는 서비스가 제공되면 서비스를 종료합니다. 서비스를 일시적이라고 합니다. 데몬 프로세스는 일시적으로만 존재합니다.

하지만 슈퍼 데몬 xinetd 자체는 자신이 관리하는 임시 데몬에 대한 외부 세계의 요청을 듣기 때문에 메모리에 상주하는 독립적인 데몬이라는 점을 이해해야 합니다. 그러나 작동하지 않는 경우 xinetd는 포트 번호를 점유하지 않습니다. 작동하는 경우 요청된 임시 데몬의 포트 번호를 점유하며 수신 상태에 있습니다.


11.2 독립 데몬 관리

CentOS 6에서 모든 서비스 스크립트는 /etc/rc.d/init.d/ 디렉터리에 있으며 /etc/init.d/는 해당 소프트 링크입니다. 이 디렉토리의 스크립트는 모두 LSB 스타일 스크립트이며 기본적으로 시작/중지/재시작/재로드/상태와 같은 매개변수를 허용합니다.

[root@xuexi tmp]# ls /etc/init.d
abrt-ccpp         cpuspeed   irqbalance    messagebus  psacct       saslauthd
abrtd             crond      kdump         netconsole  quota_nld    single
abrt-oops         functions  killall       netfs       rdisc        smartd
acpid             haldaemon  lvm2-lvmetad  network     restorecond  sshd
atd               halt       lvm2-monitor  ntpd        rngd         svnserve
auditd            ip6tables  mcelogd       ntpdate     rsyslog      sysstat
blk-availability  iptables   mdmonitor     postfix     sandbox      udev-post
로그인 후 복사

독립적인 데몬 유형 서비스를 관리하려면

/etc/init.d/service_name   restart|start|stop|status    # 方法一
service  service_name    restart|start|stop|status    # 方法二
로그인 후 복사

service 명령으로 서비스를 관리할 수 있게 하려면 해당 서비스 스크립트를 /etc/init.d 디렉터리에 넣기만 하면 됩니다.


11.3 부팅 시 관리 서비스가 자동으로 시작됩니다.

chkconfig 명령은 /etc/init.d/ 디렉터리에 존재하는 서비스를 관리할 수 있으며 스크립트의 내용은 특정 조건을 충족합니다.

부팅 시 서비스가 자동으로 시작되는지 여부를 관리하기 위해 chkconfig를 활성화하려면 /etc/init.d 디렉터리에 스크립트를 배치한 다음 스크립트 앞에 chkconfig 줄과 설명 줄을 추가하면 됩니다. 예:

#!/bin/bash

# chkconfig: - 85 15# description: The Apache HTTP Server is an efficient and extensible
로그인 후 복사

이 두 줄은 주석이 아닌 모든 줄 앞에 와야 하며, 이 두 줄은 "주석 처리"되어야 합니다. chkconfig 줄의 "-"는 실행 수준 123456에 적용 가능함을 나타내고, 85는 컴퓨터를 켰을 때 시작 순서가 85임을 나타내고, 15는 컴퓨터가 종료되고 서비스가 중지되면 정지 순서는 15입니다. 설명 줄에 일부 설명 정보만 제공할 수 있지만 "description:" 키워드는 반드시 제공해야 합니다.

그런 다음 chkconfig를 사용하여 서비스 자동 시작을 관리할 수 있습니다.

rreee

当然,除了chkconfig可以管理开机自启动,将启动命令放在/etc/rc.d/rc.local文件中也是可以的。


11.4 管理xinetd及相关瞬时守护进程

11.4.1 管理瞬时守护进程

该类服务不能直接使用service命令来启动。只能去/etc/xinetd.d/目录下的对应文件中进行设置(当然,也可以在/etc/xinetd.conf中配置),然后由xinetd进行管理。

首先安装xinetd程序。

[root@xuexi tmp]# yum -y install xinetd

[root@xuexi tmp]# chkconfig --list
......省略
xinetd          0:off   1:off   2:off   3:on    4:on    5:on    6:off

xinetd based services:
        chargen-dgram:  off
        chargen-stream: off
        daytime-dgram:  off
        daytime-stream: off
        discard-dgram:  off
        discard-stream: offecho-dgram:     offecho-stream:    off
        rsync:          off
        tcpmux-server:  offtime-dgram:     offtime-stream:    off
로그인 후 복사

首先得保证xinetd是已经工作在后台的。

service xinetd start
로그인 후 복사

然后管理瞬时守护进程,该类服务比较特别,其自启动状态和服务运行状态是同步的,也就是说chkconfig设置了其自启动则表示启动该服务,否则为停止该服务。另外,对其指定级别是无效的,它们的启动级别继承与xinetd的启动级别,并且xinetd会接管其触发的瞬时守护进程的端口号。

例如启动rsync这个瞬时守护进程。

chkconfig rsync on
로그인 후 복사

11.4.2 瞬时守护进程的配置

瞬时守护进程受两个配置文件控制,一个是xinetd的配置文件/etc/xinetd.conf提供默认配置,一个是/etc/xinetd.d/下的配置文件针对对应的服务提供配置。

例如配置rsync,以下是/etc/xinetd.d/rsync的默认配置。

[root@xuexi tmp]# vi /etc/xinetd.d/rsync
# default: off      
# description: The rsync server is a good addition to an ftp server, as it \
#       allows crc checksumming etc.
service rsync        # 定义rsync服务,名称要和/etc/xinetd.d/下的文件同名
{
        disable         = yes      # yes表示不启动,no表示启动,等价于chkconfig rsync {on|off},所以这里设置后将直接在chkconfig中生效
        flags           = IPv6     # 不用管
        socket_type     = stream   # 这代表的是tcp类型的套接字wait            = no       # 该服务是单线程还是多线程的,表现形式是超出的请求是否进行等待,no表示多线程
        user            = root     # 以什么身份运行rsync
        server          = /usr/bin/rsync # 服务程序
        server_args     = --daemon # 服务程序启动时传递的参数
        log_on_failure  += USERID  # 连接失败的日志记录,+表示在全局对应的条目上新增此处指定的USERID
}
로그인 후 복사

除此之外,还有几个选项:

【访问控制选项】以下两个控制列表中最好不要出现冲突的地址。
only_from:定义允许连接的访问控制列表,支持单IP,CIDR格式和长mask格式的网段,主机名hostname,域DOMAIN(.abc.com)
no_access:定义不允许访问的列表,语法格式同only_from

【监听地址】
bind       = ip_addr
interface  = ip_addr  # 等价于bind

【资源控制】
cps=args1 args2
instances=N
per_source=N
로그인 후 복사

这3个选项的意义如下图。


11.5 CentOS 7上管理服务

service name start    ==> systemctl start name.service

service name stop    ==> systemctl stop name.service

service name restart ==> systemctl restart name.service

service name status  ==> systemctl status name.service

 

查看服务是否激活(在运行中):systemctl is-active name.service

查看所有已经激活                 :systemctl list-units --type service

查看所有服务                        :systemctl list-units --type service --all

 

设置开机自启动:chkconfig name on ==> systemctl enable name.service

禁止开机自启动:chkconfig name off ==> systemctl disable name.service

查看服务是否开机自启动:chkconfig --list name ==> is-enabled name.service

查看所有服务的开机自启动状态:chkconfig --list ==> systemctl list-unit-files --type service

 

回到系列文章大纲:

转载请注明出处:

위 내용은 리눅스 서비스 관리의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 채팅 명령 및 사용 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Redis를 사용하여 분산 트랜잭션 관리를 구현하는 방법 Redis를 사용하여 분산 트랜잭션 관리를 구현하는 방법 Nov 07, 2023 pm 12:07 PM

Redis를 사용하여 분산 트랜잭션 관리를 구현하는 방법 소개: 인터넷의 급속한 발전으로 인해 분산 시스템의 사용이 점점 더 널리 보급되고 있습니다. 분산 시스템에서 트랜잭션 관리는 중요한 과제입니다. 기존의 트랜잭션 관리 방법은 분산 시스템에서 구현하기 어렵고 비효율적입니다. Redis의 특성을 활용하여 분산 트랜잭션 관리를 쉽게 구현하고 시스템의 성능과 안정성을 향상시킬 수 있습니다. 1. Redis 소개 Redis는 효율적인 읽기 및 쓰기 성능과 풍부한 데이터를 갖춘 메모리 기반 데이터 저장 시스템입니다.

명령을 사용하여 원격 데스크톱 연결 서비스를 여는 방법 명령을 사용하여 원격 데스크톱 연결 서비스를 여는 방법 Dec 31, 2023 am 10:38 AM

원격 데스크톱 연결은 많은 사용자의 일상 생활에 편리함을 가져왔습니다. 어떤 사람들은 원격으로 연결하기 위해 명령을 사용하고 싶어하는데, 그러면 어떻게 연결해야 할까요? 원격 데스크톱 연결 서비스는 명령을 사용하여 문제를 열면 이 문제를 해결하는 데 도움이 됩니다. 원격 데스크톱 연결 명령을 설정하는 방법: 방법 1. 명령을 실행하여 원격으로 연결합니다. 1. "Win+R"을 눌러 "실행"을 열고 mstsc2를 입력한 다음 "옵션 표시"를 클릭합니다. 3. IP 주소를 입력하고 클릭합니다. "연결하다". 4. 연결 중이라고 표시됩니다. 방법 2: 명령 프롬프트를 통해 원격으로 연결 1. "Win+R"을 눌러 "실행"을 열고 "명령 프롬프트"에 mstsc/v:192.168.1.250/console을 입력합니다.

Linux에서 서비스를 다시 시작하는 올바른 방법은 무엇입니까? Linux에서 서비스를 다시 시작하는 올바른 방법은 무엇입니까? Mar 15, 2024 am 09:09 AM

Linux에서 서비스를 다시 시작하는 올바른 방법은 무엇입니까? Linux 시스템을 사용하다 보면 서비스를 다시 시작해야 하는 상황이 자주 발생하지만, 서비스를 다시 시작할 때 서비스가 실제로 중지되지 않거나 시작되지 않는 등의 문제가 발생할 수도 있습니다. 따라서 서비스를 다시 시작하는 올바른 방법을 익히는 것이 매우 중요합니다. Linux에서는 일반적으로 systemctl 명령을 사용하여 시스템 서비스를 관리할 수 있습니다. systemctl 명령은 systemd 시스템 관리자의 일부입니다.

Java로 학생 성과 관리 기능을 구현하는 방법은 무엇입니까? Java로 학생 성과 관리 기능을 구현하는 방법은 무엇입니까? Nov 04, 2023 pm 12:00 PM

Java로 학생 성과 관리 기능을 구현하는 방법은 무엇입니까? 현대 교육 시스템에서 학생의 성과 관리는 매우 중요한 업무입니다. 학생 성과를 관리함으로써 학교는 학생의 학습 진행 상황을 더 잘 모니터링하고, 학생의 약점과 장점을 이해하며, 이 정보를 기반으로 보다 구체적인 교육 계획을 세울 수 있습니다. 이 기사에서는 Java 프로그래밍 언어를 사용하여 학생 성과 관리 기능을 구현하는 방법에 대해 설명합니다. 먼저, 학생 성적의 데이터 구조를 결정해야 합니다. 일반적으로 학생의 성적은 다음과 같이 나타낼 수 있습니다.

Windows 10에서 마우스 오른쪽 버튼 클릭 메뉴 관리를 열 수 없는 경우 해결 방법 Windows 10에서 마우스 오른쪽 버튼 클릭 메뉴 관리를 열 수 없는 경우 해결 방법 Jan 04, 2024 pm 07:07 PM

win10 시스템을 사용할 때 마우스를 사용하여 바탕화면을 마우스 오른쪽 버튼으로 클릭하거나 메뉴를 마우스 오른쪽 버튼으로 클릭하면 메뉴가 열리지 않고 컴퓨터를 정상적으로 사용할 수 없는 것을 발견했습니다. 이때 복원이 필요합니다. 문제를 해결하기 위한 시스템. Win10 마우스 오른쪽 버튼 클릭 메뉴 관리를 열 수 없습니다. 1. 먼저 제어판을 열고 클릭합니다. 2. 그런 다음 보안 및 유지 관리 아래를 클릭합니다. 3. 시스템을 복원하려면 오른쪽의 를 클릭하세요. 4. 그래도 사용할 수 없다면 마우스 자체에 문제가 있는지 확인해 보세요. 5. 마우스에 문제가 없다고 확신하면 +를 누르고 Enter를 누르세요. 6. 실행이 완료되면 컴퓨터를 다시 시작합니다.

Ubuntu PHP 서비스가 정상적으로 시작되지 않는 문제에 대한 솔루션 Ubuntu PHP 서비스가 정상적으로 시작되지 않는 문제에 대한 솔루션 Feb 28, 2024 am 10:48 AM

제목: Ubuntu에서 PHP 서비스가 정상적으로 시작되지 않는 문제를 해결하기 위한 방법 및 구체적인 코드 예제 Ubuntu를 사용하여 웹사이트나 애플리케이션을 구축할 때 PHP 서비스가 정상적으로 시작되지 않아 웹사이트가 작동하지 않는 문제가 자주 발생합니다. 정상적으로 접속할 수 없거나 응용프로그램이 정상적으로 실행되지 않습니다. 이 글에서는 Ubuntu에서 PHP 서비스가 정상적으로 시작되지 않는 문제를 해결하는 방법을 소개하고, 이러한 오류를 독자가 빠르게 해결할 수 있도록 구체적인 코드 예제를 제공합니다. 1. PHP 구성 파일 확인 먼저 PHP 구성 파일을 확인해야 합니다.

디스크를 파티션하는 방법 디스크를 파티션하는 방법 Feb 25, 2024 pm 03:33 PM

디스크 관리 분할 방법 컴퓨터 기술의 지속적인 발전으로 인해 디스크 관리는 컴퓨터 사용에 없어서는 안 될 부분이 되었습니다. 디스크 관리의 중요한 부분인 디스크 파티셔닝은 하드 디스크를 여러 부분으로 나눌 수 있어 데이터를 보다 유연하게 저장하고 관리할 수 있습니다. 그렇다면 디스크 관리를 분할하는 방법은 무엇입니까? 아래에서 자세한 소개를 드리겠습니다. 우선, 디스크를 분할하는 방법은 하나만 있는 것이 아니라는 점을 분명히 해야 합니다. 다양한 필요와 목적에 따라 적절한 디스크 분할 방법을 유연하게 선택할 수 있습니다. 자주

캐시 관리를 위해 Hyperf 프레임워크를 사용하는 방법 캐시 관리를 위해 Hyperf 프레임워크를 사용하는 방법 Oct 21, 2023 am 08:36 AM

캐시 관리를 위해 Hyperf 프레임워크를 사용하는 방법 캐시는 애플리케이션 성능을 향상시키는 중요한 수단 중 하나이며 최신 프레임워크는 보다 편리한 캐시 관리 도구를 제공합니다. 이 문서에서는 캐시 관리를 위해 Hyperf 프레임워크를 사용하는 방법을 소개하고 특정 코드 예제를 제공합니다. Hyperf 프레임워크는 Swoole을 기반으로 개발된 고성능 프레임워크로, 강력한 캐시 관리 기능을 포함하여 풍부한 내장 구성요소 및 도구 세트를 갖추고 있습니다. Hyperf 프레임워크는 Redis 및 Memcach와 같은 여러 캐시 드라이버를 지원합니다.

See all articles