与标题一样,如何以 sudo 权限运行在 conda 环境中安装的程序?
此主题(sudo:conda:未找到命令) 提到 conda 命令不能被授予超级用户权限。但我需要授予此特定程序完全的写入和编辑访问权限。我尝试更改相关文件夹/程序的权限,但每次都会自动重置为“仅访问”权限。
有什么想法可以解决这个问题?
答案1
但我需要授予这个特定程序完全的写入和编辑权限。
不,你不需要。你需要对 conda 存储文件的特定位置具有写入和编辑权限,以便可以启动操作。默认情况下,conda 会以你的用户作为用户和组安装在你的家中,因此该位置已经为你创建。这就是你对 conda 权限所需的全部内容。其他任何事情都是安全问题。
您需要执行的所有其他操作都应该通过与 conda 环境断开连接的系统上的脚本完成。
一个非常基本的例子:
- 从 conda 中,您可以在 conda 主目录中创建一个 pidfile (/home/user/.conda/pid)。您可以使用它们将要处理的数据存储在此文件中。
- 您创建一个 systemd 服务来扫描添加到系统的新 pid 文件。
- systemd 服务启动一个脚本(以 root 身份),该脚本扫描 pid 文件并执行需要执行的操作。请注意,这还可以为 conda 创建一个新文件,该文件保存了此结果。
2 和 3 也可以是 cron 作业(通过 crontab 或 /etc/crontab)或目录观察程序(inotify 或使用 Python 观察程序)。