在安装过程中的某个时刻,我肯定选择了几种语言作为默认语言。当我运行 时sudo apt-get update
,我得到了类似以下内容的输出。
Ign http://ppa.launchpad.net quantal/main Translation-en_NZ
Ign http://ppa.launchpad.net quantal/main Translation-en_GB
Ign http://ppa.launchpad.net quantal/main Translation-en_CA
Ign http://ppa.launchpad.net quantal/main Translation-en_AU
Ign http://ppa.launchpad.net quantal/main Translation-en
我想让 apt-get 只搜索en_AU
、en_GB
和en
。也就是说,我想删除en_NZ
和en_CA
。当我运行 时locale
,我确实得到了输出LANGUAGE=en_AU:en_NZ:en_GB:en_CA:en
。我修改了我的~/.profile
以更改
export LANGUAGE="en_AU:en_NZ:en_GB:en_CA:en"
到
export LANGUAGE="en_AU:en_GB:en"
然后重新启动。现在,locale 仅按预期显示三种语言,但当我运行 时sudo apt-get update
,我仍然看到en_CA
正在搜索。奇怪的是,我也得到了以下输出。
$ apt-config dump | grep Lang
Acquire::Languages "";
Acquire::Languages:: "en_AU";
Acquire::Languages:: "en";
Acquire::Languages:: "en_GB";
Acquire::Languages:: "none";
Acquire::Languages:: "en_CA";
因此,apt-get 似乎正在其他地方寻找该en_CA
条目。问题是我找不到它可能在哪里。我不太了解 的手册页apt-config
,但$APT_CONFIG
它是空的,/etc/apt/
不包含名为 的文件apt.conf
,我也没有得到任何递归搜索此目录的信息en_CA
。所以我的问题是……我怎样才能让 apt-get 忘记en_CA
?
答案1
您在更改语言环境时会在 /var/lib/apt/lists/ 中留下一些文件。Apt.conf 不再使用,但 Apt 会根据该文件列表(以及其他内容)构建配置数据库。如果您查看目录,将看到名称中带有“translation”和“en_CA”的文件。Ign 消息只是 Apt 告诉您这些文件不需要并且将被忽略。无害,但非常烦人。
您可以手动安全地删除孤立文件,但删除所有列表并重建它们要容易得多。
sudo rm /var/lib/apt/lists/* -vf && sudo apt-get update