8

当我使用 apt-get 安装或升级我的 Ubuntu hardy 系统时,我经常收到这样的消息:

$ sudo apt-get install foo
Reading package lists... Done
Segmentation faulty tree... 50%

$ sudo apt-get install foo
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Segmentation fault

$ sudo apt-get install foo
Reading package lists... Done
Building dependency tree       
Reading state information... Done
terminate called after throwing an instance of 'std::logic_error'
  what():  basic_string::_S_construct NULL not valid
Aborted

cc  -Os -g -Wall -DLOCAL_ROOT=\"/usr/share/polipo/www/\" -DDISK_CACHE_ROOT=\"/var/cache/polipo/\"  -DCHUNK_SIZE=16384   -c -o http_parse.o http_parse.c
http_parse.c:1564: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
For Debian GNU/Linux specific bug reporting instructions,
see <URL:file:///usr/share/doc/gcc-4.2/README.Bugs>.
make: *** [http_parse.o] Error 1

它不会一直发生,因此如果您重试足够多,通常可以完成任务,但它确实会在很大一部分时间出现段错误。

知道发生了什么或如何解决它吗?

4

4 回答 4

7

如果标准工具间歇性地出现故障,尤其是像这样的内存错误,那么是时候怀疑硬件了。

运行 memtest(最好从 grub 菜单中),让它运行几个周期。

于 2009-03-11T13:54:38.177 回答
1

道格拉斯给出了正确的方向。运行 memtest 是最便宜的选择。

降低 CPU 时钟(如果可能)是另一种选择。如果您有多余的 RAM 模块,请尝试将它们换成您当前的。如果没有任何效果并且您仍然遇到同样的问题,请怀疑主板。

于 2009-03-11T13:57:54.703 回答
1

我遇到了类似的问题,结果证明是 CPU 风扇支架破裂了。它使温度飙升。

还要确保您的记忆测试通过。使用您的 ubuntu 安装盘,启动机器并选择内存测试。让它运行大约一个小时,如果有内存问题,它会显示在错误列表中。

于 2009-03-11T14:03:59.323 回答
1

与“常规”使用相比,软件安装对系统的负担可能会更大一些,这可能会导致固有问题从隐藏中爬出来。除了给出的建议之外,如果您开始测试/交换硬件组件,请从电源开始。

可能是 PSU 在负载下“下降”电压,这会对系统造成严重破坏。幸运的是,PSU:s 非常便宜,而且更换 PSU 比更换主板要容易得多。

于 2009-03-11T14:04:35.063 回答