1、CentOS7 简介
CentOS(Community Enterprise Operating System,中文意思是:社区企业操作系统)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件。(百度百科)
2、CentOS7与CentOS 6比对
Centos系统其实早在2014年初就已经被红帽公司收,2018年红帽又被IBM收购。不管怎么样Centos和RHEL它们之间可以完全兼容。RHEL\CentOS同系列没什么什么不同,主要版本从5、6、7它们之间是有区别,而且变化很大,下面我们主要对比一下CentOS7与CentOS6之间的差异。
Red Hat的分支:
- RHEL: 企业版,稳定更新慢每18个月发行一个新版本
- CentOS:社区版,兼容rhel的格式 【被红帽收购】
- Fedora: 个人 桌面,版更新快每6个月发行一个新版本
巨大的变化CentOS7不在使用传统SysV init、Upstart程序进行系统管理。SysV init是传统风格管理方式,Upstart是由ubuntu 研发的改进版本,没经历几代就被Systemd所取代了。Systemd是红帽公司的一位年轻工程师研发。init守护进程主要用于初始化系统,管理用户空间进程。这种方式有两个缺点:一是启动时间长。init进程是串行启动,只有前一个进程启动完,才会启动下一个进程。二是启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这往往使得脚本变得很长。
Systemd就是为了解决这些问题而诞生的。它的设计目标是,为系统的启动和管理提供一套完整的解决方案。根据 Linux 惯例,字母d是守护进程(daemon)的缩写。指的就是它要守护整个系统。Systemd的优点是功能强大,使用方便,缺点是体系庞大,非常复杂。事实上,现在还有很多人反对使用 Systemd,理由就是它过于复杂,与操作系统的其他部分强耦合,违反"keep simple, keep stupid"的Unix 哲学。
Systemd新特性:
- 系统引导时实现服务并行启动
- 按需激活进程;
- 系统状态快照;
- 基于依赖关系定义服务控制逻辑
Systemd关键特性:
- 基于socket的激活机制:socket与服务程序分离
- 基于bus的激活机制
- 基于device的激活机制
- 基于path的激活机制
- 系统快照:保存各unit的当前状态信息于持久存储设备中
- 向后兼容sysv init脚本
2.1内核版本
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | 3.10.x-x | 2.6.x-x |
2.2Bootloader
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | GRUB2 | GRUB |
2.3桌面
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | GNOME 3.x | GNOME 2.x |
2.4文件系统
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | xfs、btrfs | ext3、ext4 |
2.5文件结构
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | /bin, /sbin, /lib, and /lib64移到/usr下 | /bin, /sbin, /lib, and /lib64在/ 下 |
2.6服务相关命令
启动命令
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | systemctl start 服务名 | service 服务名 start |
停止命令
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | systemctl stop 服务名 | service 服务名 stop |
init类型
系统平台 | CentOS 7 | CentOS 6 | CentOS 5 |
---|---|---|---|
区别 | Systemd | Upstart | SysV |
查看启动项
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | systemctl list-unit-files | chkconfig --list |
设置启动项
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | systemctl enable/disable service_name | chkconfig service_name on/off |
单用户模式
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | $ systemctl rescue | $ init S |
2.7网络相关命令
网络命令
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | ip/ss | ifconfig/netstat |
2.8防火墙
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | firewalld、iptables | iptables |
2.9数据库
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | MariaDB | MySQL |
2.10时间时区、语言
查看时区
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | timedatectl | cat /etc/sysconfig/clock |
时间同步
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | chronyc sources | ntp、ntpq -p |
修改时区
[CentOS7]
# timedatectl set-timezone Asia/Shanghai
# timedatectl status
[CentOS6]
# vim /etc/sysconfig/clock
ZONE="Asia/Shanghai"
UTC=fales
# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
设置语言环境
[CentOS7]
# localectl set-locale LANG=zh_CN.utf8
# localectl status
[CentOS6]
# vim /etc/sysconfig/i18n
LANG="zh_CN.utf8"
# locale
设置主机名
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | /etc/hostname | /etc/sysconfig/network |
网络设备名【系统识别网卡有好几种维度】
系统平台 | CentOS 7 | CentOS 6 |
---|---|---|
区别 | en{s、o、p}33是以插槽命名 | eth0是以MAC地址命名 |
3总结
CentOS-7 的第七个发行版本。CentOS Linux 发行版本是一个稳定、高预测性、高管理性、高重复性的平台,它支持文件系统快照,更大更灵活的存储,安全性也有所提高。Centos 7从2014年发行至现在也经历多个年头,稳定性没问题大部分公司已经在生产环境安装运行。CentOS 6中 service init scripts,CentOS 7中 service unit
注意:虽然能兼容早期的服务脚本。但由于CentOS 6 Upstart与CentOS 7 Systemd本身机制的改变已经是一个全新理念的系统了。平台架构的改变,如果想驾驭它那么需要我们在平时的工作中认真深入研究它的底层原理,如:btrfs、快照、CoW。