初识centos7与centos6的区别整理(内核、命令等)

时间:2021-11-08 09:48:14

CentOS7.2与CentOS6区别及特点

Linux 操作系统的启动首先从 BIOS 开始,接下来进入 boot loader,由 bootloader 载入内核,进行内核初始化。内核初始化的最后一步就是启动 pid 为 1 的 init 进程。这个进程是系统的第一个进程。它负责产生其他所有用户进程。init 以守护进程方式存在,是所有其他进程的祖先。init 进程非常独特,能够完成其他进程无法完成的任务。

Sysvinit就是 system V 风格的 init 系统,Sysvinit 用术语 runlevel 来定义"预订的运行模式"。Sysvinit 检查 '/etc/inittab' 文件中是否含有 'initdefault' 项。 这告诉 init 系统是否有一个默认运行模式。Sysvinit 使用脚本,文件命名规则和软链接来实现不同的 runlevel,串行启动各个进程及服务。

Systemd 是 Linux 系统中最新的初始化系统(init),它主要的设计目标是克服 sysvinit 固有的缺点,提高系统的启动速度。systemd 和 ubuntu 的 upstart 是竞争对手,预计会取代 UpStart。Systemd的目标就是尽可能启动更少的进程,尽可能将更多进程并行启动。

文件系统的区别,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。

2.4Linux网络配置管理

熟悉了常用的命令和Linux权限,那接下来如何让所在的Linux系统上网呢?管理linux服务器网络有哪些命令呢?

Linux服务器默认网卡配置文件在/etc/sysconfig/network-scripts/下,命名的名称一般为:ifcfg-eth0 ifcfg-eth1 ,eth0表示第一块网卡,eth1表示第二块网卡,依次类推。一般DELL R720标配有4块千兆网卡。

初识centos7与centos6的区别

命令 centos6 centos7

备注

ifconfig 有 yum install -ynet-tools  
rouet 有yum install -ynet-tools  
ntpd服务和ntpdate命令 有 yum install ntp ntpdate  
cat /etc/issue 有版本号 无信息,只能查看cat /etc/redhat-release  
setup 能更改网络配置

setup去除了防火墙和网路配置 通过安装

yum install NetworkManager-tui -y

nmtui 命令取代了 setup中的网络配置

 
时区和时间设置 /etc/sysconfig/clock等文件

timedatectl set-timezone Asia/Shanghai

timedatectl status

 
语言等设置 locale -a localectl status  

 

服务管理

chkconfig

/etc/init.d/服务

systemctl

 

 
python 2.6

2.7

 
kernel 2.6 3.10  
网卡 eth0 成为了可预见性的命名规则  
文件系统 ext4 xfs  
dig nslookup命令

yum install bind-utils -y

 
主机名 cat /etc/sysconfig/network cat /etc/hostname  
服务的管理和控制 sysvinit

system

systemctl是最主要的工具。它融合

service 和chkconfig的功能于一体。

 
防火墙 iptables 被firewalld取代  
启动级别

/etc/inittab

不在使用了  
开机执行文件/etc/rc.local 可放置开机要执行的脚本文件

默认这个文件没有执行权限 x

 

官方推荐不使用这个文件(自己写服务),但是你可以加+x继续使用。

 
内核参数配置文件 /etc/sysctl.conf

/usr/lib/sysctl.d/00-system.conf

/etc/sysctl.d/<name>.conf

 
init关机重启命令 init 0 关机 init 0 关机 没变化
切换等级 切回单用户模式 init 0

init 0

systemctl emergency

systemctl isolate runlevel1.target

注意哦 这个别尝试哦,单用户模式只能用终端连接哦,不能使用ssh的哦

安装系统的基本管理工具:

yum install tree net-tools bind-utils tree sysstat vim-en* lrzsz NetworkManager-tui ntp ntpdate iftop tcpdump telnet traceroute -y

centos7中会发现ens330的网卡名字,如何更改成eth0呢

参考:http://jingyan.baidu.com/album/7f41ecec1b022e593d095c1e.html?picindex=5

vim /etc/sysconfig/network-scripts/ifcfg-ens33

cd /etc/sysconfig/network-scripts/

mv ifcfg-ens33 ifcfg-eth0

禁用该可预测命名规则,禁用固件发现网卡名字。/etc/default/grub并加入“net.ifnames=0 biosdevname=0"

vim /etc/default/grub

#运行命令grub2-mkconfig -o /boot/grub2/grub.cfg 来重新生成GRUB配置并更新内核参数。

grub2-mkconfig -o /boot/grub2/grub.cfg #grug2-mkconfig只有centos才用的命令,6中没有。

reboot

系统有优化

一: 关闭sshd提供的ipv6

vim /etc/ssh/sshd_config

#AddressFamily any

AddressFamily inet

注:(inet is ipv4 only; inet6 is ipv6 only)

二:关闭防火强和setlinux

systemctl stop firewalld

setenforce 0

sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config

注意:可以研究下 centos6中被centos7中的firewalld所取代的原因。

firewalld应该是iptable的高级版(但两个提供的写规则管理命令都是iptables)

FirewallD 提供了支持网络/防火墙区域(zone)定义网络链接以及接口安全等级的动态防火墙管理工具。它支持 IPv4, IPv6 防火墙设置以及以太网桥接,并且拥有运行时配置和永久配置选项。它也支持允许服务或者应用程序直接添加防火墙规则的接口。 以前的 system-config-firewall/lokkit 防火墙模型是静态的,每次修改都要求防火墙完全重启。这个过程包括内核 netfilter 防火墙模块的卸载和新配置所需模块的装载等。而模块的卸载将会破坏状态防火墙和确立的连接。

相反,firewall daemon 动态管理防火墙,不需要重启整个防火墙便可应用更改。因而也就没有必要重载所有内核防火墙模块了。不过,要使用 firewall daemon 就要求防火墙的所有变更都要通过该守护进程来实现,以确保守护进程中的状态和内核里的防火墙是一致的。另外,firewall daemon 无法解析由 ip*tables 和 ebtables 命令行工具添加的防火墙规则。

守护进程通过 D-BUS 提供当前激活的防火墙设置信息,也通过 D-BUS 接受使用 PolicyKit 认证方式做的更改。

默认情况下iptables是没有安装的,如果习惯使用iptables可以将firewalld关掉换成iptables。

安装iptable服务

# yum -y install iptables-services

如果你想保存firewall规则的话,使用下面的命令

# iptables-save > iptables-rules.txt

这些规则能加到/etc/sysconfig/iptables文件去,不过我经常会吧这些规则根据自己的喜好修改一下

# systemctl enable iptables

# systemctl enable ip6tables

停止firewalld

# systemctl stop firewalld

禁用firewalld

# systemctl disable firewalld

开启iptable服务

# systemctl start iptables

# systemctl start ip6tables

四:关于网络服务

旧的 network 脚本(service)和 ifcfg 文件

Centos7 开始,网络由 NetworkManager 服务负责管理,相对于旧的 /etc/init.d/network 脚本,NetworkManager 是动态的、事件驱动的网络管理服务。旧的 /etc/init.d/network 以及 ifup,ifdown 等依然存在,但是处于备用状态,即:NetworkManager 运行时,多数情况下这些脚本会调用 NetworkManager 去完成网络配置任务;NetworkManager没有运行时,这些脚本就按照老传统管理网络。

需要注意的是:

1)不建议 systemctl disable NetworkManager.service

2)因为旧的 network 脚本不兼容 ifcfg-* 文件里的新的配置项名称 IPADDR0/PREFIX0/GATEWAY0

3)除非把后面那个 0 去掉,否则开机是无法启动网卡的

CentOS 6和CentOS 7命令区别

(1)桌面系统

[CentOS6] GNOME 2.x

[CentOS7] GNOME 3.x(GNOME Shell)

(2)文件系统

[CentOS6] ext4

[CentOS7] xfs

(3)内核版本

[CentOS6] 2.6.x-x

[CentOS7] 3.10.x-x

(4)启动加载器

[CentOS6] GRUB Legacy (+efibootmgr)

[CentOS7] GRUB2

(5)防火墙

[CentOS6] iptables

[CentOS7] firewalld

(6)默认数据库

[CentOS6] MySQL

[CentOS7] MariaDB

(7)文件结构

[CentOS6] /bin, /sbin, /lib, and /lib64在/下

[CentOS7] /bin, /sbin, /lib, and /lib64移到/usr下

(8)主机名

[CentOS6] /etc/sysconfig/network

[CentOS7] /etc/hostname

(9)时间同步

[CentOS6]

$ ntp

$ ntpq -p

[CentOS7]

$ chrony

$ chronyc sources

(10)修改时间

[CentOS6]

$ vim /etc/sysconfig/clock

ZONE="Asia/Tokyo"

UTC=fales

$ sudo ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

[CentOS7]

$ timedatectl set-timezone Asia/Tokyo

$ timedatectl status

(11)修改地区

[CentOS6]

$ vim /etc/sysconfig/i18n

LANG="ja_JP.utf8"

$ /etc/sysconfig/i18n

$ locale

[CentOS7]

$ localectl set-locale LANG=ja_JP.utf8

$ localectl status

(12)服务相关

1)启动停止

[CentOS6]

$ service service_name start

$ service service_name stop

$ service sshd restart/status/reload

[CentOS7]

$ systemctl start service_name

$ systemctl stop service_name

$ systemctl restart/status/reload sshd

自启动

[CentOS6]

$ chkconfig service_name on/off

[CentOS7]

$ systemctl enable service_name

$ systemctl disable service_name

服务一览

[CentOS6]

$ chkconfig --list

[CentOS7]

$ systemctl list-unit-files

$ systemctl --type service

强制停止

[CentOS6]

$ kill -9

[CentOS7]

$ systemctl kill --signal=9 sshd

(13)网络

1)网络信息

[CentOS6]

$ netstat

$ netstat -I

$ netstat -n

[CentOS7]

$ ip n

$ ip -s l

$ ss

2)IP地址MAC地址

[CentOS6]

$ ifconfig -a

[CentOS7]

$ ip address show

3)路由

[CentOS6]

$ route -n

$ route -A inet6 -n

[CentOS7]

$ ip route show

$ ip -6 route show

(14)重启关闭

1)关闭

[CentOS6]

$ shutdown -h now

[CentOS7]

$ poweroff

$ systemctl poweroff

2)重启

[CentOS6]

$ reboot

$ shutdown -r now

[CentOS7]

$ reboot

$ systemctl reboot

3)单用户模式

[CentOS6]

$ init S

[CentOS7]

$ systemctl rescue

4)启动模式

[CentOS6]

[GUICUI]

$ vim /etc/inittab

id:3:initdefault:

[CUIGUI]

$ startx

[CentOS7]

[GUICUI]

$ systemctl isolate multi-user.target

[CUIGUI]

$systemctl isolate graphical.target

默认

$ systemctl set-default graphical.target

$ systemctl set-default multi-user.target

当前

$ systemctl get-default