-
需先确认内核启用CONFIG_FUNCTION_TRACER=y/m和CONFIG_DEBUG_FS=y,再挂载debugfs至/sys/kernel/debug,然后通过echofunction>current_tracer等操作启用函数追踪,或用function_graph获取调用图,还可通过set_ftrace_filter限定追踪范围。
-
SSH双因素认证需时间同步、PAM规则顺序、SSH配置三者协同生效;时间偏差超30秒致TOTP验证失败,PAM规则须置于/etc/pam.d/sshd顶部并正确指定路径与参数,sshd_config中必须启用ChallengeResponseAuthenticationyes和UsePAMyes,且~/.google_authenticator权限须为600、家目录为700。
-
awk默认以任意空白为分隔符且压缩连续空白,导致含空格字段错切;应显式指定-F分隔符、用substr处理固定宽度、结合NF/NR过滤不规则行、BEGIN初始化变量、合理设置OFS/ORS。
-
最轻量清空文件的方法是>file,它不启动新进程、保留inode和权限、直接截断为0字节;truncate-s0file语义明确且支持批量安全处理;其余方法或启进程、或改权限、或加载全文,均不推荐。
-
cat按命令行顺序拼接,非文件名序;通配符展开不可靠;大文件合并需预估空间并避免同分区写入;编码/二进制混用致乱码;去重过滤等逻辑不应依赖cat,应明确合并目的。
-
应修改~/.bashrc并在~/.bash_profile中添加[[-f~/.bashrc]]&&source~/.bashrc,以确保登录shell和非登录shell均生效;PATH应追加而非覆盖,系统级配置优先用/etc/profile.d/。
-
上线前必须禁止IP访问和空主机头,否则未备案域名解析到服务器IP可能导致被封IP;Nginx中default_server指定默认兜底server块,server_name_仅作占位拒绝非法Host头,二者常共用但不等价。
-
systemd下/etc/rc.local默认不生效,因rc-local服务被禁用;应创建systemd服务单元,确保脚本可执行、用绝对路径、正确配置Unit[Install],并用journalctl查日志排错。
-
crontab依赖后台服务crond运行,配置语法严格且环境变量受限,需确保crond启动、使用绝对路径、正确设置PATH/SHELL、避免日期与星期冲突,并启用cron日志便于调试。
-
md5sumfilename.txt输出“哈希值文件名”,文件名含空格等需加引号;提取纯哈希用cut-d''-f1;校验时路径须匹配,-c配合-w和--quiet更可靠;MD5仅适用于完整性校验,安全场景应换用sha256sum。
-
stress-ng需按硬件瓶颈层级精准配置参数:CPU测多核调度用--cpuN--cpu-ops与亲和性;内存测控制器需--vm与--numa绑定节点;IO测NVMe要--hdd-optsdirect,rand;--metrics-brief直读内核接口暴露TLB/NUMA等深层指标;崩溃复现须匹配故障窗口,如PCIe丢帧用--hdd循环监控dmesg。
-
最稳命令是ss-tnstateall|awk'{print$NF}'|sort|uniq-c|sort-nr,它比netstat更快更准且不依赖额外包,能完整统计所有TCP状态数,避免grep模糊匹配和字段偏移问题。
-
最直接确认当前Shell的方法是运行ps-p$$,它准确显示当前shell进程的可执行文件路径;echo$0次之,而$SHELL仅表示登录默认Shell,不可靠。
-
Linux日志文件主要存储在/var/log目录及其子目录中,包括系统日志(syslog/messages)、认证日志(auth.log/secure)、Web服务日志(access.log/error.log)、定时任务日志(cron.log)和内核日志(dmesg)等;掌握日志监控技巧可使用tail-f实时追踪日志、结合grep过滤关键信息、利用awk/sed解析日志内容,并通过logrotate管理日志生命周期;对于大规模系统,可部署rsyslog或syslog-ng实现远程日志集中管理;日志分析应
-
trap必须在脚本最外层定义,因默认仅对当前shell有效;SIGKILL和SIGSTOP不可捕获;trap内exit需确保不在子shell中,推荐用标志位+主循环检查或kill-TERM$$。