CentOS 文档
一、CentOS简介
CentOS(Community Enterprise Operating System)是一个基于Red Hat Enterprise Linux (RHEL) 的开源操作系统,它提供了企业级的稳定性和安全性,同时没有额外的费用,CentOS 完全兼容 RHEL,使得用户能够无缝迁移到开源平台。
二、历史与版本
1、CentOS 3:基于 RHEL 3,首次发布于2004年。
2、CentOS 4:基于 RHEL 4,引入了 SELinux,增强了系统的安全性。
3、CentOS 5:基于 RHEL 5,支持64位架构,改进了文件系统和网络功能。
4、CentOS 6:基于 RHEL 6,引入了 Systemd,增强了虚拟化支持。
5、CentOS 7:基于 RHEL 7,全面采用 Systemd,支持 Docker 容器。
6、CentOS 8:基于 RHEL 8,引入了模块化包管理,进一步增强了安全特性。
7、CentOS Stream:滚动更新模式,介于 Fedora 和 RHEL 之间。
三、特点与优势
1、开源与免费:遵循开源协议,用户可以自由下载、使用和修改。
2、稳定性:基于 RHEL 的稳定版本,经过严格测试,适合生产环境。
3、社区支持:拥有活跃的社区,提供丰富的文档和技术支持。
4、安全性:多层次的安全机制,包括 SELinux、Firewalld 等。
5、长期支持:每个主要版本通常提供10年的支持周期。
6、广泛的硬件支持:支持多种硬件架构,如 x86_64、ARM 等。
7、丰富的软件仓库:通过 YUM 仓库,用户可以方便地安装和管理软件包。
四、安装步骤
1、硬件要求:
处理器:1 GHz 或更高,推荐多核处理器,2 GHz 及以上。
内存:1 GB RAM,推荐 2 GB RAM 及以上。
存储空间:最少 20 GB 硬盘空间,推荐 40 GB 及以上。
网络:网卡支持,建议有稳定的网络连接。
显示器:1024x768 分辨率,推荐更高分辨率。
2、安装步骤:
下载 CentOS ISO 镜像文件。
制作启动介质(USB 闪存驱动器)。
启动安装程序,选择“Install CentOS”。
选择安装语言和区域设置。
配置安装目标(硬盘或分区)。
配置网络与主机名。
设置安全策略和 root 密码。
创建普通用户账户。
开始安装并完成安装过程。
五、初始配置
1、更新系统:
sudo yum update y
2、配置网络:
sudo nmcli general hostname //查看主机名 sudo nmcli general hostname myserver //设置主机名 sudo systemctl restart systemdhostnamed //重启主机名服务
3、设置静态 IP:
sudo nmtui //打开图形化网络配置工具
4、挂载与分区管理:
sudo fdisk l //查看磁盘分区 sudo mount /dev/sdXY /mnt/mydisk //挂载分区
六、包管理
1、YUM 简介:
Yum(Yellowdog Updater, Modified)是一个基于 RPM 的软件包管理器,能够解决依赖关系问题并提供软件仓库管理。
2、常用 YUM 命令:
安装软件包:
sudo yum install y package_name
更新软件包:
sudo yum update y package_name
删除软件包:
sudo yum remove y package_name
查找软件包:
yum search keyword
3、配置 YUM 仓库:
编辑/etc/yum.repos.d/
目录下的 repo 文件,添加或修改仓库源。
七、用户与权限管理
1、添加与删除用户:
添加用户:
sudo useradd new_username
删除用户:
sudo userdel old_username
2、用户组管理:
创建用户组:
sudo groupadd new_group
删除用户组:
sudo groupdel old_group
3、权限与所有权:
修改文件所有权:
sudo chown user:group file_or_directory
修改文件权限:
sudo chmod mode file_or_directory
八、文件系统与目录结构
1、常见目录介绍:
/
:根目录。
/home
:用户的主目录。
/var
:经常变动的文件,如日志文件和缓存。
/usr
:应用程序和数据存放目录。
/etc
:系统配置文件存放目录。
/tmp
:临时文件存放目录。
九、网络配置
1、配置静态 IP:
编辑或创建/etc/sysconfig/networkscripts/ifcfgethX
文件,设置静态 IP、子网掩码、网关和 DNS。
2、配置动态 IP(DHCP):
确保网卡配置文件中包含BOOTPROTO=dhcp
。
十、防火墙与安全
1、配置 Firewalld:
sudo systemctl start firewalld sudo systemctl enable firewalld sudo firewallcmd permanent addservice=http //开放 HTTP 端口
2、安装与配置 SELinux:
SELinux 默认安装并启用,可以通过以下命令进行状态检查和切换:
sudo getenforce //查看 SELinux 状态 sudo setenforce 1 //设置为强制模式 sudo setenforce 0 //设置为宽松模式
3、SSH 安全配置:
更改默认 SSH 端口:
sudo nano /etc/ssh/sshd_config
找到并修改Port
参数。
禁用 root 远程登录:
sudo nano /etc/ssh/sshd_config
将PermitRootLogin
改为no
。
十一、服务管理
1、Systemd 简介:
Systemd 是一种新的系统和服务管理器,用于替代传统的 SysVinit。
2、常用 Systemd 命令:
启动服务:
sudo systemctl start service_name
停止服务:
sudo systemctl stop service_name
重启服务:
sudo systemctl restart service_name
查看服务状态:
sudo systemctl status service_name
设置开机自启:
sudo systemctl enable service_name
取消开机自启:
sudo systemctl disable service_name
十二、日志管理
1、日志文件位置:
/var/log/messages
:系统消息日志。
/var/log/secure
:安全相关日志。
/var/log/mAIllog
:邮件日志。
/var/log/cron
:定时任务日志。
2、使用 Journalctl 查看日志:
sudo journalctl xf //实时查看日志
3、日志轮转与清理:
编辑/etc/logrotate.conf
和/etc/logrotate.d/
目录下的配置文件,设置日志轮转策略。
十三、软件安装与编译
1、从源代码编译:
wget http://example.com/software.tar.gz //下载源码包 tar zxvf software.tar.gz //解压源码包 cd software //进入源码目录 ./configure //配置编译选项 make //编译源码 sudo make install //安装软件
2、使用 RPM 包安装:
sudo yum install y package_name //安装软件包
十四、常见问题解答(FAQs)
1、如何更改主机名?:
编辑/etc/hostname
文件,设置新的主机名,然后使用以下命令使其生效:
sudo nmcli general hostname new_hostname //设置主机名 sudo systemctl restart systemdhostnamed //重启主机名服务
2、如何配置静态 IP?:
编辑或创建/etc/sysconfig/networkscripts/ifcfgethX
文件,添加以下内容:
TYPE="Ethernet" BOOTPROTO="static" NAME="eth0" UUID="string" DEVICE="eth0" ONBOOT="yes" IPADDR="192.168.1.100" NETMASK="255.255.255.0" GATEWAY="192.168.1.1" DNS1="8.8.8.8" DNS2="8.8.4.4"
3、如何更改 SSH 端口?:
编辑/etc/ssh/sshd_config
文件,找到并修改Port
参数,然后重启 SSH 服务:
sudo systemctl restart sshd