4

有史以来第一次,我在 Ubuntu 中运行标准 Linux 命令时遇到问题。例如,当我尝试使用 VI(例如vi /path/to/file)编辑文件时,我得到一个分段错误错误。类似的命令curl -I http://some.domain.com,等等。在 curl 的情况下,我使用 gdb 读取核心转储并得到以下内容:

提示>> gdb -c core-curl-11-0-0-4954-1351282891
GNU gdb (GDB) 红帽企业 Linux (7.2-50.el6)
版权所有 (C) 2010 Free Software Foundation, Inc.
许可 GPLv3+:GNU GPL 版本 3 或更高版本
这是免费软件:您可以自由更改和重新分发它。
在法律允许的范围内,不提供任何保证。输入“显示复制”
和“显示保修”了解详情。
这个 GDB 被配置为“x86_64-redhat-linux-gnu”。
有关错误报告说明,请参阅:
.
[新线程4954]
核心是由`/usr/bin/curl http://alfred.conviocloud.com' 生成的。
程序以信号 11 终止,分段错误。
#0 0x00007feedbb74721 在?? ()

我最近在我的电脑中放入了 4GB 内存,我想知道这是否是问题所在。也就是说,我 100% 确定我使用了正确的型号,并且我的计算机可以支持升级。

非常感谢调试和解决此问题的任何帮助。谢谢!

4

4 回答 4

2

很可能是硬件——尝试 bitwizard——Sig11 问题。

于 2012-10-26T23:15:53.327 回答
1

几件事要尝试:

*) 检查您是否进行了重大升级。如果你这样做了,那可能是导致它的原因。
*) 删除并重新安装 vim 或任何其他简单的实用程序。看看他们是否失败。如果它们失败,请使用 ldd 查看它们链接到的内容。查看是否有任何库具有最近的时间戳。
*) 查看 gdb 中的错误堆栈。它会告诉您它在哪里进行了核心转储以及在哪个库中。
*) 从 cd 重新启动并查看 vi 或任何实用程序是否失败。

于 2012-10-27T00:06:09.763 回答
0

一种可能是您在 shell 中设置的某些环境变量严重影响了您尝试运行的程序。如果您可以通过标准 Linux 命令(例如 vi)可靠地生成核心转储,那么请尝试在未定义任何内容的 shell 中运行该命令。要创建一个定义了最少变量集的 shell,请照常打开终端,然后输入:

env -i bash --norc
于 2012-10-26T23:57:03.400 回答
-2

我有sudo apt-get install vim,然后你的问题发生了reboot

sudo apt-get autoremove vim。就在这之后,vi file变成了正常的增益。(但是之前存在的一些问题apt-get install vim又出现了)

所以,再做sudo apt-get install vim一次reboot。那就没有了Segmentation fault

于 2013-10-04T05:01:59.710 回答