【问题标题】:macOS Catalina python via launchd access denied to Downloads foldermacOS Catalina python 通过启动访问拒绝下载文件夹
【发布时间】:2019-11-11 15:15:14
【问题描述】:

我在通过脚本通过 launchd 执行的 python 程序遇到权限问题。

如果我从终端或 BBEdit 运行 .sh 脚本,它执行正常。

从 launchd 运行时,我得到:

with open(_userHome + '/Downloads/quotes.csv', newline='') as chkFile:
PermissionError: [Errno 1] Operation not permitted: '/Users/xxx/Downloads/quotes.csv'

下载文件夹的权限授予用户 r/w 和每个人的读取权限。 我尝试使用 /usr/local/bin/python3 将 python3 添加到具有完整磁盘访问权限的安全性中。

这是特定于“下载”文件夹的。我创建了一个“Downloads2”文件夹,它运行良好。这是一个可怕的kluge。我应该可以使用默认下载文件夹。

想法?

【问题讨论】:

  • 告诉我们$ ls -ld ~/Downloads/——你已经完成了$ chmod a+rwx,是吗?您是否以名为 python3 的 用户 身份启动,所以 $ sudo -u python3 ls -ld Downloads 会相关?
  • 不是像 python 一样运行,而是像我一样运行(用户 = Craig)。 ls -ld ~/Downloads/ 给 drwxr-xr-x+ 6 个 craig 员工 192 Nov 11 10:37 /Users/craig/Downloads/
  • LauchControl(一个用于管理已启动作业的 macOS 应用程序)的作者创建了一个实用程序,允许通过该实用程序运行作业,该实用程序将脚本包装在单个授权任务中。我们仍在测试它(进展顺利),但它应该可以在下一个 LaunchControl 版本中使用。不确定该实用程序是否会单独发布。我使用 LaunchControl,我没有参与其中。

标签: python-3.x macos permissions


【解决方案1】:

您运行的 MacOS 版本比我更新、限制性更强。

参考https://nektony.com/duplicate-finder-free/folders-permission

提供超出chmod a+r 的建议。

Tl;dr: SysPref --> 安全和隐私 --> 隐私 --> 文件和文件夹 --> +

【讨论】:

    猜你喜欢
    • 2020-02-15
    • 2014-12-31
    • 2012-03-06
    • 1970-01-01
    • 2016-04-28
    • 1970-01-01
    • 2011-05-11
    • 2014-06-03
    • 1970-01-01
    相关资源
    最近更新 更多