CentOS 作为网站服务器操作系统Linux发行版首选,很多站长们应该都不陌生,今天明月就给大家讲讲 CentOS 6 和 CentOS 7 的区别以方便大家做好区分和选择。
一、系统初始化技术演变——开机启动流程
CentOS 6:采用了INIT技术,整个开机过程是自检BIOS——MBR引导——GRUB加载——加载内核——启动INIT进程——读取INITTAB配置文件,根据配置文件指定的模式按顺序来启动进程服务。INIT技术让启动流程很清晰,依赖SHELL脚本。因为启动进程时是按顺序一个一个启动,所以速度慢,会因为某个服务卡住而影响系统的启动。
CentOS 7:采用了systemd技术。这是替代INIT的新技术,采用了并行方式来启动进程,所以启动速度更快,并且兼容INIT的命令以降低迁移成本。
PS:通过ps命令查看PID为1的进程可以得知当前系统所采用的技术
二、网络设置方式的改变
在CentOS 6中让人熟悉的ipconfig在CentOS 7中被ip命令取代了;图形化网络配置工具nmtui取代了setup
三、主机名与字符集
在CentOS 6中要修改主机名可以通过编辑/etc/sysconfig/network文件,但是在CentOS 7中已经废弃这个方式,而使用了/etc/hostname文件。对于临时修改主机名的方式不变,依然是hostname命令。并且CentOS 7中新增了一个主机名管理工具hostnamectl(该工具对文件名的修改是永久有效)。
而对于字符集的修改,CentOS 7使用了新的配置文件/etc/locale.conf来替代/etc/sysconfig/i18n。如果要临时修改字符集的话方式不变,修改LANG变量,如LANG=zh_CN.UTF-8。新增了字符集管理工具localectl,效果和hostnamectl一样。
四、兼容/etc/rc.local
/etc/rc.local文件中记录了需要开机后自动执行的命令,在CentOS 7中该文件虽然已经被废弃,但是也能兼容使用,只需要给该文件赋予可执行权限:
chmod +x /etc/rc.d/rc.local
五、runlevel运行级别的区别
CentOS 6中的/etc/inittab文件是基于init技术实现的,所以在CentOS 7中自然无法使用,但是该文件依然被保留下来,只不过其中的内容已经被替换为引导内容,让用户知道现在如何切换运行级别,由于这个不常用就不继续描写。
六、服务的管理
这是让用户最不爽的修改,增加了systemctl工具,融合了service和chkconfig命令的功能,具体使用方式见图:
systemctl: 融合service和chkconfig的功能于一体
systemctl start crond.service 启动服务
systemctl stop crond.service 停止服务
systemctl restart crond.service 重启服务
systemctl reload crond.service 重载服务
systemctl status crond.service 查看服务运行状态
systemctl list-unit-files 查看所有开机服务
systemctl enable crond.service 开机自启动
systemctl disable crond.service 开机不启动
systemctl is-enabled crond.service 检查是否开机自启动