특정 시간 후에 시스템을 자동으로 종료하려면 어떻게해야합니까?


답변:


49

터미널 창을 열고 다음을 입력하십시오.

sudo shutdown -h +60

60 분을 원하는 시간 (분)으로 바꿉니다.

여기에 더 많은 정보가 있습니다 :

http://ubuntuforums.org/archive/index.php/t-473173.html http://www.linux.org/lessons/beginner/l5/lesson5a.html


2
-P매개 변수 (전원 끄기)가 너무 좋은 아이디어가 될 것으로 보인다.
htorque

shutdown + m 60이 작동하지 않습니다. 오류 메시지가 표시되고 유효하지 않은 시간 값이 있다고 말합니다.
NES

이상하다고 생각했습니다. "+ m 60"이 아니어야하고 "+60"이되어야합니다 (또는 "-h +60"과 비슷할 것임). linux.org/lessons/beginner/l5/lesson5a.html .
다니엘

"shutdown -P 1"-시간 단위없이 1 분 안에 시스템을 종료하고 종료합니다.
n3rd

2
실제로 그 sudo ..... 루트 권한이 필요하기 때문에
Shirish Herwade

8
  • gshutdown 을 사용할 수 있습니다 gshutdown 설치
  • 설치 후 응용 프로그램 → 액세서리 → GShutdown에서 찾을 수 있습니다. 대체 텍스트
  • 방법도 살펴보십시오 .

왜 그들이 투표를 거절했는지 말해 줄 수 있습니까?
karthick87

2
나는 투표하지 않았다. 그러나 Gshutdown은 여기서 원활하게 작동하지 않습니다. 종료를 선택하면 대신 사용자를 로그 아웃합니까?
NES

나도, 그것은 사용자를 로그 아웃하고 노트북은 절전 모드로 이동
lewis4u

2

일정 기간 동안 사용하지 않으면 PC 종료에 관한 주제가이 주제 로 재 지정 되므로 여기서이 문제에 대해 설명하겠습니다.

이 문제를 해결하기 위해 많은 시간을 보냈으므로 다른 사람이 똑같은 문제를 간단하게 만들기 위해 공유하는 것이 유용하다는 것을 알게되었습니다. 나는 다른 프로그램을 시도했지만 그들은 나를 위해 작동하지 않았으므로 cronjob 과 함께 짧은 스크립트 를 사용 하는 것이 가장 좋은 해결책이라는 것을 알았습니다 .

처음에는 Timed Shutdown-30 분 후 종료 라는 것을 언급했습니다.

아래에 복사 한 다음 작동하도록 개선 사항을 설명합니다.

xprintidle을 설치하십시오. 이 도구는 사용자의 유휴 시간을 제공합니다.

sudo apt-get install xprintidle

유휴 시간을 확인하고 30 분 동안 유휴 상태 인 경우 컴퓨터를 종료하도록 지시하는 autoshutdown.sh 스크립트를 작성하십시오.

idle=$(xprintidle)

if [ $idle -gt 1800000 ]; then
    shutdown -h now
fi

시스템이 너무 오래 유휴 상태이고 30 분 이상 유휴 상태이면 시스템이 종료 될 때까지 점검하는 cronjob을 작성하십시오. 루트 사용자를 위해 크론 작업을 수행해야합니다.


이 스크립트는 다음과 같이 약간의 개선이 필요합니다.

idle=`env DISPLAY=:0 su OUR_USER -c xprintidle 2>&1`

OUR_USER 유휴 시간 확인을 위해 참조하는 사용자 (루트 사용자 아님)

DISPLAY=:0하나의 데스크탑 디스플레이 에 적합합니다 (상황에서 env읽을 명령 실행 DISPLAY)

에 의해 스크립트가 실행되면 OUR_USER위의 줄을 줄일 수 있습니다.

idle=`env DISPLAY=:0 xprintidle 2>&1`

이 주제는 http://ubuntuforums.org/showthread.php?t=1069602 에 설명되어 있습니다

에 의해 스크립트가 실행 OUR_USER되면 shutdown명령 앞에sudo

sudo shutdown -h now

내 스크립트는 cron 파일의 cron에서 한 줄씩 실행되었습니다.

*/5 * * * * /home/OUR_USER/autoshutdown.sh 
  • 5 분마다
  • OUR_USER는 앞서 언급 한 사용자보다 먼저 교체해야합니다.

스크립트가 루트로 실행되지 않으면 다음 행을 추가해야합니다.

ALL ALL=(ALL) NOPASSWD: /sbin/shutdown 

에서 의 sudoers 파일, 그래서 종료 명령을 실행해야 할 암호가 필요하지 않습니다.


나는 2 개의 유사한 배포판 Lubuntu 12.04.4 RC LXLE 32 비트 ( http://www.lxle.net/ )에서 그러한 cronjob을 시도했습니다.

한 시스템에서는 파일에 설정된 루트 cronjob 만 사용하여 작동합니다.

/ var / spool / cron / crontabs / root


경고

또 다른 문제는 내 시스템의 xprintidle이 때로는 임의의 값을 제공 하고 때로는 논리적으로 증분 한다는 것입니다 . 최종 결과-최대 유휴 값을 30 분으로 설정하면 시스템이 일반적으로 20 분 후에 종료되었습니다. 범인은 입력 한 매개 변수로 설정 한대로 작동하지 않는 xscreensaver 라고 생각합니다 .


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.