Linux下python执行Killed

简介: Linux下python执行Killed

当系统资源不足时,Linux 内核也可以决定终止一个或多个进程。 一个非常常见的例子是内存不足 (OOM) killer,会在系统的物理内存耗尽时触发。

  • 当内存不足时,内核会将相关信息记录到内核日志缓冲区中,该缓冲区可通过 /dev/kmsg 获得。
  • 有几个工具/脚本/命令 可以更轻松地从该虚拟设备读取数据,其中最常见的是 dmesg 和 journalctl。

查看Killed日志

任意目录下,不需要进入log目录

使用sudo dmesg | tail -7命令

  • oom-kill之后,就是解释那个被killed的程序的pid和uid
  • Out of memory: Killed process 1138439 (python3) total-vm:8117956kB, anon-rss:5649844kB,内存不够
  • total_vm:总共使用的虚拟内存 Virtual memory use (in 4 kB pages)
    8117956/1024(得到MB)/1024(得到GB)=7.741GB
  • rss:常驻内存使用Resident memory use (in 4 kB pages)
    5649844/1024/1024=5.388GB

其他查看方式

journalctl --list-boots |
awk '{ print $1 }' |
xargs -I{} journalctl --utc --no-pager -b {} -kqg 'killed process' -o verbose --output-fields=MESSAGE
  • 直接寻找错误
journalctl -xb | egrep -i 'killed process'
sudo dmesg | egrep -i -B100 'killed process'
# 其中-B100,表示 'killed process’之前的100行内容
# 重点关注其中最后两列:oom_score_adj和name
egrep -i 'killed process' /var/log/messages 
egrep -i -r 'killed process' /var/log

释放无用内存占用

# 查看系统内存情况
cat /proc/meminfo
# 查看当前空闲内存
free -m
free -g
  • 释放无用内存
# 查看某个用户的内存使用情况
# top -u username 
top -u hss 
# 使用q退出top界面
# 查看详细的command内容
top -u hss -c
# 查看特定PID或进程的资源消耗情况
top -p `pgrep -d "," node`  # 正解


相关文章
|
1月前
|
网络协议 Linux Python
Python网络编程基础(Socket编程)epoll在Linux下的使用
【4月更文挑战第12天】在上一节中,我们介绍了使用`select`模块来实现非阻塞IO的方法。然而,`select`模块在处理大量并发连接时可能会存在性能问题。在Linux系统中,`epoll`机制提供了更高效的IO多路复用方式,能够更好地处理大量并发连接。
|
13天前
|
Linux Python
在Linux下升级到Python3的两种方法
在Linux下升级到Python3的两种方法
32 0
|
20天前
|
Linux Python
Linux安装python3环境
Linux安装python3环境
|
1月前
|
Web App开发 Ubuntu Linux
Linux无图形界面环境使用Python+Selenium实践
【5月更文挑战第1天】Linux无图形界面环境使用Python+Selenium实践
89 2
|
1月前
|
Oracle Java 关系型数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
28 6
|
22天前
|
人工智能 Linux Python
Alibaba Cloud Linux 3.2104 LTS 64位 怎么安装python3.10.12和pip3.10
Alibaba Cloud Linux 3.2104 LTS 64位 怎么安装python3.10.12和pip3.10
60 0
|
1月前
|
缓存 Linux 编译器
Linux(CentOS7.5) 安装部署 Python3.6(超详细!包含 Yum 源配置!)
该指南介绍了在Linux系统中配置Yum源和安装Python3的步骤。首先,通过`yum install`和`wget`命令更新和备份Yum源,并从阿里云获取CentOS和EPEL的repo文件。接着,清理和更新Yum缓存。然后,下载Python3源代码包,推荐使用阿里云镜像加速。解压后,安装必要的依赖,如gcc。在配置和编译Python3时,可能需要解决缺少C编译器的问题。完成安装后,创建Python3和pip3的软链接,并更新环境变量。最后,验证Python3安装成功,并可选地升级pip和配置pip源以提高包下载速度。
|
1月前
|
Linux Python Windows
Python虚拟环境virtualenv安装保姆级教程(Windows和linux)
Python虚拟环境virtualenv安装保姆级教程(Windows和linux)
101 2
|
1月前
|
Linux Python
linux安装python3.11
linux安装python3.11
197 7
|
1月前
|
人工智能 Ubuntu 机器人
【ubuntu】 Linux(ubuntu)创建python的虚拟环境
【ubuntu】 Linux(ubuntu)创建python的虚拟环境