You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行apt update或sudo apt-get update报权限相关错误该如何解决?

报错信息如下:

Reading package lists... Done
W: chmod 0700 of directory /var/lib/apt/lists/partial failed - SetupAPTPartialDirectory (1: Operation not permitted)
E: Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied)
E: Unable to lock directory /var/lib/apt/lists/
W: Problem unlinking the file /var/cache/apt/pkgcache.bin - RemoveCaches (13: Permission denied)
W: Problem unlinking the file /var/cache/apt/srcpkgcache.bin - RemoveCaches (13: Permission denied)
问题原因
  • 报错核心为apt依赖的系统目录操作权限被限制,即使root身份也无法写入,常见触发场景如下:
    • 目录被设置了immutable不可修改扩展属性:/var/lib/apt/lists/、/var/cache/apt/ 被添加了i扩展属性,该属性优先级高于普通rwx权限,root用户也无法修改对应目录下的文件
    • 运行环境权限受限:若在WSL、Docker容器、chroot等虚拟环境中执行命令,当前root权限被上层系统限制,无法修改映射过来的目录
    • 锁文件权限异常:/var/lib/apt/lists/lock 残留且所有者、权限设置异常,root也无法读写
解决步骤
  1. 移除目录的不可修改属性
    先执行命令查看目录扩展属性:
    lsattr /var/lib/apt/lists/ /var/cache/apt/
    如果输出中对应目录行开头带有i标识,执行以下命令移除属性:
sudo chattr -i /var/lib/apt/lists/
sudo chattr -i /var/lib/apt/lists/partial
sudo chattr -i /var/cache/apt/
  1. 清理残留锁文件
sudo rm -f /var/lib/apt/lists/lock
sudo rm -f /var/cache/apt/archives/lock
  1. 重置目录权限为默认值
sudo chown root:root /var/lib/apt/lists/ -R
sudo chmod 755 /var/lib/apt/lists/ -R
sudo chown root:root /var/cache/apt/ -R
sudo chmod 755 /var/cache/apt/ -R
  1. 受限环境适配
    若运行在虚拟环境中:
  • WSL环境:确认apt存储目录未挂载Windows分区,将apt缓存目录修改为Linux原生文件系统路径
  • Docker容器:启动时添加--privileged参数授予完整root权限,或在构建镜像阶段完成apt配置

操作完成后重新执行sudo apt update即可验证问题是否解决。

内容的提问来源于stack exchange,提问作者yash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 23:15:00