CentOS系统入门与实战:从安装到性能调优全指南
1. CentOS系统入门为什么选择这个Linux发行版第一次接触CentOS是在2016年一个企业级项目部署时。当时客户明确要求使用这个系统我才真正开始系统性地学习它。CentOS作为Red Hat Enterprise LinuxRHEL的社区版继承了RHEL的稳定性和企业级特性特别适合需要长期稳定运行的生产环境。与Ubuntu等面向个人用户的发行版不同CentOS的软件包更新策略更为保守。这意味着你可能无法第一时间用上最新功能但换来的是经过充分测试的稳定版本。我在实际运维中就遇到过Ubuntu某个版本内核更新导致生产环境崩溃的情况而同样的服务在CentOS上运行了三年从未出过问题。2. CentOS基础环境搭建2.1 系统安装要点安装CentOS时有几个关键选择会影响后续使用体验。首先是分区方案我建议采用以下配置/boot分区1GB存放内核和启动文件swap分区物理内存的1.5-2倍特别是服务器环境/分区剩余所有空间简化管理注意企业级环境建议将/var单独分区防止日志文件占满根分区安装源选择也很关键。国内用户可以使用阿里云或清华大学的镜像源加速下载# 替换为阿里云镜像源 sudo sed -e s|^mirrorlist|#mirrorlist|g \ -e s|^#baseurlhttp://mirror.centos.org|baseurlhttps://mirrors.aliyun.com|g \ -i.bak \ /etc/yum.repos.d/CentOS-*.repo2.2 基础配置优化安装完成后有几项必须立即进行的配置关闭SELinux学习阶段建议关闭生产环境需谨慎sudo setenforce 0 sudo sed -i s/SELINUXenforcing/SELINUXdisabled/g /etc/selinux/config配置静态IP服务器环境必备sudo nmcli con mod 有线连接 ipv4.addresses 192.168.1.100/24 sudo nmcli con mod 有线连接 ipv4.gateway 192.168.1.1 sudo nmcli con mod 有线连接 ipv4.dns 8.8.8.8 114.114.114.114 sudo nmcli con mod 有线连接 ipv4.method manual sudo nmcli con up 有线连接安装基础工具包sudo yum install -y vim wget curl net-tools lsof telnet tree htop3. 核心命令实战解析3.1 文件操作黄金命令集掌握这些命令可以解决90%的日常文件操作需求# 查看目录大小人类可读格式 du -sh * # 查找并删除7天前的日志文件 find /var/log -name *.log -mtime 7 -exec rm -f {} \; # 快速比较两个目录差异 diff -rq dir1 dir2 # 批量重命名将所有.txt改为.md rename .txt .md *.txt3.2 网络诊断三板斧当网络出现问题时这三个命令组合使用能快速定位问题# 检查网络连通性 ping -c 4 baidu.com # 查看路由路径 traceroute baidu.com # 检查端口开放情况 telnet baidu.com 80更专业的网络分析可以用tcpdump# 捕获eth0网卡的HTTP流量 sudo tcpdump -i eth0 -A port 804. 系统管理进阶技巧4.1 服务管理systemd详解CentOS 7开始使用systemd替代传统的init系统。常用操作# 查看服务状态 systemctl status nginx # 设置开机启动 systemctl enable nginx # 立即启动服务 systemctl start nginx # 查看服务依赖关系 systemctl list-dependencies nginx4.2 日志分析实战系统日志集中在/var/log目录几个关键日志文件/var/log/messages系统常规日志/var/log/secure认证相关日志/var/log/cron定时任务日志使用journalctl可以查看systemd日志# 查看最近50条内核日志 journalctl -k -n 50 # 跟踪查看nginx服务日志 journalctl -u nginx -f5. 常见问题排错指南5.1 磁盘空间告急处理当收到磁盘空间报警时按照这个流程排查快速定位大文件du -ahx / | sort -rh | head -20检查inode使用情况有时文件数过多也会导致问题df -i清理旧内核长期运行的系统容易积累多个内核版本rpm -q kernel sudo package-cleanup --oldkernels --count25.2 性能瓶颈分析系统变慢时使用这个命令组合快速诊断# 综合性能概览1秒刷新一次 dstat -tcmnd --disk-util 1 # CPU使用率TOP top -c -o %CPU # 内存使用TOP top -c -o %MEM # IO等待分析 iostat -x 16. 开发环境配置6.1 Python多版本管理CentOS自带Python2但现代开发需要Python3# 安装Python3.8 sudo yum install -y python38 python38-devel # 设置替代版本 sudo alternatives --set python /usr/bin/python3 # 安装pip curl https://bootstrap.pypa.io/get-pip.py | python36.2 Docker环境部署在CentOS上安装Docker的推荐方式# 卸载旧版本 sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine # 安装依赖 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 # 添加仓库 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo # 安装Docker sudo yum install -y docker-ce docker-ce-cli containerd.io # 启动服务 sudo systemctl start docker sudo systemctl enable docker7. 安全加固建议7.1 基础安全配置生产环境必须做的几项安全设置修改SSH默认端口sudo sed -i s/#Port 22/Port 2222/g /etc/ssh/sshd_config sudo systemctl restart sshd禁用root远程登录sudo sed -i s/#PermitRootLogin yes/PermitRootLogin no/g /etc/ssh/sshd_config配置防火墙规则sudo firewall-cmd --permanent --add-port2222/tcp sudo firewall-cmd --reload7.2 定期安全检查建议每月执行的安全检查脚本# 检查异常用户 awk -F: ($3 0) {print $1} /etc/passwd # 检查SUID文件 find / -perm -4000 -type f -exec ls -la {} \; 2/dev/null # 检查异常进程 ps aux | awk {print $1,$11} | sort | uniq -c | sort -nr | head -208. 备份与恢复策略8.1 系统级备份使用tar进行全系统备份排除不需要的目录sudo tar -cvpzf /backup/centos_backup_$(date %Y%m%d).tar.gz \ --exclude/backup \ --exclude/proc \ --exclude/lostfound \ --exclude/sys \ --exclude/mnt \ --exclude/media \ --exclude/run \ /8.2 增量备份方案结合rsync的增量备份脚本示例#!/bin/bash SOURCE_DIR/var/www/html BACKUP_DIR/backup/web LOG_FILE/var/log/backup.log # 每日增量备份 rsync -avz --delete --link-dest$BACKUP_DIR/latest $SOURCE_DIR $BACKUP_DIR/$(date %Y%m%d) $LOG_FILE 21 # 更新latest链接 rm -f $BACKUP_DIR/latest ln -s $BACKUP_DIR/$(date %Y%m%d) $BACKUP_DIR/latest9. 性能调优实战9.1 内核参数优化/etc/sysctl.conf中的关键参数调整# 避免TCP TIME_WAIT状态过多 net.ipv4.tcp_tw_reuse 1 net.ipv4.tcp_tw_recycle 1 # 增加文件描述符限制 fs.file-max 65535 # 内存相关优化 vm.swappiness 10 vm.overcommit_memory 1应用配置sudo sysctl -p9.2 磁盘IO优化针对SSD的优化方案# 查看调度器 cat /sys/block/sda/queue/scheduler # 修改为deadlineSSD推荐 echo deadline | sudo tee /sys/block/sda/queue/scheduler # 禁用访问时间记录 sudo mount -o remount,noatime /10. 容器化转型路径10.1 传统服务容器化将已有服务迁移到容器的步骤分析服务依赖ldd $(which nginx) rpm -q --whatprovides libssl.so.10编写DockerfileFROM centos:7 RUN yum install -y epel-release \ yum install -y nginx \ yum clean all COPY nginx.conf /etc/nginx/nginx.conf EXPOSE 80 CMD [nginx, -g, daemon off;]构建并运行docker build -t my-nginx . docker run -d -p 80:80 --name nginx my-nginx10.2 Kubernetes集群部署使用kubeadm部署生产级集群的注意事项所有节点关闭swapsudo swapoff -a sudo sed -i / swap / s/^\(.*\)$/#\1/g /etc/fstab安装必要组件cat EOF | sudo tee /etc/yum.repos.d/kubernetes.repo [kubernetes] nameKubernetes baseurlhttps://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch enabled1 gpgcheck1 repo_gpgcheck1 gpgkeyhttps://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOF sudo yum install -y kubelet kubeadm kubectl sudo systemctl enable --now kubelet初始化控制平面sudo kubeadm init --pod-network-cidr10.244.0.0/16

相关新闻

JSP表单处理:从基础原理到高级优化实践

JSP表单处理:从基础原理到高级优化实践

1. JSP表单处理基础与核心原理JSP表单处理是Java Web开发中最基础却最关键的环节之一。作为从J2EE时代延续至今的技术方案,它承载着前后端数据交互的核心职能。不同于现代前端框架的组件化处理方式,JSP表单采用经典的请求-响应模型,通过HTTP协…

2026/8/9 18:49:36 阅读更多 →
用AutoRemesher实现3D模型自动重拓扑:革命性的四边形网格优化解决方案

用AutoRemesher实现3D模型自动重拓扑:革命性的四边形网格优化解决方案

用AutoRemesher实现3D模型自动重拓扑:革命性的四边形网格优化解决方案 【免费下载链接】autoremesher Automatic quad remeshing tool 项目地址: https://gitcode.com/GitHub_Trending/au/autoremesher AutoRemesher是一款跨平台的开源自动四边形重网格化工具…

2026/8/9 18:49:36 阅读更多 →
TripoSR实战指南:从单张图片快速生成3D模型的完整方案

TripoSR实战指南:从单张图片快速生成3D模型的完整方案

TripoSR实战指南:从单张图片快速生成3D模型的完整方案 【免费下载链接】TripoSR TripoSR: Fast 3D Object Reconstruction from a Single Image 项目地址: https://gitcode.com/GitHub_Trending/tr/TripoSR 想要将一张普通的2D图片瞬间转换为精美的3D模型吗&…

2026/8/9 18:48:36 阅读更多 →

最新新闻

5分钟掌握Windows效率神器PowerToys:告别文件占用烦恼

5分钟掌握Windows效率神器PowerToys:告别文件占用烦恼

5分钟掌握Windows效率神器PowerToys:告别文件占用烦恼 【免费下载链接】PowerToys Microsoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows 项目地址: https://gitcode.com/GitHub_Trending/po/PowerToys…

2026/8/9 19:37:00 阅读更多 →
H3C无线AC配置实战:PSK认证方式搭建全流程

H3C无线AC配置实战:PSK认证方式搭建全流程

一 简介 本文介绍了AC PSK特性的典型配置举例。 二 配置举例 2.1 组网需求 如图1所示,AP通过交换机与AC相连,具体应用需求如下: a、 AC作为DHCP服务器为AP和Client分配IP地址; b、 使用PSK认证方式对客户端进行身份认证。 图1 PSK认证组网图

2026/8/9 19:37:00 阅读更多 →
3分钟上手:跨平台资源下载神器res-downloader完整指南

3分钟上手:跨平台资源下载神器res-downloader完整指南

3分钟上手:跨平台资源下载神器res-downloader完整指南 【免费下载链接】res-downloader 视频号、小程序、抖音、快手、小红书、直播流、m3u8、酷狗、QQ音乐等常见网络资源下载! 项目地址: https://gitcode.com/GitHub_Trending/re/res-downloader 还在为无法…

2026/8/9 19:36:59 阅读更多 →
为什么选择go-runewidth?深入解析这款高效Golang字符宽度计算库

为什么选择go-runewidth?深入解析这款高效Golang字符宽度计算库

为什么选择go-runewidth?深入解析这款高效Golang字符宽度计算库 【免费下载链接】go-runewidth wcwidth for golang 项目地址: https://gitcode.com/gh_mirrors/go/go-runewidth 在开发命令行工具、终端应用或需要精确文本排版的Golang项目时,字符…

2026/8/9 19:35:59 阅读更多 →
AI四巨头联手创立Discovery Loop:下一代AI发现循环系统技术解析

AI四巨头联手创立Discovery Loop:下一代AI发现循环系统技术解析

最近,AI 领域又传来一个重磅消息:Jeff Dean、Demis Hassabis、Yann LeCun 和 Yoshua Bengio 这四位被业界称为“AI 四巨头”的传奇人物,联手创立了一家名为 Discovery Loop 的新公司。消息一出,整个科技圈都炸了锅。这四位中的任何…

2026/8/9 19:35:59 阅读更多 →
cpp-tbox高级特性:定时器池、事件扩展与异步操作模式

cpp-tbox高级特性:定时器池、事件扩展与异步操作模式

cpp-tbox高级特性:定时器池、事件扩展与异步操作模式 【免费下载链接】cpp-tbox A complete Linux application software development tool library and runtime framework, aim at make C development easy. 项目地址: https://gitcode.com/gh_mirrors/cp/cpp-tb…

2026/8/9 19:35:59 阅读更多 →

日新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/9 0:01:47 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/9 0:01:47 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/9 0:03:48 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/9 0:01:47 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/9 0:01:47 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/9 0:03:48 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/9 17:05:02 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/9 0:45:04 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/9 17:05:02 阅读更多 →