Я пытаюсь поместить свой ПК для сна в течение минуты и затем пробуждения каждые 5 минут, и я использовал команду
*/5 * * * * /usr/sbin/rtcwake -m mem -s 60
для достижения этого и это работает просто великолепно.
Но когда я пытаюсь сделать это через исполняемый файл, скомпилированный из кода
#include<stdio.h>
int main()
{
system("rtcwake -m mem -s 60");
return 0;
}
в моей домашней папке и изменяющийся crontab к
*/5 * * * * /home/****/./a.out
где a.out
исполняемый файл для кода C, предоставленного выше, он ничего не делает.
Я вижу, что crontab выполняется a.out
использование grep CRON /var/log/syslog
периодически за каждые 5 минут. Но мой ПК не входит в состояние сна.
Как я могу зафиксировать его?
Чтобы удостовериться, что system
команде удается найти rtcwake
, обновите свой код C, чтобы иметь полный путь из программы:
system("/usr/sbin/rtcwake -m mem -s 60");