运维工程师常用命令有哪些?

运维工程师是保障系统稳定运行的核心角色,日常工作中需要熟练掌握各类命令,通过命令行高效完成服务器管理、故障排查、性能监控等任务,以下从系统管理、网络诊断、服务管理、安全运维、性能监控五大维度,详细梳理运维工程师常用命令及其使用场景。

运维工程师常用命令
(图片来源网络,侵删)

系统管理命令

系统管理是运维工作的基础,涉及文件操作、用户管理、进程控制等核心操作。

文件与目录操作

  • ls:列出目录内容,常用参数 -l(显示详细信息,如权限、所有者、大小)、-a(显示隐藏文件)、-h(以人类可读格式显示文件大小,如K/M/G)。
  • cd:切换目录,cd ..返回上级目录,cd -返回上一级目录,cd ~切换至当前用户家目录。
  • cp:复制文件或目录,-r参数用于递归复制目录(如cp -r /src /dest),-p保留文件属性(权限、时间戳等)。
  • mv:移动文件/目录或重命名,如mv file1.txt /backup/(移动文件),mv old.txt new.txt(重命名)。
  • rm:删除文件/目录,-f强制删除(不提示),-r递归删除目录(慎用,如rm -rf /会导致系统崩溃)。
  • mkdir:创建目录,-p递归创建多级目录(如mkdir -p /a/b/c)。
  • touch:创建空文件或更新文件时间戳,如touch newfile.txt
  • find:按条件查找文件,如find / -name "*.log" -mtime +7(查找根目录下7天前修改的.log文件)。
  • grep:文本搜索,-i忽略大小写,-r递归搜索目录,如grep -r "error" /var/log/(在日志目录中搜索包含”error”的行)。

用户与权限管理

  • useradd/userdel:添加/删除用户,-m自动创建家目录(如useradd -m testuser),userdel -r testuser(删除用户及家目录)。
  • passwd:修改用户密码,普通用户只能修改自己的密码,root可修改任意用户密码。
  • chmod:修改文件权限,-R递归修改目录权限,如chmod 755 script.sh(所有者可读写执行,组用户和其他用户可读执行)。
  • chown:修改文件所有者,-R递归修改,如chown -R testuser:testgroup /data/(将/data目录及其下文件所有者改为testuser,所属组改为testgroup)。

网络诊断命令

网络问题是服务器故障的常见原因,熟练使用网络诊断命令可快速定位问题。

  • ping:测试网络连通性,-c指定发送包数量(如ping -c 4 8.8.8.8),-i设置间隔时间。
  • ifconfig/ip addr:查看/配置网卡信息,ifconfig传统命令(需安装net-tools),ip addr为iproute2工具集命令(推荐),如ip addr show eth0查看eth0网卡IP。
  • netstat/ss:查看网络连接状态,netstat -tuln(显示监听的TCP/UDP端口),ss -tuln(更高效的替代工具,显示socket统计信息)。
  • curl/wget:下载文件或测试HTTP服务,curl -I http://example.com(查看HTTP响应头),wget -O file.zip http://example.com/file.zip(下载文件并重命名)。
  • traceroute/mtr:路由跟踪,traceroute 8.8.8.8(显示到目标主机的路由路径),mtr 8.8.8.8(持续跟踪,结合ping和traceroute优势,实时显示网络延迟)。
  • nslookup/dig:DNS查询,nslookup example.com(查询域名对应的IP),dig example.com(更详细的DNS解析信息,包括权威服务器、解析记录等)。

服务管理命令

服务器上运行着各类服务(如Nginx、MySQL、Redis等),需通过命令管理服务状态。

  • systemctl:CentOS 7+、Ubuntu 16+系统服务管理工具,常用命令:
    • systemctl start nginx(启动服务)
    • systemctl stop nginx(停止服务)
    • systemctl restart nginx(重启服务)
    • systemctl reload nginx(重新加载配置,不中断服务)
    • systemctl enable nginx(设置开机自启)
    • systemctl status nginx(查看服务状态)
  • service:传统系统服务管理工具(CentOS 6、Ubuntu 14等),如service nginx startservice --status-all(查看所有服务状态)。
  • ps/top/htop:查看进程信息,ps -ef(显示所有进程详细信息),top(动态显示进程资源占用,按q退出),htop(增强版top,支持鼠标操作、进程树显示)。
  • kill/pkill:终止进程,kill -9 PID(强制终止进程,-9为SIGKILL信号),pkill -f nginx(按进程名终止,-f表示匹配完整命令行)。

安全运维命令

安全是运维工作的重中之重,需通过命令定期检查系统安全、审计操作日志。

运维工程师常用命令
(图片来源网络,侵删)
  • last:查看用户登录历史,记录登录时间、IP、终端等信息,如last | grep root(查看root用户的登录记录)。
  • lastb:查看失败登录尝试,用于检测暴力破解攻击。
  • history:查看命令历史记录,history -c(清空当前会话历史),echo $HISTSIZE(查看历史记录保存条数)。
  • chmod/chattr:文件权限与属性安全,chattr +i /etc/passwd(设置文件不可删除、修改,仅root可操作),chattr -i /etc/passwd(取消属性)。
  • fail2ban:防暴力破解工具,通过fail2ban-client status查看封禁状态,配置文件位于/etc/fail2ban/jail.local
  • iptables/firewalld:防火墙管理,iptables -L -n(列出iptables规则),firewall-cmd --list-all(查看firewalld规则,CentOS 7+默认)。

性能监控命令

监控系统性能是保障服务稳定运行的关键,需实时关注CPU、内存、磁盘、网络等资源使用情况。

  • top/htop:实时监控进程资源占用,top1可查看各CPU核心使用率,按M按内存排序,按P按CPU排序。
  • free:查看内存使用情况,-h以人类可读格式显示(如free -h,显示总内存、已用、空闲、缓存等)。
  • df:查看磁盘空间使用率,-h显示友好单位(如df -h),-i查看inode使用情况(避免inode耗尽导致无法创建文件)。
  • iostat:监控磁盘I/O性能,需安装sysstat工具,iostat -dx 2(每2秒输出一次磁盘I/O统计,包括利用率、读写速率)。
  • vmstat:监控系统虚拟内存、进程、CPU活动,vmstat 1(每秒输出一次,如r值表示运行队列进程数,b表示等待I/O的进程数)。
  • sar:系统性能历史数据收集工具,sar -u 1 5(每秒收集1次CPU使用情况,共5次),数据存储在/var/log/sa/目录下。

常用命令速查表

功能分类命令常用参数及示例
文件操作findfind / -name "*.log" -mtime +7(查找7天前的日志)
网络诊断ssss -tuln(查看监听端口)
服务管理systemctlsystemctl restart nginx(重启Nginx服务)
进程监控htopP按CPU排序,按M按内存排序
磁盘空间dfdf -h(以人类可读格式显示磁盘使用率)
内存使用freefree -h(显示内存、交换分区使用情况)

相关问答FAQs

Q1:如何查看某个进程占用的端口?
A:可通过ssnetstat结合grep查找,例如查看Nginx进程占用的端口:

ss -tuln | grep nginx  # 或 netstat -tuln | grep nginx

若需反向查找(通过端口查进程),可使用lsof

lsof -i :80  # 查看80端口被哪个进程占用

Q2:服务器磁盘空间不足,如何快速定位大文件或目录?
A:使用du命令递归查看目录大小,结合sort排序:

运维工程师常用命令
(图片来源网络,侵删)
du -sh /* | sort -hr  # 查看根目录下各一级目录大小,按从大到小排序

若需查找特定目录下的大文件(如超过100MB的文件):

find /var/log -type f -size +100M  # 查找/var/log目录下大于100MB的文件

定位后可使用gzip压缩或rm删除(需谨慎,确保非重要文件)。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/384416.html<

(0)
运维的头像运维
上一篇2025-10-06 11:19
下一篇 2025-10-06 11:24

相关推荐

  • Top Linux命令有哪些?最常用的是哪些?

    Linux作为服务器和开发环境的首选操作系统,其强大的命令行工具是高效工作的核心,掌握Top命令对于系统监控至关重要,它能实时展示系统资源使用情况,帮助管理员快速定位性能瓶颈,Top命令默认以全屏交互方式运行,每两秒刷新一次数据,显示进程ID、用户、CPU及内存占用等关键信息,通过按下大写字母P可按CPU使用率……

    2025-11-20
    0
  • 如何禁止程序运行的命令有哪些?

    在计算机管理和安全维护中,有时需要通过特定命令禁止某些程序运行,这一操作常见于企业环境、家长控制或系统安全防护场景,通过命令行工具可以高效、精准地实现程序禁用,但需注意操作权限和潜在影响,以下是关于“禁止程序运行命令”的详细说明,涵盖不同操作系统下的方法、操作步骤及注意事项,Windows系统下的禁止程序运行命……

    2025-11-20
    0
  • 检查网络DOS命令有哪些?

    检查网络连通性和诊断网络问题是日常运维和故障排查中的常见任务,而DOS命令(在Windows系统中称为命令提示符或CMD命令)凭借其简洁高效的特点,成为网络管理的重要工具,以下将详细介绍常用的网络检查DOS命令,包括其功能、语法、使用场景及示例,帮助读者全面掌握这些命令的操作方法,基础网络连通性检查命令ping……

    2025-11-20
    0
  • arp命令具体怎么用?

    arp 命令是 Windows、Linux 等操作系统中用于查看和管理本地 ARP(地址解析协议)缓存的重要工具,ARP 协议的作用是将 IP 地址解析为物理 MAC 地址,在网络通信中,当设备需要与同一局域网内的其他设备通信时,会通过 ARP 请求获取目标 IP 对应的 MAC 地址,并将结果缓存在 ARP……

    2025-11-20
    0
  • 华为手机ping命令怎么用?

    华为手机作为全球领先的智能终端设备,其强大的网络功能和调试工具为用户提供了便捷的网络诊断体验,ping命令作为最基础的网络测试工具,在华为手机上可以通过多种方式实现,帮助用户快速定位网络问题、测试网络延迟和稳定性,本文将详细介绍华为手机ping命令的使用方法、参数解析、实际应用场景及注意事项,并附上相关问答,帮……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注