Linux 연구 노트의 시스템 작업 설정에 대한 심층 분석

WBOY
풀어 주다: 2022-02-07 17:19:26
앞으로
1609명이 탐색했습니다.

이 문서는 시스템 시작 프로세스, 시스템 서비스, 자체 시작 서비스 및 예약된 작업과 관련된 문제를 포함하여 Linux의 시스템 작업 설정에 대한 관련 지식을 제공합니다.

Linux 연구 노트의 시스템 작업 설정에 대한 심층 분석

시스템 시작 프로세스

  • 컴퓨터 하드웨어 시작(BIOS)
    • 읽기 시간
    • 해당 시작 모드 선택(USB HDD EFI)
  • Linux 시스템인 경우 돌아가서 다음을 찾으세요. /boot 디렉터리, 이 시스템을 부팅하여 시작
  • 컴퓨터 시스템이 시작되기 시작하고 초기화 구성 파일을 읽습니다.
    • vi /etc/inittab
    • 시작하는 동안 컴퓨터의 실행 수준을 제어합니다.
    • 5
      0 중지(종료)
      1 단일 사용자 모드(단일 사용자 모드)
      2 다중 사용자, NFS 없음(다중 사용자 모드, 그러나 네트워크 상태는 없음) fs-- & gt; filesystem
      3 full multiuser mode (multi-user full 버전 모드)
      4 팽창 (예약 모드)
    • id:3initdefault: 기본 실행 수준은 3입니다.
    • runlevel=3으로 해당 서비스 및 구성 요소 시작
    • 기본적으로 공용 구성 요소 또는 서비스 부팅 시작
      • vi /etc/rc.d/rc.sysinit
    • runlevel에 해당하는 서비스 로딩을 시작합니다
      • vi /etc/rc3.d
        • K: 종료 시 닫아야 하는 서비스
        • S: 시작할 때 열어야 하는 서비스
        • 숫자는 순서를 나타냅니다. 열기 또는 닫기
        • 모든 파일은 소프트링크(바로가기)이며 링크 주소는 /etc/init입니다.

      • 시작이 완료되면 모든 서비스


      시스템 서비스

      • chkconfig 명령을 사용하여 현재 가상 머신의 서비스를 볼 수 있습니다.
      • 보기를 통해 다양한 레벨이 각 서비스에 해당한다는 것을 알 수 있으며 부팅 후 자동으로 시작되는지 확인할 수 있습니다
      • 부팅이 완료된 후 service(CentOS6) Systemctl(CentOS7) 명령을 사용하여 서비스 열기 또는 닫기를 제어해야 합니다

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

      • rc.local(이때 실행 권한이 있는 파일이므로 부팅 후 자동으로 실행됩니다)
        • 먼저 스크립트가 저장된 폴더를 생성하세요
          • mkdir -p /usr/local/scripts
        • 스크립트 파일 생성
          • vi hello.sh
          • 폴더에 들어가서 실행권한을 주세요
        • /etc/rc.d/로 이동해서 rc.local 파일에 스크립트의 절대경로를 추가하세요
          • rc.local 실행권한을 주세요

            ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
      chkconfig

      먼저 rc.local 실행 권한을 취소하고 테스트를 시작하세요
      • chmod  a-x rc.local
        로그인 후 복사
          • 부팅 자동 시작 스크립트 파일을 생성하세요

            vi schoolntpdate.sh
            로그인 후 복사
          #!/bin/bash
          #chkconfig:2345 88 99
          #description:schoolntpdate.sh
          
          ##  开机自启动同步时间
          yum info ntp && ntpdate cn.ntp.org.cn
          로그인 후 복사
        실행 권한을 설정하세요
      chmod a+x schoolnptdate.sh
      로그인 후 복사

      스크립트를 /etc/init.d 디렉터리에 복사하고 서비스에 추가합니다. Timed jobs

      • 시스템 서비스 센터에서 crond는 주기적인 작업을 담당합니다
        cp schoolntpdate.sh /etc/init.d/
        로그인 후 복사
          • 작업 추가 및 현재 사용자의 작업 목록 편집
          • chkconfig --add /etc/init.d/schoolntpdate.sh
            로그인 후 복사
        • 작업 편집
        systemctl status crond.service
        로그인 후 복사
      crontab -e
      로그인 후 복사
    • 구성을 적용하려면 crontab을 다시 시작하세요
      星 星 星 星 星  command
      分 时 日 月 周 命令
      第一列表示分钟1~59  每分钟用*或者*/1表示
      第二列表示小时1~23(0表示0点)
      第三列表示日期1~31
      第四列表示月份1~12
      第五列标识号星期0~6(0表示星期天)
      第六列表示要运行的命令
      
      *: 表示任何时间都,实际上就是“每”的意思。可以代表00-23小时或者00-12每月或者00-59分
      -: 表示区间,是一个范围,00 17-19 * * * cmd,就是每天17,18,19的整点执行命令
      ,: 是分割时段,30 3,19,21 * * * cmd,就是每天凌晨3和晚上19,21的半点时刻执行命令
      /n: 表示分割,可以看成除法,*/5 * * * * cmd,每隔五分钟执行一次
      로그인 후 복사
    • crontab -l을 통해 현재 예약된 작업 보기
    • 작업 기록 보기
      • 30 21 * * * /usr/local/rc.d/Lighttpd restart
        #上面的例子表示每晚21:30重启apache
        
        45 4 1,10,22 * * /usr/local/rc.d/Lighttpd restart
        #上面的例子表示每月1,10,22日的4:45重启apache
        
        10 1 * * 6,0 /usr/local/rc.d/Lighttpd restart
        #上面的例子表示周六、周日的1:10重启apache
        
        0,30 18-23 * * * /usr/local/rc.d/Lighttpd restart
        #上面的例子表示每天的18:00至23:0每隔30分钟重启apache
        
        0 23 * * 6 /usr/local/rc.d/Lighttpd restart
        #上面的例子表示每星期六的11:00重启apache
        
        * */2 * * * /usr/local/rc.d/Lighttpd restart
        #上面的例子表示每两小时重启apache
        
        * 23-7/1 * * * /usr/local/rc.d/Lighttpd restart
        #上面的例子表示晚上的11点到早上的7点之间,每隔一小时重启apache
        
        0 21 4 * mon-wed /usr/local/rc.d/Lighttpd restart
        #上面的例子表示每月的4号与每周一到周三的11点重启apache
        
        0 4 1 jan * /usr/local/rc.d/Lighttpd restart
        #上面的例子表示一月一号的4:00重启apache
        
        --(功能描述:显示年月日时分秒)
        date "+%Y %m %d %H %M %S"
        로그인 후 복사
      • 작업 지우기
        • systemctl restart crond.service
          로그인 후 복사
        • Test 폴더를 생성하는 스크립트 만들기

          vi /var/spool/mail/root
          로그인 후 복사

          • 예약된 작업을 추가하고 만들기 1분마다 폴더
            • crontab -r
              로그인 후 복사
            #!/bin/bash
            
            dname=`date "+%Y%m%d%H%M%S"`
            mkdir -p ~/$dname
            로그인 후 복사
            • crontab -e #编辑定时任务
              로그인 후 복사
            • 생성되었는지 확인해보세요
                • 작업 지우기

            관련 추천: "Linux 비디오 튜토리얼"

        위 내용은 Linux 연구 노트의 시스템 작업 설정에 대한 심층 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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