【发布时间】:2013-04-09 07:48:34
【问题描述】:
我正在编写一个可执行的 Python 应用程序。它读取和写入文件。该应用程序使用 wx 作为 GUI 并已获得以下权限:
chmod +x app.py
当我像这样从终端加载应用程序时:
./app.py
应用程序加载并不会导致错误。
但是,当我双击 app.py 文件并单击“执行”时,除了对该文件的读取和写入之外,一切正常。这是程序的主要部分,会导致错误。
我这辈子都无法理解为什么这不起作用。
我已尝试将其设置为每次都以 root 用户身份加载,但没有运气。我也一直在以 root 用户身份进行开发,所以我不应该看到任何问题。
我使用的是默认的 Raspbian 操作系统。
【问题讨论】:
-
你用完整路径还是相对路径打开文件?
-
您的桌面是否也以 root 身份运行?通常它不应该是出于安全原因,这意味着通过双击启动的进程将没有 root 权限,并且可能不允许读取/写入文件。如果这是您一直在尝试做的,那么脚本不能被 suid'd。
-
我使用的是相对路径 - 该文件与应用程序位于同一目录中。我会尝试改变路径,看看会发生什么。
-
如果我无法以所需的权限运行此应用程序,我该如何克服存储信息的问题?这就是我目前使用文件访问的原因。
标签: python linux file-io file-permissions raspberry-pi