查找问题与解决方法
后端容器未启动,Nginx 报 host not found in upstream
Docker 中一个可选后端没有启动,Nginx 因 host not found in upstream 无法加载配置。适用于开源版 Nginx 1.27.3 及以上版本,通过 resolve、zone 和 resolver 配置运行时解析,并核对网络、请求路径和回退条件。
HAProxy 健康检查返回 400:HTTP/1.1 请求需要正确的 Host
HAProxy 健康检查 HTTP/1.1 返回 400,比较检查端口、方法、路径和 Host;使用明确发送规则,保留真实就绪判定。
tar 写了 --exclude 仍报 file changed as we read it:排除选项放在了输入后面
归档输出放在输入目录内,排除选项又放在输入参数后,GNU tar 会读到正在变化的归档目录。调整选项顺序与输出位置,并区分真实业务写入。
du -h 的结果用 sort -n 排序,52K 却排在 2G 后面
du -h 输出 K/M/G 后接 sort -n 排序错位,按 GNU human 排序或固定字节单位处理,保留统计范围、精度及读取错误。
scratch 镜像设置 USER nobody 后无法启动:镜像里没有用户记录
scratch镜像没有默认账号记录,USER只选择身份。检查数字UID/GID、最小passwd/group映射与目录权限。
Bash 路径变量含 ~/ 时,ls 报 No such file or directory
双引号里的波浪号保持字面值,变量展开不会重新解释路径语法。用 HOME 构造主目录路径,并保留参数引用和运行身份边界。
React StrictMode 下,useEffect 为什么先 setup、cleanup,再 setup
StrictMode 开发检查会重跑 Effect。按每轮资源配对清理,区分重渲染、重复请求及服务端写入,不用 ref 跳过第二次 setup。
Redis 单个 HGETALL 正常,遍历 scan_iter 却报 WRONGTYPE:检查混合类型
redis-py 单个 Hash 能读,遍历 scan_iter 却报 WRONGTYPE,按实际数据类型过滤,区分 bytes 键误转 str 与不存在的键,保留并发和重复处理边界。
HAProxy 同一主机不同端口只一个 UP:检查 DNS 地址去重
HAProxy 动态 DNS 返回一个地址,同主机不同端口却只一个 server 可用。确认确实需要共享地址后使用 allow-dup-ip,并核对业务流量。
docker export/import 后启动报 No command specified
docker export/import 后启动报 No command specified,通常需要核对镜像启动元数据。区分镜像归档与根文件系统归档,恢复 CMD、ENTRYPOINT 及部署配置。
Pod 提示 must specify limits.memory:主容器有配置,也要检查 initContainer
主容器已有内存limit,Pod仍被配额拒绝时,核对实际模板中的initContainer和辅助容器,按命名空间策略补齐资源声明。
xargs -I 后 du 找不到已有文件:文件名前面的空格被丢掉
带前导空格的文件经 xargs -I 后报 No such file or directory 时,检查名称是否在输入解析阶段被改写,再用 NUL 分隔和 GNU du 单次统计保留路径及总计。
Git 解决冲突后按文件提交,报 cannot do a partial commit during a merge
Git 合并尚未完成时不能按路径做部分提交。先核对暂存区和未解决冲突,再用不带路径的 git commit 完成合并,避免把额外修改一并提交。
Bash 总是执行已删除的旧路径:清除当前 shell 命令缓存
工具迁移后 Bash 仍执行已删除的旧路径时,检查同一 shell 的 hash 记录和 PATH,定点或整体清除缓存,再排除别名、函数及加载器错误。
Cloudflare 525 与 526:按域名、握手和证书分开排查
从网友误访旧子域名的 525 案例出发,区分握手失败与证书验证失败,保留 SNI、证书链、签发日志及配置恢复的检查路径。
MongoDB 报 Transaction numbers are only allowed:先确认事务拓扑
MongoDB standalone 不支持多文档事务。先核对服务拓扑与实际配置,再受控迁移到当前支持的复制集,保留数据路径、客户端认证、成员认证与 TLS。
Linux chown 改了符号链接目标,链接所有者仍未变化
GNU chown 非递归操作默认修改符号链接目标。用 stat 分别确认两者属性,使用 chown -h 修改链接,并单独处理此前误改目标的恢复。


