全部文章
工具·效率

命令行速查卡:把 CentOS 常用命令压成一页

背命令是最没性价比的 memorization。我按「出事时想干什么」来组织,做成一张纸上墙的速查卡。

我一度以为自己记不住命令是因为用得少。后来发现不是——是因为我记的顺序不对。

大部分速查表按字母表排,a 开头的排第一。但出事的时候,你脑子里想的是「端口被谁占了」,不是「i 开头的命令有哪些」。

按场景分组,不按字母表

重做的第一件事是把表拆成五个场景,每个场景只放 3~5 条:

① 文件在哪

find / -name "*.conf" 2>/dev/null    # 全盘找配置
du -sh /var/log/*                    # 看谁把盘吃满了

② 谁占了端口

ss -lntp          # 监听中的端口 + 进程
lsof -i :80       # 精确查某个端口

③ 进程还活着吗

ps aux | grep nginx
systemctl status nginx
journalctl -u nginx -n 50 --no-pager    # 最近 50 行日志

④ 磁盘和内存

df -h          # 分区使用率
free -h        # 内存

⑤ 权限和 SELinux

ls -lZ                                  # 连 SELinux 上下文一起看
chcon -t httpd_sys_content_t -R /var/www # 静态站放行

最后这条救过我两次。403 的时候先看权限,再看 SELinux,最后才怀疑 Nginx 配置——顺序错了会浪费一晚上。

三个反直觉的点

速查卡的价值不在于「不用背」,而在于出事时手不抖。

维护方式

纸打印出来贴在显示器边上,发现一条新的就手写补上。三个月后重新排版一次,把用不上的删掉——一张会删东西的表才活着。

电子版我存在自己博客的「工具·效率」里,方便手机上看。