BOSh
文章227
标签320
分类74
315晚会 36氪 80后 ADB AI AI Agent AI 代理 AI 助手 AI 网关 AI 评测 AI助手 AI大模型 AI安全 AI应用 AI智能体 AI网关 API API 集成 Agent AionUi Android Automation C++ CLI CLI Proxy API CLIProxyAPI CRM Chrome 插件 Claude Opus 4.6 ConnectBot Debian DeepSeek DenchClaw DevOps Docker GEO GPL GPS GPU Gemini Gemini 3.1 Pro GitHub Gmail Gog Google AI Pro Google API Google Gemini HKUDS Hermes Hermes Agent Hexo Hugo IPV6 Jetpack Compose Kimi-K2.5 Kotlin LINUX LaTeX Linux Markdow Markdown MemU Bot MiniMax NAT64 NIX NODE NVIDIA Build NanoClaw Netcatty Newsletter Open WebUI OpenAI OpenAI 兼容接口 OpenCLI OpenClaw PDF 编译 PicoClaw Prismer QClaw QQ机器人 RAG Reddit Rust SFTP SSH Skills Subagent SuperCall Telegram Bot WebSSH Windows WorkBuddy X X热榜 YouTube ZeroClaw arXiv arch c++ git hugo iMessage n8n nanobot node js ntfs pacman podman zz.ac 东海 两性关系 个人助理 中东 中东冲突 中东局势 中关村论坛 中南大学 中国 中美 习惯养成 云同步 亚洲 代理 以色列 任务管理 伊朗 伊朗危机 伊朗战争 伦理 体育 保护主义 信息流 信息管理 停火 健康管理 光通信 免费试用 共和党 养老金 内容工厂 内容生产 内容筛选 军事冲突 军事动态 军民融合 农村 分享 创业 办公自动化 加密 加密货币 加沙 北斗 医学生 半导体 华为 博客 博客助手 博客部署成功 卫星 原生 JS 反重力 台海局势 台湾 命令 喷嚏网 国产 国产化 国产替代 国际 国际关系 国际局势 国际新闻 图卦 图说 地缘政治 基础设施 多代理 多模态AI 大学分析 大模型 孙少平 学习 安全 实时监控 家庭助理 家庭服务器 家装设计 工作总结 工作效率 工作流编排 工具链 平凡的世界 平台责任 开发 开发实录 开源 开源项目 张雪峰 微信 心理健康 情感 战争 投资工具 指标看板 提示词工程 播客 收件箱清理 效率 效率工具 教程 教育制度 数据分析 数据投毒 文献管理 新能源汽车 新闻汇总 日历聚合 时事 时事总结 显卡 晨报 智能体 智能体生态 朝鲜 架构 架构实践 核协议 核武器 桌面Cowork 模型接入 每日图说 比亚迪 油价 活动运营 浏览器自动化 消息通道 消费者权益 渔船 游戏开发 湘雅医院 热点新闻 版本更新 特朗普 生态系统 生活 生活自动化 生物识别 用例 甲骨文云 电池技术 症状追踪 皮皮虾 监管 目标管理 知识库 社交媒体 社会保障 社会百态 社会观察 科技 科研助手 笔记 第一财经 算法推荐 纽森 经济 经济观察 经验分享 编程 网关 网络 网络安全 美伊关系 美伊冲突 美国 美国大选 美国政治 能源安全 能源市场 腾讯 腾讯,龙虾,OpenClaw 腾讯云 自动化 自动化创作 自动化协作 自动化提醒 自动化流水线 自动化运维 自律教练 自由软件 行为改变 视频摘要 记录 许可证 论文写作 论文阅读 语义搜索 语音代理 读书 读书笔记 读后感 财报季 路遥 迁移 运维 远程运维 邀请确认 部署指南 量子计算 销售自动化 阅读感悟 随笔 霍尔木兹海峡 项目管理 飞书 高中生活 高考志愿 黎巴嫩 龙虾

一言

文章归档

zz.ac遇到进程超限导致podman奔溃

zz.ac遇到进程超限导致podman奔溃

今天想在zz.ac主机上安装docker版本的vscode玩,结果在运行完安装命令后,运行podman ps 却出现了进程超限的错误,无法运行 podman

安装vscode

1
2
3
4
5
6
7
8
9
podman run -d --name code-server \
-p 9080:9080 \
-e BIND_ADDR=0.0.0.0:9080 \
-e PASSWORD=xxxxxx \
--network slirp4netns \
--userns=keep-id \
-v "$PWD/project:/home/coder/project:Z" \
--restart always \
docker.io/codercom/code-server:latest

运行podman或者podman ps都出现以下报错:

1
2
3
4
5
6
7
8
bosh@h1:~$ podman
runtime/cgo: pthread_create failed: Resource temporarily unavailable
SIGABRT: abort
PC=0xf8ee03627608 m=0 sigcode=18446744073709551610

goroutine 0 gp=0x2cca7c0 m=0 mp=0x2ccde40 [idle]:
runtime: g 0 gp=0x2cca7c0: unknown pc 0xf8ee03627608
……

经查询AI:

这个报错(pthread_create failed: Resource temporarily unavailable)意味着你的系统已经“拒绝提供任何新线程”了。

即使你执行简单的 podman ps,它也需要创建一个新线程来运行,但系统告诉它:“对不起,名额满了。”

为什么会出现?

这通常不是 Podman 的 Bug,而是环境限制(ulimit)或僵尸进程堆积导致的。

想起涛叔说每个用户限制99个进程,通过查询得知用户进程限制确实为:99

1
2
bosh@h1:~$ ulimit -u
99

目前我这台主机上运行的服务:哪吒探针,canddy和alist服务都正常。但是却不能通过podman进行管理。

这次解决办法:

  • 杀掉所有相关进程(这不会丢失容器数据):
1
2
3
pkill -u $(whoami) -9 podman
pkill -u $(whoami) -9 conmon
pkill -u $(whoami) -9 catatonit
  • 执行强制迁移重置:
1
podman system migrate

这个命令的作用是重新建立 Podman 的运行环境和挂载点,它绝对不会删除你的镜像和容器

运行 podman ps -a ,发现容器都在运行:

1
2
3
4
938c57648389  docker.io/codercom/code-server:latest                        32 minutes ago  Up 32 minutes  0.0.0.0:9080->9080/tcp, 8080/tcp    code-server
0572b476f3ad docker.io/alist666/alist:latest /entrypoint.sh 15 minutes ago Up 15 minutes 0.0.0.0:5244->5244/tcp, 5245/tcp alist
f5937c3affc1 docker.io/library/caddy:alpine caddy run --confi... 15 minutes ago Up 15 minutes 80/tcp, 443/tcp, 2019/tcp, 443/udp my-caddy

查看自己的进程数目:

1
2
bosh@h1:~$ ps -u $(whoami) -L | wc -l
60

显示目前有60个进程,系统限制99个进程,为什么会产生这样的问题呢?

为什么 60/99 就会报错?

因为 Podman 或 Go 语言程序在启动瞬间会产生大量的突发线程,这个数值会瞬间飙升超过 99,然后立即回落。内核发现超过 99 后会直接拒绝 pthread_create 请求,于是你就看到了 Resource temporarily unavailable


彻底解决这个“天花板”问题

请按顺序执行以下命令,将这个限制从 99 提到无限(或一个很大的值):

好吧!看来这个主机也就这样玩玩了。

在这次之前也出现了一次进程饱满导致的podman奔溃,上次通过关闭所有进程,删除所有容器,重建容器好的,还好这个主机上就是个探针、caddy、alist 且配置文件都在,恢复也不是特别麻烦。

😈 😈 😄😄

本文作者:BOSh
本文链接:http://bosh.zz.ac/posts/1134321031.html
版权声明:本文由BoSh发布,部分内容来源于网络。