安装toolchain-test-ppa后,12.04会将自身报告为量子?

我今天升级到12.04(64位),到目前为止一切都那么好,一切都很好,直到我尝试做一些更高级的东西。

当我尝试添加工具链测试ppa时 ,我的分发不匹配。 经过一次尝试或4次更改并将我链接到此错误报告 。 到目前为止这么好,一个奇怪的错误,但我不是唯一一个,它会得到修复吗?

但我发现这是一个非常奇怪的错误,我也注意到其他一些(自定义)应用程序在我的发行版本上表现得很奇怪。 所以我试着找出我正在运行的版本,这些是我得到的结果:

>:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu quantal (development branch) Release: 12.10 Codename: quantal >:~$ cat /etc/issue Ubuntu quantal (development branch) \n \l 

现在我想知道:我在安装时做错了什么吗? 我偶然下载了一些奇怪的夜晚,设置了错误的存储库,……? 或者这只是系统某些小部分的错误,报告错误,可能会混淆一两个应用程序?

现在,无论什么原因:是否有一种简单的方法可以将此版本信息再次设置为正确的版本?

我有同样的问题。 在我的情况下,这是因为我启用了ppa:ubuntu-toolchain -r / test ,尽管只有precise列为系列,但是那里的base-files包似乎属于quantal 。 要找出安装了行为不当的base-files包的位置,请使用以下命令:

 $ apt-cache policy base-files 

找到版本与安装版本匹配的行,并检查为该版本报告的URL。

如果你想保持PPA(例如,因为你想/必须使用gcc-4.7编译器),你可以使用apt-pinning强制系统保留base-files包,同时允许你安装gcc-4.7。 使用以下内容创建文件/etc/apt/preferences.d/base-files (确保不使用名称中的任何点):

 Package: base-files Pin: release o=Ubuntu Pin-Priority: 1001 

这将强制在下次升级时将base-files包降级为其默认版本(来自主ubuntu存储库)。

对打字错误要特别小心,特别是空格和大小写。

文件到位后,使用apt-cache policy base-files来确定Candidate版本。 它应该对应于默认Ubuntu存档旁边列出的版本。 最后,开始降级:

 $ sudo apt-get upgrade 

当被问到你是否真的想要DOWNGRADE(大写不是我的……)时,请回答y + Enter

据我所知,一旦软件包升级,它就不能降级,除了像REMOVE PACKAGE-> CHANGE REPO-> UPDATE APT – > REINSTALL OLD PACKAGE这样的程序。 这是一个非常奇怪的过程,因为有时存在一些依赖性和版本问题。

无论如何,转到/etc/apt/sources.list/etc/apt/sources.list.d/*.list并查看是否有一些行包含单词“quantal”。

如果有,那就是问题所在。 我建议您备份所有内容并重新安装一个干净稳定的版本。 另一种解决方案是改变“精确”中的所有“量子”字,重新更新repos,并希望所有量子包都将被更新的精确版本替换。 但这是一个非常糟糕的解决方案!