我有一个小的Raspberry PI群集,其中每个PI都从母舰获得程序更新。一切都在本地局域网上,没有接触到互联网。
更新可执行文件的代码是:
strcpy(tmp,"/home/sw/update");
f = fopen(tmp, "w");
if (f == NULL) {
printf("Could not open program %s to update\n",tmp);
return 1;
}
fwrite(cmd,sizeof(char),totalRead-2,f);
fclose(f);
如果我从shell(以root身份)运行它,它可以正常工作。将其作为cron作业运行总是失败并显示上述消息"无法打开程序...."
我已将权限设置为777,并将文件的所有者更新为root(以消除这些问题)。更新程序每小时在集群中的每个PI上运行一次(还有另一种方法可确定是否需要更新)。 cron表条目是:
0 * * * * /home/sw/updatepi >> /var/log/updatepi.log
有什么想法吗?