恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

Linux命令基础与高效运维实战指南

  • 首页
  • 资讯中心
  • /
  • Linux命令基础与高效运维实战指南

相关资讯

服务器安全基线核查实战:Linux与Windows自动化检查脚本设计 2026/9/7 17:40:05
Bitcoin Core 内存池尺寸语义重构:vsize、vsize_adjusted 与 vsize_bip141 完整指南 2026/9/7 17:35:05
CS自学指南 · Neural Networks: Zero to Hero:从零构建神经网络与 GPT 的深度学习自学指南 2026/9/7 17:35:05

最新资讯

用服务设计统一跨部门客户价值认知:从各说各话到同频协作
从“无标题”到清晰定位:项目命名与落地实战指南
不花钱解锁 WeMod Pro?Wand-Enhancer 本地补丁 4 步上手
CS-Notes 剑指 Offer 58.1 翻转单词顺序列:双次反转与原地字符操作的深度解析
MediaMTX快速上手:一个零依赖服务器,三步接入六路流媒体协议
career-ops 俄语模式(modes/ru)完全指南:面向俄罗斯就业市场的本地化求职自动化

今日推荐

基于YOLOv8和PyQt5的麦穗稻穗检测识别系统设计与实现
UL 1642锂电池安全标准全解析:测试项目、认证流程与避坑指南
BS EN 13814-1-2019游乐设施安全标准:设计与制造核心要点解析

本周热门

超人会飞不算本事:系统稳定依赖清晰规则与边界设计
超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论
基于CNN的调制信号识别:MATLAB实现时频图分类实战

本月精选

自研推理加速器Redwood:两周内实现PyTorch模型高效部署的实战教程
V4L2摄像头采集实战:从camera_client.rar到出图全流程解析
从“谁发明了钢琴键”到知识问答智能体:RAG与记忆工程实践

Linux命令基础与高效运维实战指南

发布时间:2026/9/7 17:40:05
Linux命令基础与高效运维实战指南 1. Linux命令基础与核心概念Linux命令是操作系统的核心交互方式也是每位开发者必须掌握的生存技能。与图形界面不同命令行提供了更直接、高效的系统控制能力。我在多年的运维工作中发现熟练掌握命令行工具的开发者和系统管理员其工作效率往往是普通用户的3-5倍。Linux命令本质上都是可执行程序主要存放在/bin、/sbin、/usr/bin等目录下。当我们在终端输入命令时shell会按照PATH环境变量定义的路径顺序查找对应的可执行文件。理解这一点很重要 - 当你遇到command not found错误时首先应该检查的是命令是否安装以及PATH设置是否正确。提示使用type命令可以查看某个命令的类型和位置例如type ls会显示ls是内置命令还是外部程序及其路径。1.1 命令基本结构解析一个完整的Linux命令通常由以下部分组成命令 [选项] [参数]命令要执行的操作如ls、cd等选项修改命令行为的标志通常以-或--开头参数命令操作的对象如文件名、目录名等例如在ls -l /home这个命令中ls是命令本身-l是选项长格式显示/home是参数要列出的目录1.2 命令帮助系统Linux提供了完善的命令帮助系统我强烈建议养成查阅帮助文档的习惯而不是直接搜索。主要帮助命令包括man命令最全面的手册例如man ls--help选项快速查看用法如ls --helpinfo命令更详细的文档如info coreutils注意在查阅帮助文档时/键可以搜索内容n键查找下一个匹配项q键退出。2. 文件与目录操作命令精要2.1 基础文件操作ls命令可能是使用频率最高的命令之一但很多人只停留在基本用法。以下是我总结的高级技巧# 按文件大小排序显示S大写 ls -lS # 显示隐藏文件并标记文件类型 ls -aF # 递归列出子目录内容并以颜色区分 ls -R --colorautocp和mv命令使用时有一些重要注意事项使用-i选项可以避免意外覆盖文件mv命令在不同分区间移动文件实际上是复制删除操作复制大文件时建议使用rsync而非cp2.2 目录操作进阶cd命令有几个实用技巧# 返回上一个工作目录 cd - # 快速返回家目录 cd ~ # 或者直接 cd # 使用pushd/popd管理目录栈 pushd /path/to/dir1 pushd /path/to/dir2 popd # 返回dir1find命令是文件搜索的瑞士军刀我常用的复杂查询示例# 查找7天内修改过的php文件 find /var/www -name *.php -mtime -7 # 查找大于10MB的文件并列出详细信息 find / -size 10M -exec ls -lh {} \; # 查找所有空目录 find . -type d -empty3. 文本处理与系统监控3.1 文本处理三剑客grep、awk和sed构成了Linux文本处理的黄金组合。以下是我工作中积累的实用案例# 统计nginx日志中每个IP的访问次数 awk {print $1} access.log | sort | uniq -c | sort -nr # 替换文件中的字符串并备份原文件 sed -i.bak s/old/new/g file.txt # 提取docker容器的ID docker ps | awk {print $1} | grep -v CONTAINER3.2 系统监控命令top命令的替代品htop提供了更友好的界面安装和使用# Ubuntu/Debian sudo apt install htop # CentOS/RHEL sudo yum install htop # 使用F2进入设置界面可以自定义显示 htopdf和du组合使用可以精确掌握磁盘使用情况# 查看磁盘剩余空间人类可读格式 df -h # 找出当前目录下最大的10个文件 du -ah . | sort -rh | head -n 104. 网络与进程管理4.1 网络相关命令netstat虽然被标记为过时但在很多场景仍然实用# 查看所有TCP连接 netstat -ant # 查看监听端口 netstat -tulnpss是更现代的替代方案速度更快# 显示所有TCP连接 ss -t -a # 显示进程使用的端口 ss -ltnpcurl和wget的区别和使用场景curl更适合API交互和复杂请求wget更适合下载文件和递归抓取4.2 进程管理技巧ps命令的常用组合# 显示所有进程完整信息 ps aux # 树状显示进程关系 ps -ef --forest # 查找特定进程 ps aux | grep nginxkill命令的正确使用方式# 先尝试优雅终止 kill -15 PID # 强制终止 kill -9 PID # 杀死所有匹配进程 pkill -f pattern5. 权限与用户管理5.1 文件权限深度解析Linux权限系统基于三组权限所有者(u)、所属组(g)和其他用户(o)。每个权限用三位二进制表示rwx对应数字4、2、1。修改权限的两种方式# 数字方式 chmod 755 file.sh # 符号方式 chmod ux,g-w,or file.sh特殊权限位SUID(4)执行时以文件所有者身份运行SGID(2)执行时以文件所属组身份运行Sticky(1)目录下文件只有所有者能删除5.2 用户与组管理创建用户时的最佳实践# 创建系统用户无家目录 useradd -r -s /sbin/nologin mysql # 创建普通用户并指定shell useradd -m -s /bin/bash username # 设置密码 passwd username用户组管理命令# 创建组 groupadd developers # 将用户加入组 usermod -aG developers username # 查看用户所属组 groups username6. 实用工具与技巧6.1 终端多路复用器tmux是提高终端效率的神器基本用法# 新建会话 tmux new -s session_name # 分离会话后台运行 Ctrlb d # 列出会话 tmux ls # 重新连接 tmux attach -t session_name6.2 命令组合与历史命令组合的几种方式# 顺序执行无论前一个是否成功 command1; command2 # 只有前一个成功才执行下一个 command1 command2 # 只有前一个失败才执行下一个 command1 || command2历史命令的实用技巧# 搜索历史命令 Ctrlr # 重复上条命令 !! # 重复上条命令的最后一个参数 !$7. 常见问题排查7.1 命令找不到问题当遇到command not found时排查步骤检查命令是否拼写错误使用which或type确认命令是否存在检查PATH环境变量是否包含命令所在目录确认命令是否已安装7.2 权限被拒绝问题遇到Permission denied时的解决方案检查当前用户是否有权限ls -l尝试使用sudo如果用户有sudo权限检查SELinux状态getenforce检查文件系统是否以只读方式挂载7.3 磁盘空间不足快速定位大文件的步骤# 查看磁盘使用情况 df -h # 找出大文件 du -ah / | sort -rh | head -n 20 # 或者使用ncdu工具 sudo apt install ncdu ncdu /8. 命令效率优化8.1 命令别名设置在~/.bashrc中添加常用别名可以大幅提高效率alias llls -alF alias grepgrep --colorauto alias ..cd .. alias hhistory8.2 Shell脚本基础简单的脚本示例#!/bin/bash # 检查参数 if [ $# -ne 1 ]; then echo Usage: $0 directory exit 1 fi # 检查目录是否存在 if [ ! -d $1 ]; then echo Error: $1 is not a directory exit 2 fi # 统计文件类型 echo File type statistics for $1: find $1 -type f | awk -F. {print $NF} | sort | uniq -c | sort -nr8.3 性能监控命令dstat是一个全能系统监控工具# 安装 sudo apt install dstat # 使用每秒刷新 dstat -cdngyiotop监控磁盘I/Osudo iotop -o9. 安全相关命令9.1 SSH安全配置最佳实践配置/etc/ssh/sshd_configPermitRootLogin no PasswordAuthentication no AllowUsers yourusername Port 2222 # 修改默认端口9.2 防火墙管理ufw简化了iptables配置# 允许SSH sudo ufw allow 22/tcp # 允许特定IP sudo ufw allow from 192.168.1.100 # 启用防火墙 sudo ufw enable9.3 日志检查关键日志文件位置/var/log/auth.log认证日志/var/log/syslog系统日志/var/log/nginx/error.logNginx错误日志检查登录失败的尝试grep Failed password /var/log/auth.log10. 容器与虚拟化命令10.1 Docker基础命令常用Docker命令示例# 查看运行中的容器 docker ps # 查看所有容器 docker ps -a # 启动/停止容器 docker start/stop container_name # 进入容器shell docker exec -it container_name /bin/bash10.2 虚拟机管理virsh管理KVM虚拟机# 列出所有虚拟机 virsh list --all # 启动虚拟机 virsh start vm_name # 查看虚拟机信息 virsh dominfo vm_name11. 开发相关命令11.1 版本控制Git常用命令备忘# 克隆仓库 git clone https://github.com/user/repo.git # 查看状态 git status # 添加所有更改 git add . # 提交更改 git commit -m message # 推送更改 git push origin branch_name11.2 编译与构建make命令的基本使用# 通常的编译流程 ./configure make sudo make install # 并行编译加快速度 make -j$(nproc)12. 系统服务管理12.1 systemd基础管理系统服务# 启动服务 sudo systemctl start service_name # 停止服务 sudo systemctl stop service_name # 查看服务状态 sudo systemctl status service_name # 启用开机启动 sudo systemctl enable service_name12.2 日志查看journalctl查看系统日志# 查看特定服务日志 journalctl -u nginx # 实时查看日志 journalctl -f # 按时间筛选 journalctl --since 2023-01-01 --until 2023-01-0213. 环境配置与管理13.1 环境变量设置持久化环境变量的方法# 对当前用户生效 echo export PATH$PATH:/new/path ~/.bashrc source ~/.bashrc # 对所有用户生效需要root echo export VARvalue /etc/environment13.2 软件包管理不同发行版的包管理命令操作Debian/Ubuntu (apt)RHEL/CentOS (yum/dnf)Arch (pacman)安装sudo apt install pkgsudo yum install pkgsudo pacman -S pkg更新sudo apt updatesudo yum updatesudo pacman -Syu搜索apt search termyum search termpacman -Ss term14. 高级技巧与脚本14.1 正则表达式应用grep使用正则的高级示例# 匹配IP地址 grep -Eo ([0-9]{1,3}\.){3}[0-9]{1,3} file # 匹配邮箱地址 grep -E [a-zA-Z0-9._%-][a-zA-Z0-9.-]\.[a-zA-Z]{2,6} file14.2 自动化脚本示例自动备份脚本#!/bin/bash # 配置变量 BACKUP_DIR/backups SOURCE_DIR/var/www DB_USERuser DB_PASSpassword DB_NAMEdatabase DATE$(date %Y%m%d) # 创建备份目录 mkdir -p $BACKUP_DIR/$DATE # 备份文件 tar -czf $BACKUP_DIR/$DATE/files.tar.gz $SOURCE_DIR # 备份数据库 mysqldump -u$DB_USER -p$DB_PASS $DB_NAME $BACKUP_DIR/$DATE/db.sql # 删除7天前的备份 find $BACKUP_DIR -type d -mtime 7 -exec rm -rf {} \; echo Backup completed: $BACKUP_DIR/$DATE15. 终端美化与效率15.1 提示符定制修改~/.bashrc自定义PS1# 彩色提示符 PS1\[\e[32m\]\u\h \[\e[34m\]\w \[\e[31m\]\$ \[\e[0m\] # 添加git分支信息 parse_git_branch() { git branch 2 /dev/null | sed -e /^[^*]/d -e s/* \(.*\)/ (\1)/ } PS1\[\e[32m\]\u\h \[\e[34m\]\w\[\e[33m\]$(parse_git_branch)\[\e[31m\]\$ \[\e[0m\]15.2 终端复用技巧screen基础用法# 新建会话 screen -S session_name # 分离会话 Ctrla d # 列出会话 screen -ls # 恢复会话 screen -r session_name16. 硬件信息查询16.1 系统信息常用硬件信息命令# CPU信息 lscpu cat /proc/cpuinfo # 内存信息 free -h cat /proc/meminfo # 磁盘信息 lsblk fdisk -l16.2 PCI与USB设备查看硬件设备# PCI设备 lspci -v # USB设备 lsusb -v # 硬件摘要 lshw -short17. 时间与计划任务17.1 时间同步配置NTP时间同步# 安装NTP sudo apt install ntp # 查看时间同步状态 timedatectl status # 手动同步 sudo ntpdate pool.ntp.org17.2 cron计划任务管理定时任务# 编辑当前用户的任务 crontab -e # 查看任务列表 crontab -l # 删除所有任务 crontab -rcron表达式示例# 每天凌晨3点执行 0 3 * * * /path/to/script # 每5分钟执行 */5 * * * * /path/to/script # 每周一9点执行 0 9 * * 1 /path/to/script18. 文件传输与同步18.1 SCP安全拷贝scp基本用法# 本地复制到远程 scp file.txt userremote:/path/ # 远程复制到本地 scp userremote:/path/file.txt . # 递归复制目录 scp -r dir userremote:/path/18.2 rsync高级同步rsync是更强大的同步工具# 本地同步 rsync -avz /src/ /dest/ # 远程同步 rsync -avz -e ssh /src/ userremote:/dest/ # 删除目标多余文件 rsync -avz --delete /src/ /dest/19. 压缩与归档19.1 常见压缩工具不同压缩格式的命令对比格式压缩命令解压命令特点.gzgzip filegunzip file.gz快速压缩.bz2bzip2 filebunzip2 file.bz2较高压缩比.xzxz fileunxz file.xz高压缩比.zipzip archive.zip fileunzip archive.zip跨平台.tartar -cf archive.tar filestar -xf archive.tar仅归档19.2 组合使用示例常用组合命令# 创建.tar.gz tar -czf archive.tar.gz files/ # 解压.tar.gz tar -xzf archive.tar.gz # 查看压缩包内容 tar -tzf archive.tar.gz20. 性能分析与优化20.1 CPU性能分析perf工具使用示例# 安装 sudo apt install linux-tools-common linux-tools-generic # 统计CPU使用 perf stat -B dd if/dev/zero of/dev/null count1000000 # 记录调用图 perf record -g command perf report20.2 内存分析valgrind检测内存问题# 安装 sudo apt install valgrind # 检测内存泄漏 valgrind --leak-checkyes ./program21. 内核与模块管理21.1 内核信息查询查看内核相关信息# 当前内核版本 uname -r # 加载的模块 lsmod # 模块信息 modinfo module_name21.2 模块管理内核模块操作# 加载模块 sudo modprobe module_name # 移除模块 sudo modprobe -r module_name # 查看模块参数 cat /sys/module/module_name/parameters/*22. 系统启动与运行级别22.1 启动过程分析查看启动日志# 传统syslog dmesg # systemd日志 journalctl -b22.2 运行级别管理systemd目标相当于传统运行级别# 查看当前目标 systemctl get-default # 设置默认目标 sudo systemctl set-default multi-user.target # 切换目标 sudo systemctl isolate graphical.target23. 环境隔离与虚拟化23.1 虚拟环境Python虚拟环境创建# 创建 python3 -m venv myenv # 激活 source myenv/bin/activate # 退出 deactivate23.2 容器环境使用podman作为docker替代# 运行容器 podman run -it ubuntu bash # 构建镜像 podman build -t myimage .24. 国际化与本地化24.1 语言设置查看和修改系统语言# 当前设置 locale # 可用语言包 locale -a # 生成语言环境 sudo locale-gen zh_CN.UTF-824.2 时区设置修改时区# 查看当前时区 timedatectl # 列出可用时区 timedatectl list-timezones # 设置时区 sudo timedatectl set-timezone Asia/Shanghai25. 安全加固与审计25.1 系统审计auditd配置示例# 监控/etc/passwd修改 auditctl -w /etc/passwd -p wa -k passwd_changes # 查看日志 ausearch -k passwd_changes25.2 安全扫描使用lynis进行安全审计# 安装 sudo apt install lynis # 运行扫描 sudo lynis audit system26. 网络调试与抓包26.1 tcpdump使用网络抓包示例# 抓取eth0网卡的所有HTTP流量 sudo tcpdump -i eth0 -A port 80 # 抓取特定主机的流量 sudo tcpdump host 192.168.1.100 # 保存到文件 sudo tcpdump -w capture.pcap26.2 网络测试工具常用网络测试命令# 测试连通性 ping example.com # 跟踪路由 traceroute example.com # 测试端口 telnet example.com 80 nc -zv example.com 8027. 系统救援与恢复27.1 单用户模式进入单用户模式步骤重启系统在GRUB菜单选择内核按e编辑启动参数在linux行末尾添加single或init/bin/bashCtrlx启动27.2 文件系统修复fsck使用示例# 检查文件系统未挂载 sudo fsck /dev/sda1 # 强制检查并修复 sudo fsck -y /dev/sda128. 日志轮转配置28.1 logrotate设置示例配置/etc/logrotate.d/myapp/var/log/myapp/*.log { daily missingok rotate 30 compress delaycompress notifempty create 640 root adm sharedscripts postrotate systemctl reload myapp /dev/null endscript }28.2 手动执行轮转测试和运行logrotate# 测试配置 sudo logrotate -d /etc/logrotate.conf # 强制执行 sudo logrotate -f /etc/logrotate.conf29. 系统备份策略29.1 全盘备份使用dd命令备份磁盘# 备份整个磁盘到文件 sudo dd if/dev/sda of/backup/sda.img bs4M statusprogress # 恢复备份 sudo dd if/backup/sda.img of/dev/sda bs4M statusprogress29.2 增量备份rsync增量备份脚本#!/bin/bash SOURCE/ DEST/backup/$(date %Y%m%d) LINK_DEST/backup/latest mkdir -p $DEST rsync -a --delete --link-dest$LINK_DEST $SOURCE $DEST rm -f $LINK_DEST ln -s $DEST $LINK_DEST30. 命令组合与管道30.1 复杂管道示例分析日志的复杂管道# 统计nginx日志中每个URL的访问次数 cat access.log | awk {print $7} | sort | uniq -c | sort -nr | head -20 # 监控目录变化并实时处理 inotifywait -m -r -e modify,create,delete /path | while read path action file; do echo $file was $action in $path done30.2 xargs高级用法xargs并行处理示例# 多线程grep搜索 find . -type f -print0 | xargs -0 -P 4 grep pattern # 批量重命名 find . -name *.jpg | xargs -I {} mv {} {}.bak31. 终端快捷键与技巧31.1 Bash快捷键提高效率的快捷键Ctrla移动到行首Ctrle移动到行尾Ctrlu删除到行首Ctrlk删除到行尾Ctrlr反向搜索历史Ctrll清屏Alt.插入上一个命令的最后一个参数31.2 命令行编辑readline编辑技巧# 在~/.inputrc中添加 \e[A: history-search-backward \e[B: history-search-forward set show-all-if-ambiguous on set completion-ignore-case on32. 系统信息查询32.1 综合信息工具inxi提供全面系统信息# 安装 sudo apt install inxi # 显示完整系统信息 inxi -Fxz32.2 硬件详细信息dmidecode获取硬件信息# BIOS信息 sudo dmidecode -t bios # 内存信息 sudo dmidecode -t memory # 系统信息 sudo dmidecode -t system33. 环境配置管理33.1 配置文件管理使用版本控制管理点文件# 初始化bare仓库 git init --bare $HOME/.cfg alias config/usr/bin/git --git-dir$HOME/.cfg/ --work-tree$HOME # 添加文件 config add .bashrc config commit -m Add bashrc config push33.2 环境隔离direnv自动加载环境# 安装 sudo apt install direnv # 在项目目录创建.envrc echo export PATH$PATH:./bin .envrc direnv allow34. 系统调优与配置34.1 内核参数调整sysctl临时和永久修改# 查看所有参数 sysctl -a # 临时修改 sudo sysctl -w vm.swappiness10 # 永久修改/etc/sysctl.conf echo vm.swappiness10 | sudo tee -a /etc/sysctl.conf sudo sysctl -p34.2 文件系统优化tune2fs调整ext4参数# 查看文件系统信息 sudo tune2fs -l /dev/sda1 # 禁用时间戳 sudo tune2fs -O ^has_journal /dev/sda1 # 调整保留块比例 sudo tune2fs -m 1 /dev/sda135. 容器编排命令35.1 Docker Compose常用命令示例# 启动服务 docker-compose up -d # 停止服务 docker-compose down # 查看日志 docker-compose logs -f35.2 Kubernetes基础kubectl常用命令# 查看节点 kubectl get nodes # 部署应用 kubectl apply -f deployment.yaml # 查看pod kubectl get pods -A36. 远程管理技巧36.1 SSH高级用法SSH配置优化~/.ssh/configHost * Compression yes ServerAliveInterval 60 TCPKeepAlive yes Host myserver HostName server.example.com User myuser Port 2222 IdentityFile ~/.ssh/myserver_key36.2 免密登录设置配置SSH密钥认证# 生成密钥 ssh-keygen -t ed25519 # 复制公钥到服务器 ssh-copy-id userhost # 测试登录 ssh userhost37. 性能基准测试37.1 CPU性能测试sysbench测试CPU# 安装 sudo apt install sysbench # 运行测试 sysbench cpu --cpu-max-prime20000 run37.2 磁盘IO测试fio综合测试# 随机读写测试 fio --namerandrw --ioenginelibaio --rwrandrw --bs4k --size1G --numjobs4 --runtime60 --group_reporting38. 系统清理与维护38.1 清理旧内核Ubuntu清理旧内核# 列出已安装内核 dpkg --list | grep linux-image # 删除旧内核保留最新的2个 sudo apt purge $(dpkg -l | grep linux-image | awk {print $2} | head -n -2)38.2 包缓存清理清理包管理器缓存# Debian/Ubuntu sudo apt clean sudo apt autoremove # RHEL/CentOS sudo yum clean all39. 系统监控仪表盘39.1 使用netdata安装和访问# 安装 bash (curl -Ss https://my-netdata.io/kickstart.sh) # 访问 http://localhost:1999939.2 glances工具glances使用# 安装 sudo apt install glances # 运行 glances # Web模式 glances -w40. 终端分屏工具40.1 terminator使用terminator分屏配置# 安装 sudo apt install terminator # 配置文件位置 ~/.config/terminator/config40.2 byobu增强byobu基础命令# 启动 byobu # 新建窗口 F2 # 切换窗口 F3/F4 # 分屏 CtrlF241. 文件比较与合并41.1 diff工具文件比较命令# 简单比较 diff file1 file2 # 并排显示 diff -y file1 file2 # 递归比较目录 diff -r dir1 dir241.2 vimdiff使用vimdiff合并文件vimdiff file1 file2 # 常用命令 ]c - 跳转到下一个差异 [c - 跳转到上一个差异 do - 获取对方修改 dp - 推送己方修改42. 密码与密钥管理42.1 GPG加密GPG基本用法# 生成密钥 gpg --full-generate-key # 加密文件 gpg -e -r recipient file # 解密文件 gpg -d file.gpg file42.2 pass管理密码pass密码管理器# 初始化 pass init GPG Key ID # 添加密码 pass insert Email/gmail # 查看密码 pass Email/gmail43. 系统诊断工具43.1 strace跟踪strace调试程序# 跟踪命令 strace ls # 统计系统调用 strace -c ls # 跟踪运行中进程 strace -p PID43.2 ltrace库调用ltrace使用示例# 跟踪库调用 ltrace ls # 统计调用 ltrace -c ls44. 二进制文件分析44.1 objdump反汇编分析二进制文件# 查看段信息 objdump -h binary # 反汇编代码 objdump -d binary44.2 strings提取字符串strings基本用法# 提取所有字符串 strings binary # 最小长度限制 strings -n 10 binary45. 系统调用参考45.1 查询系统调用查找系统调用信息# 列出所有系统调用 man syscalls # 查询特定调用 man 2 open45.2 系统调用表查看系统调用号# x86_64系统调用表 cat /usr/include/x86_64-linux-gnu/asm/unistd_64.h46. 内核调试技巧46.1 内核日志查看内核消息# 实时查看 dmesg -wH # 查看特定级别 dmesg -l err,crit46.2 内核参数运行时修改内核参数# 查看参数 cat /proc/sys/kernel/threads-max # 临时修改 echo 100000 /proc/sys/kernel/threads-max47. 系统启动分析47.1 启动时间优化分析启动过程# 查看启动时间 systemd-analyze # 生成启动图表 systemd-analyze plot boot.svg # 列出耗时服务 systemd-analyze blame47.2 服务依赖查看服务依赖关系# 显示服务依赖树 systemd-analyze critical-chain service_name # 图形化显示 systemd-analyze dot | dot -Tsvg deps.svg48. 虚拟文件系统48.1 proc文件系统常用/proc文件# CPU信息 cat /proc/cpuinfo # 内存使用 cat

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号