Linux 与日志排查基础

共 18 题
#

1. 测试工程师常用的 Linux 基础命令有哪些,cd/ls/cp/mv/rm/tail/head 在测试环境操作与日志查看中的用法?

A rm -rf 是安全操作,可随意执行
B tail -f 用于实时跟踪日志文件尾部新增内容 ✓ 正确答案
C cp 只能复制文件,不能复制目录
D head 默认显示文件最后 10 行
#

2. 如何实时跟踪与检索应用日志,tail -f、grep、awk、sed 组合如何快速定位异常发生点?

A awk 只能用于统计数字,不能提取字段
B grep -A/-B 可以显示匹配行前后的上下文 ✓ 正确答案
C tail -f 只能看一次,不能实时
D grep 无法配合正则使用
#

3. 进程管理命令,ps、top、kill 如何查看应用进程状态、CPU/内存占用并结束异常进程?

A kill -9 是正常退出方式,应优先使用
B ps aux 可查看所有进程的 PID、CPU 与内存占用 ✓ 正确答案
C top 只能查看一次,无法实时刷新
D ps 只能查看当前用户进程
#

4. 端口与网络排查,netstat/ss、curl、ping、telnet 如何判断服务监听、连通性与接口返回?

A ping 用于测试 TCP 端口是否开放
B ss -tlnp 可查看监听端口及对应进程,判断服务是否启动 ✓ 正确答案
C telnet 无法验证端口连通性
D curl 只能测试 GET 请求
#

5. 从日志还原问题时间线的完整流程,时间戳对齐、多服务日志关联、异常前后上下文如何分析?

A 多服务日志只需按时间戳就能完全对齐,无需 traceId
B 各服务时钟不一致不影响时间线分析
C 异常不需要看上下文,只看异常行即可
D 用 traceId 关联同一请求的多服务日志,结合时间戳对齐与异常前后上下文分析根因 ✓ 正确答案
#

6. 磁盘与内存排查,df、du、free 如何定位磁盘写满、内存不足导致的测试环境故障?

A df 只能看内存,无法看磁盘
B free 用于查看磁盘空间
C 磁盘写满不会影响应用写日志
D df -h 查看各文件系统磁盘使用,du -sh 定位大目录,free -h 查看内存使用 ✓ 正确答案
#

7. 文件权限与用户管理,chmod/chown/sudo 的权限模型,测试中遇到 Permission denied 如何排查?

A 遇到 Permission denied 先 ls -l 查看属主与权限,再据情况用 sudo、chown 或调整权限解决 ✓ 正确答案
B 任何用户都能通过 sudo 执行任意命令
C chmod 只能修改属主,不能修改属组权限
D 文件有 x 权限就一定可以读写
#

8. 日志统计分析组合命令,grep+awk+sort+uniq 如何统计错误码分布、接口耗时与异常频率?

A uniq 无需 sort 就能正确去重计数
B grep | awk | sort | uniq -c | sort -rn 可实现对状态码、耗时或异常频率的统计 ✓ 正确答案
C awk 无法提取日志中的指定字段
D sort -rn 表示按字母正序排序
#

9. 后台任务与定时任务,nohup、&、crontab 如何管理测试环境的常驻进程与定时脚本?

A nohup 命令 & 可在终端关闭后继续运行,crontab 用于定时执行任务 ✓ 正确答案
B nohup 只能运行前台任务
C crontab -l 用于编辑定时任务
D 后台进程可以随意丢弃,无需管理
#

10. 容器环境下的排查,docker logs、docker exec、kubectl logs/describe 如何查看容器日志与状态?

A docker no 无法查看容器是否运行
B docker logs 只能查看一次,无法实时跟踪
C kubectl exec 用于查看日志
D kubectl describe pod 可查看 Pod 的事件与启动/错误原因,kubectl logs 查看容器日志 ✓ 正确答案
#

11. 数据库命令行排查,mysql/psql 连接、查询与执行计划查看如何辅助定位数据问题?

A 锁问题与数据排查无关
B EXPLAIN 用于修改数据,不能查看执行计划
C 数据库查询无法验证接口返回的数据
D 用 mysql/psql 连接数据库查询验证数据,用 EXPLAIN 查看执行计划定位慢 SQL ✓ 正确答案
#

12. 系统负载与资源瓶颈初判,load average、CPU 使用率、IO wait 与内存压力的关系,如何用 top、vmstat 快速判断方向?

A load average 只反映 CPU 使用率
B load 高且 wa 高提示 IO 瓶颈,si/so 高提示内存不足触发 swap ✓ 正确答案
C vmstat 的 wa 列表示网络带宽
D IO wait 高与磁盘无关
#

13. 日志轮转与保留策略,logrotate 切割时机与保留周期对排查的影响,日志被截断时如何避免漏查?

A 日志轮转不会影响时间线排查
B 轮转后日志可能被拆分或被删除,需用 tail -F 跟随并跨文件搜索,必要时集中归档避免漏查 ✓ 正确答案
C 保留周期越长越好,与磁盘无关
D 轮转后日志文件不会变化,无需跟踪
#

14. 压缩与文件传输,tar、zip、scp、rsync 如何打包传输日志与测试产物?

A rsync 是本地压缩命令
B scp 只能传输文件,不能传输目录
C tar 打包压缩、scp 复制到远程、rsync 支持增量同步与大文件传输 ✓ 正确答案
D tar 只能解压不能打包
#

15. 查找大文件与清理,find、du -sh 如何定位占用磁盘的大文件并安全清理?

A du -sh 定位大目录,find -size 查找大文件,删除前先确认用途并注意进程占用 ✓ 正确答案
B find 无法按大小查找文件
C 删除运行中进程的日志文件不会影响其写入
D 大文件清理无需确认用途
#

16. 环境变量与配置,env、export、source、配置文件加载顺序对测试环境的影响?

A export 只对当前命令生效,不传给子进程
B env 查看变量、export 导出、source 使配置在当前会话生效,加载顺序决定最终值 ✓ 正确答案
C source 会开启新的子 shell
D 配置文件加载顺序不影响环境变量
#

17. Linux 与 Windows 环境差异对测试的影响,路径、换行符、权限与命令兼容性如何规避?

A 脚本硬编码路径分隔符在任何平台都能运行
B Linux 与 Windows 的路径与换行符完全一致
C 路径分隔符、换行符、权限模型与命令均存在差异,需用相对路径、统一换行与容器环境规避 ✓ 正确答案
D 换行符差异不影响脚本执行
#

18. 结构化日志与 jq 分析,JSON 日志的字段提取与聚合相比纯文本 grep 的优势,落地要点有哪些?

A JSON 日志用 jq 可精确提取字段并做聚合,落地需统一字段 schema 并保证关键字段存在 ✓ 正确答案
B jq 只能处理纯文本,无法处理 JSON
C 结构化日志相比 grep 没有优势
D 结构化日志无需规范字段,随意输出即可