当我在命令行中运行python
(没有任何参数)时,会发生分段错误。
错误是:
$ python
[1] 11094 segmentation fault python2.7
Linux内核陷阱:
$ dmesg
traps: python2[10923] general protection ip:4db605 sp:7fffe4b29e70 error:0 in python2.7[400000+2ba000
$gdb python
Program received signal SIGSEGV, Segmentation fault.
0x00000000004db605 in PyDict_SetItemString ()
(gdb) backtrace
#0 0x00000000004db605 in PyDict_SetItemString ()
#1 0x000000000044719b in _PyExc_Init ()
#2 0x000000000046928e in Py_InitializeEx ()
#3 0x0000000000469db3 in Py_Main ()
#4 0x00007ffff7816de5 in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6
#5 0x00000000005735fe in _start ()
objdump -d /usr/bin/python2.7 | less
4db5f7: 0f 84 a6 02 00 00 je 4db8a3 <PyDict_SetItemString+0x323>
4db5fd: 4d 8b 48 08 mov 0x8(%r8),%r9
4db601: 41 83 00 01 addl $0x1,(%r8)
4db605: 4d 8b 11 mov (%r9),%r10
4db608: 4d 89 cc mov %r9,%r12
4db60b: 4d 85 d2 test %r10,%r10
4db60e: 4d 89 50 08 mov %r10,0x8(%r8)
我的机器规格是:
我试图在我的机器上安装新的kubuntu 14.04(作为另一种解决方案,将分发升级到薄荷17)但不幸的是,分发已经崩溃。
有人可以说,为什么会发生错误?我该如何解决?
我想知道是否有人帮我解决问题。 (我知道什么是segsegv,但我不知道 知道为什么在全新安装linux时会出现这个错误)
Google-Chrome,Java和其他程序存在同样的问题。
由于
答案 0 :(得分:1)
这不是为什么你的python当前崩溃的解释 - 除非你的系统上有一些你没有提到过的奇怪配置,它似乎是一个python bug - 但这里有一个可能的修复:< / p>
我只能猜到安装python时出现了问题。一个理想的解决方案是卸载并重新安装,但这很痛苦,因为有大量系统关键程序将python作为依赖项。因此,您可以按the instructions here查找删除的所有内容并重新安装。这是我的建议:
sudo apt-get purge python2.7
您将获得一长串要删除的软件包,这没关系。让他们删除。
sudo apt-get install python2.7
重新安装python。现在,重新安装旧的已删除软件包:
grep Remove /var/log/apt/history.log | tail -n1 | cut -d: -f2- | sed "s/(.*)//g" | sed "s/:your_processor//g"
这是您最近删除的软件包的列表,您现在可以将其提供给apt-get
以重新安装。 :your_processor
是apt列出的体系结构,对我来说,:amd64
是
请注意这是一个相当危险的操作。
另外,看到你的评论 - 看来你的内存不好。这是一个硬件问题。重新安装可能会解决它,但问题将重新出现 - 更换违规的棒。如果这是一台新机器,它可能会由您的保修承保。假设您自己制造机器,还要检查插槽中是否有灰尘等。 Here's a Super User post that explains why a memtest failure is a big deal