菜鸟科技网

CentOS 7命令手册有哪些核心命令?

CentOS 7 作为一款广泛使用的 Linux 发行版,其命令行操作是系统管理和运维的核心技能,掌握常用命令不仅能提高工作效率,还能深入理解系统运行机制,以下从基础操作、文件管理、系统监控、网络配置、软件管理及服务控制六个方面,详细解析 CentOS 7 的常用命令,并辅以表格对比和实例说明,最后附上常见问题解答。

CentOS 7命令手册有哪些核心命令?-图1
(图片来源网络,侵删)

基础操作命令

基础操作是 Linux 日常使用的基础,主要包括系统信息查询、用户管理和进程控制。

  1. 系统信息查询

    • uname -a:显示系统所有信息,包括内核名称、主机名、内核版本等。
    • lscpu:查看 CPU 架构和核心数信息,输出格式清晰,包含架构、CPU 数量、线程数等。
    • free -h:以人类可读格式(如 GB、MB)显示内存使用情况,-h 参数自动选择合适单位。
    • df -h:查看磁盘分区使用情况,-h 参数同样用于单位优化,便于快速判断磁盘空间。
  2. 用户管理

    • useradd username:创建新用户,默认创建家目录和用户组,可通过 -m 强制创建家目录,-s 指定默认 Shell(如 /bin/bash)。
    • passwd username:为用户设置密码,普通用户只能修改自己的密码,root 可修改任意用户密码。
    • su - username:切换到指定用户, 参数表示加载该用户的 Shell 配置文件,确保环境一致。
    • sudo command:以超级用户权限执行命令,需提前配置 /etc/sudoers 文件(使用 visudo 安全编辑)。
  3. 进程管理

    CentOS 7命令手册有哪些核心命令?-图2
    (图片来源网络,侵删)
    • ps aux:查看当前所有进程的详细信息,a 显示所有进程,u 显示用户信息,x 显示无终端进程。
    • top:动态实时显示进程状态,按 M 按内存排序,按 C 按 CPU 排序,q 退出。
    • kill -9 PID:强制终止进程,-9 为信号码,表示无条件终止,适用于普通 kill 无效的进程。
    • jobs:查看后台任务,配合 fg(前台调取)、bg(后台继续)使用,如 fg %1 将任务 1 调至前台。

文件与目录管理命令

文件管理是 Linux 最频繁的操作,涉及目录浏览、文件操作、权限控制等。

  1. 目录与文件浏览

    • ls -la:列出当前目录所有文件和子目录,-l 显示详细信息(权限、所有者、大小、修改时间),-a 显示隐藏文件(以 开头)。
    • pwd:显示当前工作目录的完整路径,避免因目录切换而迷失。
    • tree:以树形结构显示目录层级,需先安装 yum install tree-L 2 限制显示层级深度。
  2. 文件操作

    • touch filename:创建空文件或更新文件时间戳,若文件存在则修改其访问和修改时间。
    • cp -r source_dir target_dir:递归复制目录,-r 表示复制目录及其所有内容,-p 可保留权限和时间戳。
    • mv old_name new_name:重命名文件或移动文件/目录,同一目录内为重命名,跨目录为移动。
    • rm -rf dir_name:强制递归删除目录,-r 递归删除,-f 忽略不存在的文件并强制删除,需谨慎使用。
  3. 文本处理

    CentOS 7命令手册有哪些核心命令?-图3
    (图片来源网络,侵删)
    • cat filename:查看文件全部内容,适合小文件,大文件可用 less filename(支持分页和搜索)。
    • grep "keyword" file.txt:在文件中搜索关键词,-i 忽略大小写,-n 显示行号,-v 反向匹配(不包含关键词的行)。
    • echo "text" > file.txt:将文本覆盖写入文件,>> 为追加写入,> 会覆盖原文件。
  4. 权限控制

    • chmod 755 file.txt:修改文件权限,755 表示所有者可读写执行,组用户和其他用户可读执行,可通过 chmod u+x file.txt 单独添加执行权限。
    • chown user:group file.txt:修改文件所有者和所属组,-R 可递归修改目录下所有文件权限。

系统监控与日志管理

系统监控是保障服务器稳定运行的关键,需重点关注资源使用和日志分析。

  1. 资源监控

    • htop:比 top 更强大的进程监控工具,支持鼠标操作和彩色显示,需安装 yum install htop
    • vmstat 1 5:每秒输出一次系统状态,共输出 5 次,包括进程、内存、 swap、I/O、CPU 等信息。
    • iostat -xz 1:监控磁盘 I/O 性能,-x 显示扩展信息,-z 忽略闲置设备,1 表示每秒刷新。
  2. 日志管理

    • journalctl -xe:查看 systemd 日志,-x 显示详细错误信息,-e 跳转到末尾,-u nginx.service 可过滤特定服务日志。
    • tail -f /var/log/messages:实时查看系统日志文件,-f 表示持续跟踪文件新增内容,适合监控实时日志。
    • grep "error" /var/log/httpd/error_log:在 Apache 错误日志中搜索包含 "error" 的行,快速定位问题。

网络配置与诊断命令

网络配置是服务器运维的核心技能,需掌握 IP 配置、网络连通性测试和服务管理。

  1. 网络配置

    • ip addr show:查看网络接口 IP 地址信息,替代传统的 ifconfig(需安装 net-tools 包)。
    • nmcli connection show:使用 NetworkManager 管理网络连接,nmcli con mod "ens33" ipv4.method manual ipv4.addresses 192.168.1.100/24 静态配置 IP。
    • systemctl restart network:重启网络服务,使配置生效(CentOS 7 推荐使用 NetworkManager 管理)。
  2. 网络诊断

    • ping -c 4 baidu.com:测试与目标主机的连通性,-c 指定发送包数量,默认无限发送。
    • traceroute baidu.com:显示数据包到目标主机的路径,经过的路由器数量和延迟,排查网络延迟问题。
    • ss -tulnp:查看监听的端口和进程,-t TCP 端口,-u UDP 端口,-l 只显示监听端口,-n 以数字形式显示地址和端口。

软件包管理命令

CentOS 7 主要使用 YUM(Yellowdog Updater Modified)管理软件包,支持 RPM 包的自动安装、更新和卸载。

  1. YUM 基础命令

    • yum install package_name:安装软件包,如 yum install nginx 安装 Nginx。
    • yum update package_name:更新指定软件包,yum update 更新所有可升级的包。
    • yum remove package_name:卸载软件包,会同时删除依赖的包(若未被其他包使用)。
    • yum list installed:列出已安装的软件包,yum list available 列出可安装的包。
  2. 源码编译安装
    部分软件需从源码编译安装,流程如下:

    wget https://example.com/source.tar.gz  # 下载源码包
    tar -zxvf source.tar.gz                 # 解压
    cd source_dir                           # 进入目录
    ./configure                             # 配置编译选项
    make                                    # 编译
    make install                            # 安装

系统服务与开机自启管理

CentOS 7 使用 systemctl 管理系统服务,替代了传统的 servicechkconfig 命令。

  1. 服务控制

    • systemctl start nginx.service:启动 Nginx 服务。
    • systemctl stop nginx.service:停止服务。
    • systemctl restart nginx.service:重启服务。
    • systemctl status nginx.service:查看服务状态(是否运行、是否开机自启)。
  2. 开机自启配置

    • systemctl enable nginx.service:设置服务开机自启,会在 /etc/systemd/system/multi-user.target.wants/ 创建软链接。
    • systemctl disable nginx.service:取消开机自启。
    • systemctl list-unit-files --type=service:列出所有服务及其开机自启状态。

常用命令速查表

功能分类 命令示例 说明
系统信息 uname -a 显示系统内核和主机信息
内存查看 free -h 人类可读格式显示内存使用情况
磁盘使用 df -h 查看磁盘分区使用情况
用户创建 useradd -m -s /bin/bash username 创建用户并指定 Shell
进程查看 ps aux 显示所有进程详细信息
文件复制 cp -r /source /target 递归复制目录
权限修改 chmod 755 file 设置文件权限为 rwxr-xr-x
日志查看 journalctl -xe 查看 systemd 系统日志
网络连通性 ping -c 4 baidu.com 发送 4 个包测试连通性
端口监听 ss -tulnp 查看 TCP/UDP 监听端口及进程
软件安装 yum install nginx 使用 YUM 安装 Nginx
服务开机自启 systemctl enable nginx.service 设置 Nginx 开机自启

相关问答 FAQs

问题 1:如何查看某个进程占用的端口号?
解答:可以使用 ssnetstat 命令结合 grep 过滤进程名,查看 Nginx 进程占用的端口:

ss -tulnp | grep nginx

netstat -tulnp | grep nginx

输出结果中会显示 Nginx 监听的端口(如 80、443)及对应的进程 ID(PID),若已知 PID,也可通过 lsof -i :端口号 查看,lsof -i :80

问题 2:CentOS 7 如何设置静态 IP 地址?
解答:通过 NetworkManager 的命令行工具 nmcli 配置静态 IP,步骤如下:

  1. 查看当前网络连接名称:
    nmcli connection show

    假设连接名称为 ens33

  2. 修改连接配置,设置静态 IP、网关和 DNS:
    nmcli con mod "ens33" ipv4.method manual \
    ipv4.addresses 192.168.1.100/24 \  
    ipv4.gateway 192.168.1.1 \  
    ipv4.dns "8.8.8.8 114.114.114.114"
  3. 重启网络服务使配置生效:
    systemctl restart network
  4. 验证 IP 配置:
    ip addr show ens33

    若显示配置的静态 IP,则设置成功,注意:配置前确保网络接口名称正确,避免网络中断。

分享:
扫描分享到社交APP
上一篇
下一篇