터미널이나 bash 파일을 사용하여 매일 오전 3시에 예를 들어 Ubuntu를 재부팅하도록 구성하려면 어떻게해야합니까?
즉, 터미널을 통해 자동 재부팅을 예약하고 싶습니다.
Google 또는 AskUbuntu에서 이와 관련된 내용을 찾을 수 없었으며 Ubuntu를 처음 접했습니다 (새로운 Raspberry Pi를 얻었습니다).
터미널이나 bash 파일을 사용하여 매일 오전 3시에 예를 들어 Ubuntu를 재부팅하도록 구성하려면 어떻게해야합니까?
즉, 터미널을 통해 자동 재부팅을 예약하고 싶습니다.
Google 또는 AskUbuntu에서 이와 관련된 내용을 찾을 수 없었으며 Ubuntu를 처음 접했습니다 (새로운 Raspberry Pi를 얻었습니다).
답변:
crontab -e
명령을 사용하여 crontab 항목을 편집하고 (기본적으로 현재 로그인 한 사용자 crontab이 편집 됨) 다음 행을 추가하십시오.
0 3 * * * echo $PASSWD | sudo -S reboot
#change $PASSWD with your password
파일을 저장하고로 새 crontab 항목을 확인하십시오 crontab -l
.
당신이 사용하려는 경우 :
0 3 * * * sudo reboot
crontab으로, 이것은 정상적으로 작동하지 않으므로 어떻게 작동하는지 확인하려면 이 게시물 을 확인해야 합니다.
또는 crontab을 루트 사용자의 crontab 파일에 추가 reboot
하여 sudo crontab -e
다음을 사용 하여 명령 의 전체 경로를 제공하십시오 .
0 3 * * * /sbin/reboot
reboot
명령에 대한 완전한 경로를주지 않고 테스트했기 때문에 말했다 . 그렇지 않으면 작동하지 않습니다. 나의 새로운 편집을보십시오.
일반 텍스트 암호를 텍스트 파일에 넣는 것은 좋지 않으므로이 작업을 처음부터 루트로 실행하는 것이 가장 좋습니다. 일반적으로 crontab
명령을 통해 루트의 crontab을 편집하는 대신 항목을 /var/spool/cron/crontabs
다소 비밀스러운 위치 에 남겨 두는 대신에 명시 적으로 입력하는 것을 선호합니다 /etc/cron.d
. cron.d의 항목은 시스템 crontab 항목으로 실행되며 구성 파일로 처리되므로 시스템 재부팅, 업데이트 및 업그레이드 후에도 실행되며 명시 적으로 실행중인 사용자를 지정할 수 있습니다.
echo "0 3 * * * root /sbin/shutdown -h 5 'System will reboot in 5 minutes'" | sudo tee /etc/cron.d/reboot-at-3-am
특정 시간이 필요하지 않고 시스템을 매일 한 번 재부팅하려면 실행 파일이나 스크립트를 추가하면 /etc/cron.daily
미리 지정된 시간에 자동으로 실행됩니다 (기본적으로 오전 6시 25 분 시스템 시간).
echo "/sbin/shutdown -h 5 'System will reboot in 5 minutes'" | sudo tee /etc/cron.daily/reboot-me
경고없이 시스템을 재부팅하는 대신 5 분 경고를 설정하고 있으므로 누군가가 로그인하면 작업을 저장하거나 시스템을 중단 sudo shutdown -c
하지 않고 작업을 중단 할 수 있습니다. 그들 아래에서 떨어져. 더 많은 경고를 원할 경우이를 적절하게 조정할 수 있습니다 (예 : shutdown -h 60
오전 2:00에 명령을 사용 하고 실행하면 사용자에게 1 시간 동안 경고를 줄 수 있습니다).
이것은 나의 과거 경험을 바탕으로합니다. 어떤 시점에서 당신이 할 때의 crontab 항목을 실행 작업에 로그인하고, 그냥 경고없이 재부팅하면 당신은 매우 슬픈 팬더 수 있습니다.
왜 원하는가-아니면 이것을 해야 합니까? 작업이 매우 간단하지만 재부팅이 필요없는 Linux에는 더 나은 솔루션이 있습니다. Windows와 달리 Linux 기반 OS는 커널 업그레이드를 제외하고는 거의 재부팅 할 필요가 없습니다.
당신이 달성하려는 것을 설명한다면 우리는 아마 당신을 더 잘 도울 수 있습니다.
echo $PASSWD