Oce*_*ean 7 python linux crash segmentation-fault linux-mint
当我python在命令行中运行(没有任何参数)时,会发生分段错误.
错误是:
$ python
[1] 11094 segmentation fault python2.7
Run Code Online (Sandbox Code Playgroud)
并且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 ()
Run Code Online (Sandbox Code Playgroud)
选定部分 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)
Run Code Online (Sandbox Code Playgroud)
我的机器规格是:
我试图在我的机器上安装新的kubuntu 14.04(作为另一种解决方案,将分发升级到薄荷17)但不幸的是,分发已经崩溃.
有人可以说,为什么会发生错误?我该如何解决?
我想知道是否有人帮助我解决问题.(我知道什么是segsegv,但我不知道为什么在新安装的linux中会出现这个错误)
Google-Chrome,Java和其他程序存在同样的问题.
谢谢
This is not an explanation as to why your python is currently crashing -- unless you have some strange configuration on your system that you haven't mentioned, it appears to be a python bug -- but here's a possible fix:
我只能猜测当你安装 python 时有些东西被损坏了。理想的解决方案是卸载并重新安装,但这很痛苦,因为有大量系统关键程序都依赖 python。因此,您可以按照此处的说明找到您删除的所有内容并重新安装。这是我的建议:
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.
请注意,这是一个相当危险的操作。
另外,看到你的评论——看来你的内存不好。这是硬件问题。重新安装可能会修复它,但问题会再次出现 - 更换有问题的棒。如果这是一台新机器,它可能在保修范围内。假设您自己组装了机器,还要检查插槽中是否有灰尘等。这是一篇超级用户帖子,解释了为什么内存测试失败是一个大问题。