当我单击 Desura 时什么也没有发生,单击强制更新有效,但并不能解决问题。
编辑:我知道我收到了这个错误:详细信息:无法执行子进程“/home/neil/Downloads/desura”(权限被拒绝)
答案1
通常Failed to execute child process
with(Permission denied)
意味着正在执行的程序没有执行权限设置它。
默认情况下,在 Ubuntu 上下载的文件没有启用执行权限。这样做的原因之一是帮助保护您免受恶意程序(或您不想意外运行的非恶意程序)的侵害。
如果你是当然 /home/neil/Downloads/desura
您可以安全地运行,然后您可以为其启用执行权限。
命令行方式
在终端中运行此命令:
chmod +x /home/neil/Downloads/desura
你可能已经自己的该文件,所以你应该不是需要使用 运行该命令sudo
。
图形方式
在 Nautilus(文件浏览器)中,找到desura
您的Downloads
文件夹,然后右键单击它。点击特性。
点击权限选项卡,并选中标有允许作为程序执行文件. 然后点击关闭。
答案2
检查文件的所有权。
ls -la <file-name>
您应该是该文件的所有者并具有执行权限
答案3
当我尝试启动 nuitka 编译的 onefile 项目时,得到了类似的信息:
Error, couldn't launch child (exec).: Permission denied
当然,我的二进制文件具有执行权限。经过一番思考,我记得 nuitka 的 onefile 可执行文件解压到 /tmp 目录。使用 检查了 /tmp 的挂载方式后mount | grep /tmp
,我发现 /tmp 上的文件没有执行权限,例如:
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noexec)
解决方案是使用未安装的另一个 TMPDIR 路径运行我的二进制文件noexec
,例如:
TMPDIR=/some/tmp/path ./my_executable.bin