我使用“a”目录作为“samba”目录,
这是我自由制作的,为了不让它在制作10分钟后被删除。
'find'、'chattr',终端上的命令运行正常
~$ sudo find /home/a/* -type f -mmin +10 -exec chattr +i {} \;
但是crontab里的命令不好
* * * * * find /home/a/* -type f -mmin +10 -exec chattr +i {} \;
原因何在?
答案1
Cron 不会导入任何环境变量,因此要使其正常工作,您需要PATH=path1:path2:…
在 crontab 文件顶部添加一行,以便find
可以chattr
找到它。例如:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
* * * * * find /home/a/* -type f -mmin +10 -exec chattr +i {} \;
或者,您可以使用命令的完整路径:
* * * * * /usr/bin/find /home/a/* -type f -mmin +10 -exec /usr/bin/chattr +i {} \;