Linux查漏补缺-3-特殊设备文件[loop,null,zero,full,random,tcp..]📅 2020年12月05日 · ☕ 6 分钟核心结论 说明 /dev/null 是黑洞,/dev/zero 是零流 前者读到 EOF,后者读出无限 \0 /dev/full 专门用于模拟磁盘写满 写入永远返回 ENOSPC 现代 Linux 中 /dev/random 和 /dev/urandom 差异已经很小 随
Linux查漏补缺-2-特殊权限[s·t]📅 2020年12月03日 · ☕ 9 分钟核心结论 细节 SUID 改变进程有效用户 普通用户执行带 SUID 的二进制程序时,进程临时获得该程序属主权限,典型例子是 /usr/bin/passwd SGID 对文件和目录含义不同 用在可执行文件上
Linux查漏补缺-1-链接📅 2020年12月01日 · ☕ 6 分钟核心结论 细节 目录软链接删除区分带 / 与不带 / rm <软链接>/ 触发目标目录的删除逻辑,rm <软链接> 只删除软链接文件本身 硬
Docker 易错集锦 — ENTRYPOINT 中环境变量无法替换📅 2020年11月15日 · ☕ 1 分钟重要 ENTRYPOINT ["java", "$JAVA_OPTS", "-jar", "/app.jar"] 中 $JAVA_OPTS 不会被替换。exec 格式不经过 shell,不支持变量展开。 1. 问题 不管 ENV JAVA_OPTS="-Xmx512m" 还是 docker run -e JAVA_OPTS="-Xmx
Go-设计模式📅 2020年10月01日 · ☕ 3 分钟重要 Go 没有继承和重载——设计模式的实现方式与其他语言不同。Go 靠接口 + 组合 + 闭包 + 并发原语实现模式,而非继承树。 最常用的三个:Functio
Go Struct Tag 深入理解 — Tag 规则说明📅 2020年09月01日 · ☕ 1 分钟重要 Go 的 Struct Tag 是通过 reflect.StructTag.Get(key) 读取的 key:"value" 字符串。json 序列化、gorm ORM 映射、yaml 解析等底层都依赖 Tag。 1. Tag 书写规则 Tag 是一串以空格分隔的 key:"value" 对: 规
故障排查--ExternalDNS只开放UDP53不开放TCP53导致网络超时📅 2020年08月20日 · ☕ 2 分钟重要 DNS 协议在响应包超过 512 字节时,会自动切换到 TCP 传输。如果 DNS Server 只开放 UDP 53 端口,部分解析请求会被截断,客户端重试 TCP 超时后才会 fallback。 环
PostgreSQL 使用 PostGIS 插件涉及权限问题📅 2020年08月15日 · ☕ 1 分钟重要 PostgreSQL 启用 PostGIS 插件需要 superuser 权限。普通用户即使拥有数据库的所有权限,也无法执行 CREATE EXTENSION postgis。 1.简介 PostgreSQL 已安装 PostGIS 插件后,创建新库并赋权给普通用
shell基础-Here Document与EOF用法📅 2020年08月10日 · ☕ 3 分钟核心结论 说明 EOF 不是固定关键字 它只是 here document 的结束标记,可以换成任意字符串 <<EOF 会把多行文本作为标准输入 常与 cat、ssh、mysql、tee 配合使用
Postman Test 脚本解析 JWT 验证 Claim📅 2020年08月05日 · ☕ 1 分钟重要 Postman 的 Tests 模块可以解析 JWT Token,在 Console 中查看 payload 内容,并将 claim 值设为环境变量供后续请求使用。 1.简介 测试 OAuth2 / OpenID Connect 接口时,需要验证返回的 JWT 中是否
Git 中文名乱码导致 cloc 统计代码量出错📅 2020年08月01日 · ☕ 2 分钟重要 core.quotepath 默认值为 true,Git 会将路径中的非 ASCII 字符转义为八进制编码(\346\265\213...)。 cloc 通过 git diff 获取文件列表时,收到的是转义
Kubernetes 使用 Sidecar 配置 Filebeat 收集容器日志📅 2020年07月12日 · ☕ 1 分钟重要 K8s 中收集容器日志有两种模式: 模式 原理 优缺点 DaemonSet 每个 Node 部署一个日志采集 Pod,读 /var/log/containers 运维简单,但不支持自定义日志路径 Sidecar 在业务 Pod 内嵌入日志采集容