更改“列表”和“档案”文件夹的位置

Mar*_*ter 8 apt

apt 使用两个位置来存储下载的包和其他文件:

/var/lib/apt/lists
/var/cache/apt/archives
Run Code Online (Sandbox Code Playgroud)

即使apt-get clean经常使用,这些文件夹也会变得非常大。

/var的在一个单独的分区上并且相对较小。是否可以配置 apt,以便将其文件存储在 ales 中(即在/home/apt/?

gar*_*Red 8

你有几个选择。

更改中的设置 /etc/apt/apt.conf

dir::state::lists    /path/to/new/directory;
dir::cache::archives /path/to/new/directory;
Run Code Online (Sandbox Code Playgroud)

在当前目录挂载一个更大的分区(如果你有一个分区的空闲空间):

 # mount /dev/sda5 /var/lib/apt
 # mount /dev/sda6 /var/cache/apt
Run Code Online (Sandbox Code Playgroud)

当然,要使上述工作正常运行,您需要先创建分区和文件系统。

符号链接到另一个位置(如果新分区没有空间,但当前分区中有空间):

# ln -s /home/apt/lib /var/apt/lib
# ln -s /home/apt/cache /var/apt/cache
Run Code Online (Sandbox Code Playgroud)

或如上,但使用绑定安装:

# mount --bind /home/apt/lib /var/apt/lib
# mount --bind /home/apt/cache /var/apt/cache
Run Code Online (Sandbox Code Playgroud)


cha*_*aos 6

您需要在apt以下两个配置项中:

Dir::Cache "/home/user/apt/cache";
Dir::State::Lists "/home/user/apt/lists";
Run Code Online (Sandbox Code Playgroud)

将它们写入/etc/apt/apt.conf.d/99custom.

现在您必须修改该文件夹结构,否则apt将失败:

mkdir -p /home/user/apt/cache
mkdir -p /home/user/apt/lists/partial
Run Code Online (Sandbox Code Playgroud)

现在,运行apt-get update以在这些新目录中创建所需的文件。