使用直接从 URL 下载的 .deb 文件时,sudo apt install 出现警告

使用直接从 URL 下载的 .deb 文件时,sudo apt install 出现警告

在使用sudo apt install foobar.deb下面的 foobarzoom从 Zoom 公司公共网站安装专有软件后,我反复得到以下诊断:

N: Download is performed unsandboxed as root as file '/home/ykarant/Downloads/zoom_amd64.deb' couldn't be accessed by user '_apt'. - pkg Acquire::Run (13: Permission denied)

我读过了“N:无法删除作为文件下载的权限”是什么意思?但这些评论是 2019 年的,情况可能已经发生了变化。我以前从未遇到过这个问题。请注意,这种情况现在只发生在我从网上下载文件时,.deb但这些文件来自被认为是可靠的来源(例如上面的 Zoom corporate 或 UCSF Chimerax 等)。

请注意,软件包似乎已正确安装,并且似乎可以正常执行(运行)。是什么导致了上述问题,如何“修复”它?Ubuntu 22.04.2 当前版本。

答案1

发布得有点晚,但这应该是信息性的。经过我自己对这个问题的一番搜索,最终发现是 _apt 用户没有对本地目录的读取权限。因此,如果您提供对相关目录的读取权限,错误就会消失。在不放弃对下载目录的全局读取权限的情况下执行此操作的最佳方法是使用文件 acl。

在我的特定情况下,这是未设置 ACL 时获得的输出:

Setting up rstudio (2023.09.0+463) ...
Processing triggers for mailcap (3.70+nmu1ubuntu1) ...
Processing triggers for desktop-file-utils (0.26-1ubuntu3) ...  
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for gnome-menus (3.36.0-1ubuntu3) ...
Processing triggers for shared-mime-info (2.1-2) ...
N: Download is performed unsandboxed as root as file 
'/home/kingjamm/Downloads/rstudio-2023.09.0-463-amd64.deb' couldn't be 
accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)

为了解决这个问题我使用了下面的方法

setfacl -m u:_apt:rx /home/kingjamm
setfacl -m u:_apt:rw /home/kingjamm/Downloads

执行此操作后,错误不再发生

Unpacking rstudio (2023.09.0+463) over (2023.09.0+463) ...
Setting up rstudio (2023.09.0+463) ...
Processing triggers for mailcap (3.70+nmu1ubuntu1) ...
Processing triggers for desktop-file-utils (0.26-1ubuntu3) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for gnome-menus (3.36.0-1ubuntu3) ...
Processing triggers for shared-mime-info (2.1-2) ...

另请注意,文件本身的文件权限为 644。如果您的 umask 阻止其可供所有人读取,则必须更改权限或在下载的 .deb 上添加 fileacl

相关内容