You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从Kubernetes Pod导出Postgres数据库报错:bash未找到

解决K8s Pod导出Postgres数据库时bash找不到的问题

你的错误是因为目标容器里没有安装bash,很多轻量镜像(比如基于Alpine、BusyBox的镜像)只会默认提供sh而非bash。可以按以下方式解决:

方案1:替换bash为sh

直接把命令里的bash换成sh即可:

kubectl exec auth-module -- sh -c "pg_dump -U pg-user database-name" > auth_database.sql

方案2:直接执行pg_dump(无需shell包裹)

如果不需要复杂的shell语法,也可以跳过shell直接调用pg_dump,避免依赖bash/sh的问题:

kubectl exec auth-module -- pg_dump -U pg-user database-name > auth_database.sql

方案3:指定pg_dump的绝对路径(如果pg_dump不在PATH中)

如果执行时提示pg_dump: command not found,先通过以下命令获取pg_dump的绝对路径:

kubectl exec auth-module -- which pg_dump

假设返回/usr/bin/pg_dump,使用绝对路径执行:

kubectl exec auth-module -- /usr/bin/pg_dump -U pg-user database-name > auth_database.sql

内容的提问来源于stack exchange,提问作者poisoned_monkey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 01:25:53