데비안의 크론 작업이 특정 시간에 실행되는 것을 방지하는 방법은 무엇입니까? ("게임"/"성능 모드")

데비안의 크론 작업이 특정 시간에 실행되는 것을 방지하는 방법은 무엇입니까? ("게임"/"성능 모드")

logcheck를 크론 작업으로 설정했는데 실행될 때마다 CPU의 약 1/4을 차지하는 grep것 같습니다.logcheck

이제 어느 시점에서는 전체 CPU 용량이 필요하며 특정/프로세스(어떻게든 지정할 수 있음)를 제외하고 시스템이 가능한 한 적은 리소스를 소비하도록 합니다.

사용자가 명시적으로 시작하지 않은 프로세스가 많은 시스템 자원을 차지하는 것을 방지하고 백그라운드 프로세스의 부하를 줄이기 위해 KDE 시스템이 있는 데비안 9.1을 일종의 성능 모드(또는 "게임 모드")로 설정할 수 있습니까? 가장 중요한 것은 모드가 다시 중지될 때까지 크론 작업을 지연하는 것입니다.

답변1

"언젠가"가 정해져 있지 않은 경우,시스템이 "성능 모드"에 들어가고 나가는 시기를 수동으로 지정하려면 간단히 중지하고 시작하면 됩니다 cron.

sudo systemctl stop cron

크론 작업이 실행되는 것을 방지합니다.

sudo systemctl start cron

다시 활성화됩니다.

anacron대신 에 볼 수도 있습니다 cron. 목적에 맞는 방식으로 전역적으로 조정하는 것이 더 쉬울 수도 있습니다.

답변2

나는 두 가지 접근 방식을 고려할 것입니다

  1. 일정을 동일하게 유지하되 모든 cron작업을 실행하세요.nice, 어쩌면 심지어ionice:

    0 * * * *    root    ionice -c3 nice /some/command and parameters
    
  2. cron특정 시간에는 작업이 허용되지 않습니다. 이 방법은 플래그 파일을 생성(또는 삭제)할 수 있는 모든 사용자가 제어할 수 있다는 점을 명심하십시오. 게임 모드를 설정하고 싶다면 이것이 효과가 있을 수 있습니다주문형, 게임의 시작 스크립트에 touch및 명령을 추가하여. ( 대신 rm을 사용해야 할 수도 있지만 모든 사용자에게 열려 있습니다.)/tmp/var/run

    0 18 * * *      root    touch /var/run/no_cron
    0 19 * * *      root    rm -f /var/run/no_cron
    
    0 * * * *       root    test ! -f /var/run/no_cron && /some/command...
    

일단 설정되면 두 방법 모두 루트 액세스가 필요하지 않습니다. 또한 이 통제 대상이 되는 작업과 적용되지 않는 작업을 미리 결정할 수 있습니다.

관련 정보