如何授予 _apt 用户对 /var/lib/apt/lists 的权限?

如何授予 _apt 用户对 /var/lib/apt/lists 的权限?

我正在Ubuntu 18.04。每次apt update && apt upgrade结果都是

W: Download is performed unsandboxed as root as file '/var/lib/apt/lists/partial/archive.ubuntu.com_ubuntu_dists_bionic_InRelease' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)

我知道这过来。我的问题是这个答案, 我已经

/var/lib/apt/lists

归 拥有_apt:root,递归:我已经运行了

sudo chown -Rv _apt:root /var/lib/apt/lists

并且/var/lib/apt/lists/partial已进行 chmodded 700,因此_apt应该具有良好的写访问权限。

附加信息:

这一切都始于我/var/lib在其他地方建立符号链接到 下的目录时/root/

我不得不这么做,因为虽然我有 root 权限,但工作时其他人将机器设置/var为单独的分区。它太小了,已经满了,所以移动 + 符号链接是当时的解决方案。

编辑

接受的答案,我将符号链接目标从 下移开/root/;警告消失了。

答案1

当你对某个对象进行符号链接时,你必须对其进行权限分析符号链接指向的位置

如果你进入/var/.../root那么任何访问都/var/...需要能够读取/root- 只有这样root才能做到。你在符号链接上执行的任何 chmodding什么也不做

您应该将 及其原始权限移回/var/...其应在的位置,而不是对其进行符号链接。这会破坏许多潜在问题,因为默认情况下只能root读取/root

您可能需要考虑扩展/var分区而不是“符号链接”周围的东西,这会破坏您做事的方式。

相关内容