我正在创建一个 Electron 应用程序,我需要在其中扫描和更新需要 root 权限的文件。我知道我可以使用 sudo.exec() 以这种方式运行这样的命令:
sudo.exec ("rm /private/var/log/fsck_hfs.log", options, (e, stdout, stderr) => {});
我什至可以将多个命令放在一个脚本中,并使用单个 sudo.exec() 来执行它们。就我而言,命令需要在不同的时间点执行,我无法使用单个脚本执行它们。用户一次又一次地授予权限很烦人。
我尝试了另一种方式(运行一段代码,其中可以执行需要 root 权限的所有内容)。为此,我发布了另一个问题 here .但似乎是不可能的。
现在我想要一种在使用安装应用程序时获得一次权限的方法(就像大多数应用程序在用户安装它们之后所做的那样)并且能够在整个应用程序中使用 sudo.exec() 或其他一些方法来执行命令(最好还有需要 root 权限的代码 fs.readdir 等)。
最佳答案
您需要以管理员权限运行该应用程序。 如果您使用 electron builder 构建应用程序,请将 requestedExecutionLevel 值用作“requireAdministrator”
关于javascript - 如何在 Electron 应用程序中获取持久权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54652002/