centos6和centos7的主要区别是什么

2020-10-15 08:28发布

centos6和centos7的主要区别是什么

centos6和centos7的主要区别是什么

6条回答
无需指教
2楼 · 2020-10-15 08:32

 sysvinit技术 VS systemd技术

   CentOS6,采用了sysvinit的技术

 sysvinit技术的特点:

  • 系统第一个进程是init,pid=1(这个大家应该都很熟悉)

  • init进程是所有进程的起源,不可以kill

  • 大多数linux发行版的init系统是和SystemV相兼容的,被称为sysvinit

  • 代表系统是CentOS5

 sysvinit的优缺点

   优点:

  • SysVinitSysVinit SysVinit 运行非常良好,概念简单清晰。它主要依赖于 Shell脚本,一步一步启动(CentOS6的启动过程就是个脚本一个脚本启动)

   缺点:

  • ①按照一定顺序执行 ,启动太慢

  • ②很容易 hang住,fstab与nfs挂载问题

个人 PC 机和移动平台,需要便捷,快的系统,所以此技术不被CentOS7使用

这里引入另一个技术

•     CentOS6 采用了 Upstart 技术代替 sysvinit 进行引导, Upstart 对 rc.sysinit 脚本做了大量的优化,缩短系统初始时启动间。但 是CentOS6 为了简便管理员的操 作, upstart 的很多特性并没有凸显或者 直接不支持,因此在 CentOS6 中的服务启动脚本还是以原来 SysV 的形式 提供的。

•      But ,一个应运而生的技术却因为竞争对手太强大被淘汰。

•      代表系统: CentOS6 ,Ubuntu14 ,从 CentOS7 ,Ubuntu15 开始使用 systemd


以上所述是CentOS6的启动技术


CentOS7使用的是systemd

     • 新系统都会采用的技术( RedHat7 ,CentOS7 ,Ubuntu15 等);

     • 设计目标是克服 sysvinit 固有的缺点,提高系统启动速度;

     • 和 Sysvinit 兼容,降低迁移成本;

     • 最主要优点:并行启动

     • Pid 为1的进程是systemd

什么是并发启动,并发启动的原理

     • 解决 socket 依赖 /端口依赖:系统会在服务启动之前先创建了socket供依赖服务查看,而真正的服务启动后直接使用此socket就可以了

     image.png

• 采用了 D-Bus 作为程序之间的通信工具,类似消息队列,可以缓存信息,例如A服务发送请求时向B服务的socket,其实B服务此时还没有启动,这里就要用D-Bus先缓存,

   B服务启动后再读取

image.png

• 解决文件系统依赖:优先启动要用的,其余都延迟启动加载。例如:先启动/ 或者/boot 挂载目录等开机后再启动或者用的时候再启动

image.png

以下是三种技术的启动方式

image.png


区别二


网卡名称变更:

     传统上, Linux 的网络接口名称为 的网络接口名称为 eth0 、eth1… ,但这些名称并不一定符合实际的硬件插槽等,这可能会导致同网络配置错误(例如,由无意的接口改名引起禁止接口)。 基于 MAC 地址的 udev 规则在虚拟化的环境中并不有用,这里规则在虚拟化的环境中并不有用,这里 的MAC 地址如端口数量一样无常。

    如果说,eth0网卡坏了,那么换一个网卡,就不会叫eth0了,因为服务器是根据网卡的mac地址分别的,那么换的网卡可能叫eth3

    而CentOS7,是根据网卡的插槽命名的,一般不会有变化.

    但是用习惯了eth0我们也是可以更改的,

    • 在安装系统的时候配置:修改内核选项, net.ifnames =0 biosdevname =0


区别三


网络配置相关命令:

   CentOS7主推使用ip,ss命令.  所以我们用习惯的像ifconfig,netstat,route.....这些命令就没有了,不过很神奇的是,CentOS7.4的时候又回来了,不过本文讲的是7.2的系统

   我们再安装这些命令

   yum -y install net-tools

   至于setup,可以用nmtui代替    


区别四

• 修改主机名

   hostname CentOS7 临时生效

   编辑 /etc/hostname 主机名的配置文件变了 不再是/etc/sysconfig/network了

   hostnamectl set -hostname   #→方法 2,本质还是改配置文件

• 修改字符集

   localectl set -locale zh_CN. UTF-8

   编辑 /etc /locale.conf

• cat  /etc/redhat-release 查看系统版本号

• cat  /etc/os -release  所有支持 systemd系统的一发行版名称和本号文件。


区别五


CentOS7里不推荐使用/etc/rc.local,但是如果要使用,必须加

   chmod +x /etc/rc.d/rc.local

   加执行权限,才可以正常使用


区别六


运行级别:Runlevel

    不再使用熟知的1,2,3,4....这些数字运行级别

    如果想查看启动级别使用:systemctl get-default

    设置启动级别:systemctl  set-default multi-user.target

    运行级别可以通过:

    [root@m01 tftpboot]# ls -lh /usr/lib/systemd/system/runlevel*.target

    lrwxrwxrwx 1 root root 15 Mar  1 18:53 /usr/lib/systemd/system/runlevel0.target -> poweroff.target

    lrwxrwxrwx 1 root root 13 Mar  1 18:53 /usr/lib/systemd/system/runlevel1.target -> rescue.target

    lrwxrwxrwx 1 root root 17 Mar  1 18:53 /usr/lib/systemd/system/runlevel2.target -> multi-user.target

    lrwxrwxrwx 1 root root 17 Mar  1 18:53 /usr/lib/systemd/system/runlevel3.target -> multi-user.target

    lrwxrwxrwx 1 root root 17 Mar  1 18:53 /usr/lib/systemd/system/runlevel4.target -> multi-user.target

    lrwxrwxrwx 1 root root 16 Mar  1 18:53 /usr/lib/systemd/system/runlevel5.target -> graphical.target

    lrwxrwxrwx 1 root root 13 Mar  1 18:53 /usr/lib/systemd/system/runlevel6.target -> reboot.target

    其实修改运行级别就是修改软链接


区别七


   管理服务:

   CentOS6使用:

   chkconfig  或 /etc/init 和 service

   CentOS7使用:

   systemctl进行了统一,兼容 SysV 和LSB的启动脚本,而且能够在进程启动过程中更有效的引导加载服务

   image.png


最后附加一个命令

systemd-analyze time         查看开机时间

systemd-analyze blame     查看各服务开机启动的时间

systemd-analyze plot > bootime.svg 生成图形界面(需要使用浏览器查看)

可以通过统计的信息,管理服务



有点好奇
3楼 · 2020-10-15 08:44

Centos6.x普遍采用 ext3\ext4文件系统格式,而centos7默认采用xfs格式:EXT3 支持的最大 16TB 文件系统和最大 2TB 文件;Ext4 分别支持 1EB(1,048,576TB, 1EB=1024PB, 1PB=1024TB)的文件系统,以及 16TB 的文件。Ext3 目前只支持 32,000个子目录,而 Ext4 支持无限数量的子目录。EXT4是第四代扩展文件系统(英语:Fourth EXtended filesystem,缩写为ext4)是Linux系统下的日志文件系统,是ext3文件系统的后继版本。Ext4的文件系统容量达到1EB,而单个文件容量则达到16TB,这是一个非常大的数字了。对一般的台式机和服务器而言,这可能并不重要,但对于大型磁盘阵列的用户而言,这就非常重要;(磁盘结构原因Ext4 的inode 个数限制(32位数)最多只能有大概40多亿文件,而且Ext4的单个文件大小最大只能支持到16T(4K block size) )XFS是一个64位文件系统,最大支持8EB减1字节的单个文件系统,实际部署时取决于宿主操作系统的最大块限制。对于一个32位Linux系统,文件和文件系统的大小会被限制在16TB。

1、  文件系统的区别。CentOS6默认使用的是ext4的文件系统,而CentOS7使用的是xfs。

2、  硬盘默认调度算法不一样。CentOS6默认使用的是cfq,而CentOS7使用的是deadline。

3、  内核版本不一样。CentOS6使用的是2.6,CentOS7使用的是3.10

4、  在CentOS7中,支持动态补丁机制kpatch和btrfs文件系统(技术预览)

5、  在CentOS7中,支持内核模块黑名单机制:modproble.blacklist=module

6、  在CentOS7中,支持嵌套虚拟化技术,对虚拟机CPU更流畅

7、  在CentOS7中,内核支持资源调优和分配(cgroup)

8、  CentOS6支持USB2.0,CentOS7支持USB3.0

9、  lvm快照。在CentOS7中支持qcow2格式文件型快照

10、加强了对VMware的技术支持。自带open-vmtools替换vm-tools

11、启动工具。在CentOS7中用的全新服务启动管理器systemctl,在CentOS6做服务的启停用service

12、在CentOS7中内核出现错误,导出core文件最大支持3TB,CentOS6中最大支持2TB

爱梦 - 拿来吧你
5楼 · 2021-10-19 11:09

系统类型

centos6的系统类型是sysvinit

centos7的系统类型是systemd

可以通过pstree -p查看系统类型,centos6的第一个进程是init(pid=1),centos7的第一个进程为systemd(pid=1)



centos6是按一定顺序启动,启动很慢;centos7是并行启动,启动速度快

其实centos6和7很多不同之处都是和系统类型sysvinit/systemd有关系。


1.服务管理

centos6 采用 service和chconfig管理服务

centos7 采用systemctl 管理服务,但是还可以使用service和chkconfig命令

下面以sshd服务为实例


sysvinit命令 systemd命令 备注

service sshd start/stop/restart/status systemctl start/stop/restart/status sshd 服务的开始/停止/重启/状态

service sshd reload systemctl reload sshd 重启读取配置文件(不停掉服务)

chkconfig sshd on/off systemctl enable/disable sshd 服务开机自启/不开机自启

chkconfig --list systemtcl list-unit-files 查看所有服务开机自启动或者禁止情况

chkconfig --list sshd systemctl is-enabled sshd 查看单个服务是否开机自启

chkconfig --add sshd systemctl daemon-reload 修改服务文件(不是配置文件)后,重新加载服务

centos7查看系统开机时间占用(优化开机)

systemd-analyze time

systemd-analyze blame


注:时间同步:centos6使用ntp,centos7使用chrony(以可以使用ntp)ntpq -p 或者 chronyc sources

防火墙 :centos使用iptables ,centos7使用firewall

2.网络管理

2.1 网卡名

centos6网卡名是eth0,centos7网卡名,接口名称被自动基于固件,拓扑结构和位置信息来确定,现在即使添加或移除网络设备,接口名称仍然保持固定,而无需重新枚举,和坏掉的硬件可以无缝替换。可以在centos7的 /etc/default/grub 的GRUB_CMDLINE_LINUX的双引号内添加“net.ifnames=0 biosdevname=0”grub2-mkconfig -o /etc/grub2.cfg,再把网卡配置文件/etc/sysconfig/network-scripts/ifcfg-xxx修改后,重启即可。


2.2 网络配置命令

在CentOS 6中的ifconfig,在CentOS 7中被ip命令取代了(不过现在ifconfig和ip都可以使用);

图形化网络配置工具nmtui取代了setup。


2.3 网络服务

centos6使用/etc/init.d/network服务,centos7新增加了NetworkManager服务,network仍然作为备用使用


==============================================================


3.主机名等系统文件

**3.1 主机名 **

centos 6 的配置文件为/etc/sysconfig/network(永久设置)


centos7的配置文件为/etc/hostname(永久设置)


centos7还可以使用命令永久设置,hostnamectl set-hostname centos7 # hostnamectl是新增的主机名管理工具

centos6和7,都可以使用hostname临时设置主机名,如hostname centos (重启后失效)

3.2 查看系统版本

redhat系列的(centos)都可以使用cat /etc/redhat-release



centos7还可以cat /etc/os-release #支持所有systemd系统的统一发行版本名称和版本号文件,测试ubuntu16和18都可以使用这样参看


注:还可以使用cat /proc/version查看系统版本

3.3 登录提示语

cat /etc/issue #很多生产环境会清空此文件



**3.4 字符集 **

centos7的/etc/locale.conf 替换了centos6的/etc/sysconfig/i18n



centos7还可以使用字符集管理工具localectl设置,localectl set-locale.UTF-8 #localectl是新增的字符集管理工具

3.5 时区设置

centos6 在/etc/sysconfig/clock centos7没有此配置文件 ,可以使用timedatectl来设置


timedatectl set-timezone Asia/Shanghai


3.6 grub(GRand Unified Bootloader)

centos6 使用grub, centos7使用grub2

配置文件的名称改变了。在grub中,配置文件为grub.conf或menu.lst(grub.conf的一个软链接),在grub2中改名为grub.cfg。

3.7 内核

centos6的内核版本是2.6.X , centos7的内核版本是3.10.x,使用uname -r查看



内核配置文件 /etc/sysctl.conf和/etc/sysctl.d/*.conf


** 3.8 文件系统**

centos的文件系统默认是ext4(Fourth EXtended filesystem),centos7的文件系统默认是xfs

xfs是扩展性高、高性能的文件系统。可通过工具xfsdump和xfsrestore来备份和恢复xfs文件系统,

ext3 支持的最大 16TB 文件系统和最大 2TB 文件

ext4 分别支持1EB(1,048,576TB, 1EB=1024PB, 1PB=1024TB)的文件系统,以及 16TB (4K block size)的文件。ext3 目前只支持 32,000个子目录,而 ext4 支持无限数量的子目录。

xfs是一个64位文件系统,最大支持8EB减1字节的单个文件系统,实际部署时取决于宿主操作系统的最大块限制。对于一个32位Linux系统,文件和文件系统的大小会被限制在16TB。

可以使用blkid /dev/sda1 查看文件系统


3.9 文件结构变化

centos6的/bin, /sbin, /lib, and /lib64在/下

centos7的/bin, /sbin, /lib, and /lib64移到/usr下



慢半拍
6楼 · 2021-10-20 10:33

区别1:网卡名称eth0和enp5s0

传统的Linux的网络接口命令为为eth0、eth1.从CentOS7/RHEL7起,引入了一致和可预测的网络设备命名网络接口的方法。即使添加或移除网络设备,接口名称仍然保持固定,而无需重新枚举,和坏掉的硬件可以无缝替换。CentOS7修改网卡名称为eth0,只适合第一次安装,很繁琐自动化安装时,直接配置


区别2:网络配置相关命令

 ip: yum -y install iproute  CentOS7主推使用ip命令。     
  ifconfig: yum -y install net-tools      
  setup: yum -y install setuptool 废弃命令     
   nmtui:替代 setup 命令

安装完改网卡名字,没用


区别3:主机名与字符集

修改主机名

   hostname CentOS7          
   /etc/hostname          
   hostnamectl set-hostname CentOS7

修改字符集

   LANG=zh_CN.UTF-8           
   /etc/locale.conf           
   localectl set-locale.UTF-8

区别4:兼容的/etc/rc.local

Please note that you must run ' chmod +x /etc/rc.d/rc.local' to ensure that this script will be executed during boot.简单介绍CentOS6和CentOS7的异同简单介绍CentOS6和CentOS7的异同

[root@lewen ~]# systemctl get-default multi-user.target


天天
7楼 · 2021-10-29 11:59

centos7的内核用的是3.10

centos6的内核用的是2.6


文件系统

centos6.X:EXT4

Ext4的单个文件系统容量达到1EB,单个文件大小则达到16TB


centos7.x:XFS

XFS默认支持8EB见1字节的单个文件系统,最大可支持的文件大小为9EB,最大文件系统尺寸为18EB


防火墙

centos6.X :iptables

centos7.X:firealld(其实centos7.x也支持iptables,只是默认安装的是firewalld,一般现在的操作是卸载掉firewalld,然后安装iptables)


数据库

centos6.x默认数据库是:Mysql

centos7.x默认属库是:MariaDB


时间同步

centos 6.X:ntpq -p (多台服务器需要连接时间服务器,这个时候时间是有细微差异的,就需要执行这个命令.到时候自己搭建时间服务器)

centos 7.x:chronyc sources


修改时区(一般而言安装的时候已经设置过了)

centsos6.x: /etc/sysconfig/clock(临时修改)这里直接用vi /etc/sysconfig/clock 修改这个配置文件

centos7.X:timedatectl set-timezone Asia/Shanghai(几乎是永久修改,你这个就配置文件就同步了)

timedatectl 这是查看

然后timedatectl set-timezone Asia/Shanghai 来进行修改


修改语言

centos6.X:/etc/sysconfig/i18n(这个是配置修改)

centos7.X:localectl set-locale.UTF-8(这个是命令修改)

localectl 这个是查看。


主机名

centos6.x 配置文件为: /etc/sysconfig/network (永久配置文件设置)

centos7.x 配置文件为: /etc/hostname(永久配置文件设置)

hostname 是查看

centos7x里面还可以使用命令的方式永久设置

hostnamectl set-hostname liufei


相关问题推荐

  • 什么是大数据时代?2021-01-13 21:23
    回答 100

    大数据(big data)一词越来越多地被提及,人们用它来描述和定义信息爆炸时代产生的海量数据,而这个海量数据的时代则被称为大数据时代。随着云时代的来临,大数据(Big data)也吸引了越来越多的关注。大数据(Big data)通常用来形容一个公司创造的大量非结...

  • 回答 84

    Java和大数据的关系:Java是计算机的一门编程语言;可以用来做很多工作,大数据开发属于其中一种;大数据属于互联网方向,就像现在建立在大数据基础上的AI方向一样,他两不是一个同类,但是属于包含和被包含的关系;Java可以用来做大数据工作,大数据开发或者...

  • 回答 52
    已采纳

    学完大数据可以从事很多工作,比如说:hadoop 研发工程师、大数据研发工程师、大数据分析工程师、数据库工程师、hadoop运维工程师、大数据运维工程师、java大数据工程师、spark工程师等等都是我们可以从事的工作岗位!不同的岗位,所具备的技术知识也是不一样...

  • 回答 29

    简言之,大数据是指大数据集,这些数据集经过计算分析可以用于揭示某个方面相关的模式和趋势。大数据技术的战略意义不在于掌握庞大的数据信息,而在于对这些含有意义的数据进行专业化处理。大数据的特点:数据量大、数据种类多、 要求实时性强、数据所蕴藏的...

  • 回答 14

    tail -f的时候,发现一个奇怪的现象,首先 我在一个窗口中 tail -f test.txt 然后在另一个窗口中用vim编辑这个文件,增加了几行字符,并保存,这个时候发现第一个窗口中并没有变化,没有将最新的内容显示出来。tail -F,重复上面的实验过程, 发现这次有变化了...

  • 回答 18

    您好针对您的问题,做出以下回答,希望有所帮助!1、大数据行业还是有非常大的人才需求的,对于就业也有不同的岗位可选,比如大数据工程师,大数据运维,大数据架构师,大数据分析师等等,就业难就难在能否找到适合的工作,能否与你的能力和就业预期匹配。2、...

  • 回答 17

    最小的基本单位是Byte应该没多少人不知道吧,下面先按顺序给出所有单位:Byte、KB、MB、GB、TB、PB、EB、ZB、YB、DB、NB,按照进率1024(2的十次方)计算:1Byte = 8 Bit1 KB = 1,024 Bytes 1 MB = 1,024 KB = 1,048,576 Bytes 1 GB = 1,024 MB = 1,048,576...

  • 回答 33

    大数据的定义。大数据,又称巨量资料,指的是所涉及的数据资料量规模巨大到无法通过人脑甚至主流软件工具,在合理时间内达到撷取、管理、处理、并整理成为帮助企业经营决策更积极目的的资讯。大数据是对大量、动态、能持续的数据,通过运用新系统、新工具、新...

  • 回答 5

    MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL的版本:针对不同的用户,MySQL分为两种不同的版本:MySQL Community Server社区版本,免费,但是Mysql不提供...

  • mysql安装步骤mysql 2022-05-07 18:01
    回答 2

    mysql安装需要先使用yum安装mysql数据库的软件包 ;然后启动数据库服务并运行mysql_secure_installation去除安全隐患,最后登录数据库,便可完成安装

  • 回答 5

    1.查看所有数据库showdatabases;2.查看当前使用的数据库selectdatabase();3.查看数据库使用端口showvariableslike'port';4.查看数据库编码showvariableslike‘%char%’;character_set_client 为客户端编码方式; character_set_connection 为建立连接...

  • 回答 5

    CREATE TABLE IF NOT EXISTS `runoob_tbl`(    `runoob_id` INT UNSIGNED AUTO_INCREMENT,    `runoob_title` VARCHAR(100) NOT NULL,    `runoob_author` VARCHAR(40) NOT NULL,    `submission_date` DATE,    PRI...

  • 回答 9

    学习多久,我觉得看你基础情况。1、如果原来什么语言也没有学过,也没有基础,那我觉得最基础的要先选择一种语言来学习,是VB,C..,pascal,看个人的喜好,一般情况下,选择C语言来学习。2、如果是有过语言的学习,我看应该一个星期差不多,因为语言的理念互通...

  • 回答 7

    添加语句 INSERT插入语句:INSERT INTO 表名 VALUES (‘xx’,‘xx’)不指定插入的列INSERT INTO table_name VALUES (值1, 值2,…)指定插入的列INSERT INTO table_name (列1, 列2,…) VALUES (值1, 值2,…)查询插入语句: INSERT INTO 插入表 SELECT * FROM 查...

  • 回答 5

    看你什么岗位吧。如果是后端,只会CRUD。应该是可以找到实习的,不过公司应该不会太好。如果是数据库开发岗位,那这应该是不会找到的。

  • 回答 7

    查找数据列 SELECT column1, column2, … FROM table_name; SELECT column_name(s) FROM table_name 

没有解决我的问题,去提问