OSX cronjob 没有权限触碰下载中的现有文件?

OSX cronjob 没有权限触碰下载中的现有文件?

我最近从 OSX 13.2 更新到 13.5.2,现在我所有的 cronjobs 都失败了。

我尝试在 cronjob 中运行 rsync,但总是失败,最终我发现问题在于我的 cron job 没有编辑权限现存的由于某种原因文件~/Downloads?(在中运行良好~)。 cron在系统设置中具有完全磁盘访问权限。

我制定了我的 crontab:

* * * * * echo "Hello World" >> "/Users/me/Downloads/foo.txt"
* * * * * echo "Hello World " >> "/Users/me/Downloads/bar.txt"
* * * * * whoami >> /Users/me/Downloads/whoami.txt

foo.txt是我直接用 just 创建的touch foo.txt,其他两个是通过 cron 任务创建的。该foo.txt任务失败,其他两个每分钟运行一次。

ls -l显示:

-rw-r--r--@  1 me  staff    52 Sep 18 10:12 bar.txt
-rw-r--r--   1 me  staff     0 Sep 18 10:06 foo.txt
-rw-r--r--@  1 me  staff    15 Sep 18 10:12 whoami.txt

并且考虑到唯一明显不同的是@,我发现这个帖子

ls -l@没有任何明显有用的结果:

-rw-r--r--@  1 me  staff   143 Sep 18 10:19 bar.txt
        com.apple.macl    72
-rw-r--r--   1 me  staff     0 Sep 18 10:19 foo.txt
-rw-r--r--@  1 me  staff    50 Sep 18 10:19 whoami.txt
        com.apple.macl    72

来自crontab的邮件:

From me@computer  Mon Sep 18 10:20:01 2023
Return-Path: <me@computer>
X-Original-To: me
Delivered-To: me@computer
Received: by computer (Postfix, from userid 501)
        id A3DCC30D0D9; Mon, 18 Sep 2023 10:20:01 +0200 (CEST)
From: me@computer (Cron Daemon)
To: me@computer
Subject: Cron <me@computer> echo "Hello World" >> "/Users/me/Downloads/foo.txt"
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=me>
X-Cron-Env: <USER=me>
Message-Id: <20230918082001.A3DCC30D0D9@computer>
Date: Mon, 18 Sep 2023 10:20:01 +0200 (CEST)

/bin/sh: /Users/me/Downloads/foo.txt: Operation not permitted

答案1

顺便说一句,我刚刚将我的 rsync 作业移到了外部文件夹~/Downloads,它又可以正常工作了。不过还是很好奇这里出了什么问题

相关内容