CentOS 7.6系统管理实战指南:从基础到进阶

一、系统安装与基础环境配置

1.1 安装前环境准备

在虚拟机环境中部署CentOS 7.6需满足最低硬件要求:2核CPU、4GB内存、20GB磁盘空间。推荐使用主流虚拟化平台创建虚拟机,配置网络模式为NAT或桥接。安装介质建议选择官方ISO镜像文件,通过MD5校验确保文件完整性。

安装过程分为五个关键步骤:

  1. 选择安装语言(推荐英文环境)
  2. 配置软件源(可添加EPEL扩展仓库)
  3. 分区方案建议:
    • /boot:500MB(EXT4文件系统)
    • swap:2GB(根据内存大小调整)
    • /:剩余空间(XFS文件系统)
  4. 设置root密码与创建初始用户
  5. 安装完成后重启系统

1.2 系统初始化配置

首次登录后需完成基础配置:

  1. # 更新系统软件包
  2. sudo yum update -y
  3. # 配置网络(使用nmcli工具)
  4. nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.dns "8.8.8.8" connection.autoconnect yes
  5. nmcli connection up eth0
  6. # 安装常用工具包
  7. sudo yum install -y vim net-tools wget curl tree

二、核心命令行操作技巧

2.1 Shell命令精要

掌握命令行三要素:

  • 命令本身:如lscp
  • 选项参数:短选项-a与长选项--all
  • 操作对象:文件路径或通配符

实用组合示例:

  1. # 递归查找并删除7天前的日志文件
  2. find /var/log -name "*.log" -mtime +7 -exec rm {} \;
  3. # 统计当前目录下文件数量(按扩展名分类)
  4. ls -l | grep -E "\.(sh|py|conf)$" | awk '{print $9}' | sort | uniq -c

2.2 文件系统管理

理解Linux文件系统层次标准(FHS):

  • /etc:系统配置文件
  • /var:可变数据文件
  • /usr:第三方软件资源

关键操作命令矩阵:
| 操作类型 | 常用命令 | 示例 |
|————————|—————————————————-|———————————————-|
| 文件查看 | cat/less/head/tail | tail -f /var/log/messages |
| 目录导航 | pwd/cd/ls | ls -lh /etc/nginx/ |
| 文件操作 | cp/mv/rm/touch | cp -r dir1 dir2 |
| 权限管理 | chmod/chown/chgrp | chmod 755 script.sh |

三、用户与权限管理体系

3.1 用户账户管理

用户信息存储在三个关键文件中:

  • /etc/passwd:用户基本信息
  • /etc/shadow:密码加密信息
  • /etc/group:组群信息

创建用户的完整流程:

  1. # 添加用户并设置家目录
  2. sudo useradd -m -s /bin/bash devuser
  3. # 设置密码策略(要求复杂度)
  4. echo "password123" | sudo passwd --stdin devuser
  5. sudo chage -m 7 -M 90 -W 7 devuser
  6. # 配置sudo权限
  7. echo "devuser ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/devuser

3.2 权限控制模型

Linux采用DAC(自主访问控制)机制,通过三组权限位控制:

  • 用户权限(u)
  • 组权限(g)
  • 其他权限(o)

权限表示方法:

  • 数字模式:755(rwxr-xr-x)
  • 符号模式:u=rwx,g=rx,o=rx

特殊权限说明:

  • SUID(4):以文件所有者身份执行
  • SGID(2):继承父目录组权限
  • Sticky Bit(1):目录专属删除限制

四、系统维护与故障排查

4.1 进程管理

关键命令组合:

  1. # 查看资源占用TOP10进程
  2. ps aux --sort=-%cpu | head -10
  3. # 终止异常进程
  4. pkill -9 -f "python script.py"
  5. # 监控系统负载
  6. uptime
  7. top -c
  8. htop

4.2 日志分析

主流日志文件路径:

  • /var/log/messages:系统通用日志
  • /var/log/secure:认证相关日志
  • /var/log/cron:定时任务日志

日志轮转配置示例:

  1. /var/log/messages {
  2. daily
  3. rotate 7
  4. missingok
  5. notifempty
  6. compress
  7. delaycompress
  8. sharedscripts
  9. postrotate
  10. /bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
  11. endscript
  12. }

五、进阶实践方案

5.1 自动化部署脚本

创建初始化脚本init_server.sh

  1. #!/bin/bash
  2. # 系统基础配置
  3. yum install -y epel-release
  4. yum update -y
  5. # 配置SSH安全
  6. sed -i 's/^#PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
  7. sed -i 's/^#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config
  8. systemctl restart sshd
  9. # 创建运维用户
  10. useradd -m -s /bin/bash ops
  11. echo "SecurePass123!" | passwd --stdin ops
  12. mkdir /home/ops/.ssh
  13. chmod 700 /home/ops/.ssh
  14. echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAB..." > /home/ops/.ssh/authorized_keys
  15. chown -R ops:ops /home/ops/.ssh

5.2 性能监控方案

部署轻量级监控系统:

  1. # 安装监控工具
  2. yum install -y sysstat nmon
  3. # 配置数据采集
  4. echo "*/5 * * * * /usr/lib64/sa/sa1 1 1" >> /etc/crontab
  5. echo "53 23 * * * /usr/lib64/sa/sa2 -A" >> /etc/crontab
  6. # 生成性能报告
  7. sar -u 1 3 # CPU使用率
  8. sar -r # 内存使用情况
  9. sar -q # 负载情况

本文通过系统化的知识架构和可落地的操作方案,为Linux系统管理员提供了从基础环境搭建到高级运维的完整路径。建议读者结合虚拟化环境进行实操练习,每个技术章节都配套有验证性实验,帮助快速构建实战能力。对于生产环境部署,建议进一步研究容器化部署方案和自动化运维工具链的集成应用。