CentOS 6.x系统管理全攻略:从安装到运维

第一部分:系统安装与基础配置

1.1 安装介质获取与验证

系统安装前需从官方镜像站下载ISO文件,推荐选择完整版DVD镜像以包含所有软件包。下载完成后务必进行SHA256校验,使用命令:

  1. sha256sum CentOS-6.x-x86_64-DVD.iso

对比官网公布的校验值确保文件完整性。对于内网环境,可搭建本地HTTP镜像站加速部署,配置Nginx示例:

  1. server {
  2. listen 80;
  3. server_name mirror.local;
  4. root /var/www/centos;
  5. autoindex on;
  6. }

1.2 光盘安装全流程

启动安装程序后,在引导界面按Tab键修改内核参数,添加ks=参数可实现全自动安装。分区方案建议采用LVM布局,典型配置如下:

  • /boot:500MB(ext4)
  • swap:内存的1.5倍
  • /:剩余空间(xfs文件系统)

安装完成后需立即执行yum update升级所有软件包,特别注意修复glibc等基础库的安全漏洞。

1.3 网络安装与PXE部署

大规模部署推荐使用PXE+Kickstart方案,需配置DHCP服务器分配IP并指定TFTP服务器地址。示例dhcpd.conf片段:

  1. subnet 192.168.1.0 netmask 255.255.255.0 {
  2. range 192.168.1.100 192.168.1.200;
  3. option routers 192.168.1.1;
  4. filename "pxelinux.0";
  5. next-server 192.168.1.2;
  6. }

第二部分:网络配置进阶

2.1 多IP绑定与负载均衡

单网卡配置多个IP时,临时方案使用ifconfig命令:

  1. ifconfig eth0:1 192.168.1.100 netmask 255.255.255.0 up

永久方案需修改/etc/sysconfig/network-scripts/ifcfg-eth0:1文件,关键参数:

  1. DEVICE=eth0:1
  2. IPADDR=192.168.1.100
  3. NETMASK=255.255.255.0
  4. ONBOOT=yes

2.2 带宽聚合与故障转移

双网卡绑定推荐使用mode=6(ALB模式),配置步骤:

  1. 加载bonding驱动:modprobe bonding mode=6
  2. 创建bond0接口配置文件
  3. 修改eth0/eth1配置指向bond0
  4. 重启网络服务

验证绑定状态:

  1. cat /proc/net/bonding/bond0

2.3 IPv6优化配置

对于不需要IPv6的环境,可通过以下方式禁用:

  1. echo "NETWORKING_IPV6=no" >> /etc/sysconfig/network
  2. for dev in /proc/sys/net/ipv6/conf/*/disable_ipv6; do
  3. echo 1 > $dev
  4. done

第三部分:远程管理工具链

3.1 SSH高级应用

PuTTY配置建议启用连接保持(Keepalive)防止超时断开,在Connection配置页设置:

  • Seconds between keepalives: 300
  • Enable TCP keepalives: Yes

密钥认证配置流程:

  1. 生成密钥对:ssh-keygen -t rsa -b 4096
  2. 上传公钥:ssh-copy-id user@remote-host
  3. 禁用密码认证:修改/etc/ssh/sshd_config设置PasswordAuthentication no

3.2 Web管理界面

Webmin提供可视化系统管理,安装后需进行安全加固:

  1. 修改默认端口:编辑/etc/webmin/miniserv.conf
  2. 启用HTTPS:生成自签名证书并配置SSL
  3. 配置防火墙仅允许管理IP访问

第四部分:系统优化与维护

4.1 登录环境定制

修改/etc/motd文件可设置登录后显示信息,建议包含:

  • 系统版本信息
  • 最近维护通知
  • 紧急联系方式

通过/etc/issue.net可定制SSH登录前的提示信息。

4.2 历史命令管理

限制历史记录大小:

  1. echo "export HISTSIZE=1000" >> /etc/profile
  2. echo "export HISTFILESIZE=2000" >> /etc/profile

禁用敏感命令记录:

  1. export HISTIGNORE="&:bg:fg:exit:ls:pwd"

4.3 服务自动化管理

使用chkconfig统一管理服务启动状态:

  1. chkconfig --level 35 httpd on # 运行级别3和5启动Apache
  2. chkconfig --list | grep 3:on # 查看所有启动服务

对于Systemd系统(CentOS 7+),需使用systemctl enable命令替代。

4.4 性能监控基线

建立系统性能基线需定期采集以下指标:

  • CPU负载:uptimempstat 1 5
  • 内存使用:free -mvmstat 1 5
  • 磁盘IO:iostat -x 1 5
  • 网络流量:ifstat -i eth0 1

建议使用cron任务每小时采集数据,并开发可视化报表系统进行趋势分析。

第五部分:故障排查指南

5.1 网络问题诊断

常用排查命令组合:

  1. # 连通性测试
  2. ping -c 4 8.8.8.8
  3. traceroute 8.8.8.8
  4. # 端口可达性
  5. telnet example.com 80
  6. nc -zv example.com 443
  7. # 抓包分析
  8. tcpdump -i eth0 port 80 -w http.pcap

5.2 服务启动失败处理

当服务无法启动时,按以下步骤排查:

  1. 检查日志文件:/var/log/messages或服务专属日志
  2. 验证配置文件语法:apachectl configtest
  3. 检查端口占用:netstat -tulnp | grep :80
  4. 查看系统资源:dmesg | tail -20

5.3 存储空间恢复

当根分区满时,可通过以下方式快速释放空间:

  1. # 查找大文件
  2. find / -type f -size +100M -exec ls -lh {} \;
  3. # 清理旧日志
  4. journalctl --vacuum-size=100M
  5. # 清理yum缓存
  6. yum clean all

本文系统梳理了CentOS 6.x管理的关键技术点,从基础安装到高级运维提供了完整的解决方案。建议管理员结合实际环境建立标准化操作流程(SOP),并定期进行技术复盘更新知识体系。对于即将迁移到新版本的系统,可参考行业常见技术方案制定平滑升级策略,确保业务连续性。