> 백엔드 개발 > PHP 튜토리얼 > Linux 시스템에서 부팅 시 프로그램이 자동으로 시작되도록 하는 방법

Linux 시스템에서 부팅 시 프로그램이 자동으로 시작되도록 하는 방법

小云云
풀어 주다: 2023-03-21 17:54:02
원래의
3699명이 탐색했습니다.

Linux 시스템에서 부팅할 때 프로그램을 자동으로 시작하는 방법 핵심 팁: 일반적으로 부팅할 때 시스템 서비스가 자동으로 시작될 수 있습니다. 그렇다면 Windows 시스템에서 부팅할 때 프로그램이 자동으로 시작되도록 하려면 어떻게 해야 할까요? 시작" "-->"모든 프로그램"-->"시작"에 바로가기를 넣으면 되는데, 리눅스 시스템은 어떨까요? ...시스템 서비스는 일반적으로 컴퓨터를 켤 때 자동으로 시작됩니다. 그렇다면 Linux 시스템에서 컴퓨터를 켤 때 프로그램이 자동으로 시작되도록 하려면 어떻게 해야 할까요? " --> "모든 프로그램" -- > "시작"에 바로가기를 넣어주면 되는데, 리눅스 시스템은 어떨까요?

이 문제도 비교적 간단한 문제인데 해결 방법은 세 가지가 있습니다. 간략한 소개이므로 구체적인 내용은 그다지 상세하지 않습니다. 관련 매뉴얼은 man을 통해 읽어보실 수 있습니다.

1./etc/rc.local
이것은 가장 간단한 방법입니다. "/etc/rc.local"을 편집하고 "와 유사하게 쉘 명령을 입력하여 프로그램을 시작합니다(명령의 전체 경로를 입력해야 합니다). 시작"을 창 아래에 표시합니다.
vi /etc/rc.local 명령을 사용하세요.
그런 다음 파일의 마지막 줄에 실행할 프로그램의 전체 경로를 추가하세요.
예를 들어, 컴퓨터를 켤 때마다 haha.sh를 실행해야 하고 이 스크립트가 /opt 아래에 있는 경우, "/etc/"에 "/opt/./haha.sh" 줄을 추가할 수 있습니다. rc.local" 또는 "cd /opt" 및 "./haha.sh" 두 줄.

2. Crontab (Windows 작업 스케줄링 서비스와 유사)
crontab을 사용하면 프로그램 실행 일정을 설정할 수 있습니다. 예를 들어 프로그램이 매일 8시에 실행되도록 하거나 매일 10시에 실행되도록 할 수 있습니다. 월요일.
crontab -l 일정을 나열합니다.
crontab -d 일정을 삭제합니다.

"-l"은 아무 말도 하지 않고
"-e"를 편집합니다. vi에는 차이가 없습니다. (사실 vi는 특정 파일을 편집할 때 사용합니다.)
"-d"는 기본적으로 사용되지 않습니다. 일반적으로 "-e"는 사용자의 시간표를 모두 삭제하는 데 사용됩니다. 불필요한 시간표를 한 줄씩 편집하세요.

그렇다면 어떻게 편집하나요?

crontab 파일의 형식은 M HD m d CMD입니다.
haha.sh와 같이 마지막 CMD가 실행될 프로그램인 6개 필드 필드입니다.
M: 분(0-59)
H: 시(0-23)
D: 날짜(1-31)
m: 월(1-12)
d: 요일(0-6, 0은 나타냄) 일요일)

5개의 시간 필드는 공백으로 구분됩니다. 값은 쉼표로 구분된 숫자 또는 기타 숫자일 수 있습니다. 설정이 필요하지 않은 경우 기본값은 "*"입니다.

예를 들어 매일 8시 5분에 haha.sh를 실행하면 "5 8 * * * /opt/./haha.sh"가 됩니다.

"부팅 프로그램 자동 시작"에서 벗어난 것 같더니 이제 다시 화제로 돌아왔습니다. 실제로 위에서 소개한 crontab 함수에는 부팅 시 자동으로 시작되는 기능이 이미 있습니다. 프로그램이 no인 경우 모니터링 스크립트를 작성하여 5분마다 실행할 수 있습니다. 더 이상 사용할 수 없으면 다시 시작하세요. (*/5)는 5분마다를 의미합니다.

3. 시스템 서비스 등록
ssh, ftp 등과 같은 운영 체제와 함께 제공되는 서비스는 부팅 시 자동으로 시작됩니다. 자신의 프로그램 "가치"를 높입니다.

예를 들어 설치된 서비스를 시스템 서비스로 추가하려면 다음 명령을 실행할 수 있습니다.
chkconfig --add service name (먼저 시스템 서비스로 추가합니다. 추가 앞)

chkconfig -leve 시작 수준 서비스 이름 on
(설명, 수준 3은 명령줄 모드에서 시작을 의미하고 수준 5는 그래픽 인터페이스에서 시작을 의미하며 on은 켜짐을 의미)

chkconfig -leve 시작 수준 서비스 name off
(설명, off는 자동 시작을 끄는 것을 의미합니다)
: 예: chkconfig -level 3 MySQL ON ************************ *************************** *********************** *************어떤 서비스가 시스템 서비스로 추가되었는지 확인하려면 다음 명령을 사용할 수 있습니다.
ntsysv 또는 chkconfig --list

어떤 프로그램이 시스템 서비스로 추가되었는지 확인하려면 자동 시작으로 추가된 경우 다음 명령을 사용할 수 있습니다:
cat /etc/rc.local (이 파일에 어떤 프로그램 경로가 추가되었는지 확인)
************ ****** ********************************************* ***** **************************

다음은 쉘 스크립트를 시스템 서비스로 추가하고 시스템 시작을 따르는 방법의 예입니다.
"/etc/rc.d/init.d" 아래에 많은 파일이 있는 것을 볼 수 있으며, 각 파일의 내용을 볼 수 있는데 실제로는 일부 쉘 스크립트입니다.
시스템 서비스 시작은 "/etc/rc.d/init.d"의 스크립트 파일을 통해 이루어집니다. 우리는 또한 우리 자신의 스크립트를 작성하여 여기에 배치할 수도 있습니다.
스크립트 파일의 내용도 매우 간단합니다. 다음과 유사합니다(예: 이름을 "hahad"로 지정).
. /etc/init.d/functions
start() {           echo "프로세스 시작 중"
              cd /opt
          ./haha.sh}
stop() {                             의 ‐ ‐ ‐ echo "의 시작 -to--- ' 파일 이후에는 아직 끝나지 않았습니다. 계속해서 다음 단계를 완료하세요: chmod +x hahad )
chkconfig --list hahad                 #hahad 서비스가 등록된 것을 볼 수 있습니다

이때, 모든 작업이 완료되었습니다.

관련 권장 사항:

Linux에서 Redis 데이터베이스를 설치하고 자동 시작 스크립트를 공유하는 방법

nginx는 부팅 후 자동으로 서비스를 시작합니다.

Linux는 자동으로 MySQL을 시작합니다

위 내용은 Linux 시스템에서 부팅 시 프로그램이 자동으로 시작되도록 하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿