这些包缓存清除方法有什么区别?

这些包缓存清除方法有什么区别?

使用 ubuntu 构建 Docker 镜像时,一些开发人员建议通过运行以下命令删除包缓存以减小生成的镜像的大小:

rm -rf /var/lib/apt/lists/*

但是,还有一个命令apt-get clean可以删除位于以下位置的包缓存/var/cache/apt/archives(参考:https://help.ubuntu.com/community/AptGet/Howto

为什么开发人员推荐前一个命令而不是后一个命令?由于它们针对不同的缓存位置,同时运行这两个命令有什么好处吗?

答案1

它们的作用不同。rm -rf /var/lib/apt/lists/*删除由 加载的软件包列表 apt update。删除由或apt clean加载的缓存软件包。两者都需要 root 权限 (sudo)。apt installapt upgrade

答案2

rm命令需要 sudo。因此,一个简单的拼写错误或Enter过早的点击都会对您的系统造成不可挽回的破坏。没有理由不将其用于sudo apt clean此目的。

相关内容