初识centos7与centos6的区别整理(内核、命令等)
<p><strong>CentOS7.2与CentOS6区别及特点</strong></p>
<p>
Linux 操作系统的启动首先从 BIOS 开始,接下来进入 boot loader,由 bootloader 载入内核,进行内核初始化。内核初始化的最后一步就是启动 pid 为 1 的 init 进程。这个进程是系统的第一个进程。它负责产生其他所有用户进程。init 以守护进程方式存在,是所有其他进程的祖先。init 进程非常独特,能够完成其他进程无法完成的任务。</p>
<p>
Sysvinit就是 system V 风格的 init 系统,Sysvinit 用术语 runlevel 来定义"预订的运行模式"。Sysvinit 检查 '/etc/inittab' 文件中是否含有 'initdefault' 项。 这告诉 init 系统是否有一个默认运行模式。Sysvinit 使用脚本,文件命名规则和软链接来实现不同的 runlevel,串行启动各个进程及服务。</p>
<p>
Systemd 是 Linux 系统中最新的初始化系统(init),它主要的设计目标是克服 sysvinit 固有的缺点,提高系统的启动速度。systemd 和 ubuntu 的 upstart 是竞争对手,预计会取代 UpStart。Systemd的目标就是尽可能启动更少的进程,尽可能将更多进程并行启动。</p>
<p>
文件系统的区别,Centos6.x普遍采用 ext3\ext4文件系统格式,而centos7默认采用xfs格式:</p>
<p>
EXT3 支持的最大 16TB 文件系统和最大 2TB 文件,Ext4 分别支持</p>
<p>
1EB(1,048,576TB, 1EB=1024PB, 1PB=1024TB)的文件系统,以及 16TB 的文件。Ext3 目前只支持 32,000个子目录,而 Ext4 支持无限数量的子目录。</p>
<p>
EXT4是第四代扩展文件系统(英语:Fourth EXtended filesystem,缩写为ext4)是Linux系统下的日志文件系统,是ext3文件系统的后继版本。</p>
<p>
Ext4的文件系统容量达到1EB,而单个文件容量则达到16TB,这是一个非常大的数字了。对一般的台式机和服务器而言,这可能并不重要,但对于大型磁盘阵列的用户而言,这就非常重要;(磁盘结构原因Ext4 的inode 个数限制(32位数)最多只能有大概40多亿文件,而且Ext4的单个文件大小最大只能支持到16T(4K block size) )</p>
<p>
XFS是一个64位文件系统,最大支持8EB减1字节的单个文件系统,实际部署时取决于宿主操作系统的最大块限制。对于一个32位Linux系统,文件和文件系统的大小会被限制在16TB。</p>
<p>
2.4Linux网络配置管理</p>
<p>
熟悉了常用的命令和Linux权限,那接下来如何让所在的Linux系统上网呢?管理linux服务器网络有哪些命令呢?</p>
<p>
Linux服务器默认网卡配置文件在/etc/sysconfig/network-scripts/下,命名的名称一般为:ifcfg-eth0 ifcfg-eth1 ,eth0表示第一块网卡,eth1表示第二块网卡,依次类推。一般DELL R720标配有4块千兆网卡。</p>
<p>
<strong>初识centos7与centos6的区别</strong></p>
<table background-color:="" hanhei="" helvetica="" hiragino="" lantinghei="" micro="" microsoft="" open="" pingfang="" sans="" text-align:="" wenquanyi=""><tbody>
<tr>
<td>
命令</td>
<td>
centos6</td>
<td>
centos7</td>
<td>
<p>
备注</p>
</td>
</tr>
<tr>
<td>
ifconfig</td>
<td>
有</td>
<td>
有 yum install -ynet-tools</td>
<td>
</td>
</tr>
<tr>
<td>
rouet</td>
<td>
有</td>
<td>
有yum install -ynet-tools</td>
<td>
</td>
</tr>
<tr>
<td>
ntpd服务和ntpdate命令</td>
<td>
有</td>
<td>
有 yum install ntp ntpdate</td>
<td>
</td>
</tr>
<tr>
<td>
cat /etc/issue</td>
<td>
有版本号</td>
<td>
无信息,只能查看cat /etc/redhat-release</td>
<td>
</td>
</tr>
<tr>
<td>
setup</td>
<td>
能更改网络配置</td>
<td>
<p>
setup去除了防火墙和网路配置 通过安装</p>
<p>
yum install NetworkManager-tui -y</p>
<p>
nmtui 命令取代了 setup中的网络配置</p>
</td>
<td>
</td>
</tr>
<tr>
<td>
时区和时间设置</td>
<td>
/etc/sysconfig/clock等文件</td>
<td>
<p>
timedatectl set-timezone Asia/Shanghai</p>
<p>
timedatectl status</p>
</td>
<td>
</td>
</tr>
<tr>
<td>
语言等设置</td>
<td>
locale -a</td>
<td>
localectl status</td>
<td>
</td>
</tr>
<tr>
<td>
<p>
</p>
<p>
服务管理</p>
</td>
<td>
<p>
chkconfig</p>
<p>
/etc/init.d/服务</p>
</td>
<td>
<p>
systemctl</p>
<p>
</p>
</td>
<td>
</td>
</tr>
<tr>
<td>
python</td>
<td>
2.6</td>
<td>
<p>
2.7</p>
</td>
<td>
</td>
</tr>
<tr>
<td>
kernel</td>
<td>
2.6</td>
<td>
3.10</td>
<td>
</td>
</tr>
<tr>
<td>
网卡</td>
<td>
eth0</td>
<td>
成为了可预见性的命名规则</td>
<td>
</td>
</tr>
<tr>
<td>
文件系统</td>
<td>
ext4</td>
<td>
xfs</td>
<td>
</td>
</tr>
<tr>
<td>
dig nslookup命令</td>
<td>
有</td>
<td>
<p>
有</p>
<p>
yum install bind-utils -y</p>
</td>
<td>
</td>
</tr>
<tr>
<td>
主机名</td>
<td>
cat /etc/sysconfig/network</td>
<td>
cat /etc/hostname</td>
<td>
</td>
</tr>
<tr>
<td>
服务的管理和控制</td>
<td>
sysvinit</td>
<td>
<p>
system</p>
<p>
systemctl是最主要的工具。它融合</p>
<p>
service 和chkconfig的功能于一体。</p>
</td>
<td>
</td>
</tr>
<tr>
<td>
防火墙</td>
<td>
iptables</td>
<td>
被firewalld取代</td>
<td>
</td>
</tr>
<tr>
<td>
启动级别</td>
<td>
<h3>
/etc/inittab</h3>
</td>
<td>
不在使用了</td>
<td>
</td>
</tr>
<tr>
<td>
开机执行文件/etc/rc.local</td>
<td>
可放置开机要执行的脚本文件</td>
<td>
<p>
默认这个文件没有执行权限 x</p>
<p>
</p>
<p>
官方推荐不使用这个文件(自己写服务),但是你可以加+x继续使用。</p>
</td>
<td>
</td>
</tr>
<tr>
<td>
内核参数配置文件</td>
<td>
/etc/sysctl.conf</td>
<td>
<p>
/usr/lib/sysctl.d/00-system.conf</p>
<p>
和</p>
<p>
/etc/sysctl.d/<name>.conf</p>
</td>
<td>
</td>
</tr>
<tr>
<td>
init关机重启命令</td>
<td>
init 0 关机</td>
<td>
init 0 关机</td>
<td>
没变化</td>
</tr>
<tr>
<td>
切换等级</td>
<td>
切回单用户模式 init 0</td>
<td>
<p>
init 0</p>
<p>
systemctl emergency</p>
<p>
systemctl isolate runlevel1.target</p>
</td>
<td>
注意哦 这个别尝试哦,单用户模式只能用终端连接哦,不能使用ssh的哦</td>
</tr>
</tbody></table>
<p>
安装系统的基本管理工具:</p>
<p>
yum install tree net-tools bind-utils tree sysstat vim-en* lrzsz NetworkManager-tui ntp ntpdate iftop tcpdump telnet traceroute -y</p>
<p>
centos7中会发现ens330的网卡名字,如何更改成eth0呢</p>
<p>
参考:http://jingyan.baidu.com/album/7f41ecec1b022e593d095c1e.html?picindex=5</p>
<p>
vim /etc/sysconfig/network-scripts/ifcfg-ens33</p>
<p>
cd /etc/sysconfig/network-scripts/</p>
<p>
mv ifcfg-ens33 ifcfg-eth0</p>
<p>
禁用该可预测命名规则,禁用固件发现网卡名字。/etc/default/grub并加入“net.ifnames=0 biosdevname=0"</p>
<p>
vim /etc/default/grub</p>
<p>
#运行命令grub2-mkconfig -o /boot/grub2/grub.cfg 来重新生成GRUB配置并更新内核参数。</p>
<p>
grub2-mkconfig -o /boot/grub2/grub.cfg #grug2-mkconfig只有centos才用的命令,6中没有。</p>
<p>
reboot</p>
<p>
<strong>系统有优化</strong></p>
<p>
一: 关闭sshd提供的ipv6</p>
<p>
vim /etc/ssh/sshd_config</p>
<p>
#AddressFamily any</p>
<p>
AddressFamily inet</p>
<p>
注:(inet is ipv4 only; inet6 is ipv6 only)</p>
<p>
<strong>二:关闭防火强和setlinux</strong></p>
<p>
systemctl stop firewalld</p>
<p>
setenforce 0</p>
<p>
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config</p>
<p>
注意:可以研究下 centos6中被centos7中的firewalld所取代的原因。</p>
<p>
firewalld应该是iptable的高级版(但两个提供的写规则管理命令都是iptables)</p>
<p>
FirewallD 提供了支持网络/防火墙区域(zone)定义网络链接以及接口安全等级的动态防火墙管理工具。它支持 IPv4, IPv6 防火墙设置以及以太网桥接,并且拥有运行时配置和永久配置选项。它也支持允许服务或者应用程序直接添加防火墙规则的接口。 以前的 system-config-firewall/lokkit 防火墙模型是静态的,每次修改都要求防火墙完全重启。这个过程包括内核 netfilter 防火墙模块的卸载和新配置所需模块的装载等。而模块的卸载将会破坏状态防火墙和确立的连接。</p>
<p>
相反,firewall daemon 动态管理防火墙,不需要重启整个防火墙便可应用更改。因而也就没有必要重载所有内核防火墙模块了。不过,要使用 firewall daemon 就要求防火墙的所有变更都要通过该守护进程来实现,以确保守护进程中的状态和内核里的防火墙是一致的。另外,firewall daemon 无法解析由 ip*tables 和 ebtables 命令行工具添加的防火墙规则。</p>
<p>
守护进程通过 D-BUS 提供当前激活的防火墙设置信息,也通过 D-BUS 接受使用 PolicyKit 认证方式做的更改。</p>
<p>
默认情况下iptables是没有安装的,如果习惯使用iptables可以将firewalld关掉换成iptables。</p>
<p>
安装iptable服务</p>
<p>
# yum -y install iptables-services</p>
<p>
如果你想保存firewall规则的话,使用下面的命令</p>
<p>
# iptables-save > iptables-rules.txt</p>
<p>
这些规则能加到/etc/sysconfig/iptables文件去,不过我经常会吧这些规则根据自己的喜好修改一下</p>
<p>
# systemctl enable iptables</p>
<p>
# systemctl enable ip6tables</p>
<p>
停止firewalld</p>
<p>
# systemctl stop firewalld</p>
<p>
禁用firewalld</p>
<p>
# systemctl disable firewalld</p>
<p>
开启iptable服务</p>
<p>
# systemctl start iptables</p>
<p>
# systemctl start ip6tables</p>
<p>
<strong>四:关于网络服务</strong></p>
<p>
旧的 network 脚本(service)和 ifcfg 文件</p>
<p>
Centos7 开始,网络由 NetworkManager 服务负责管理,相对于旧的 /etc/init.d/network 脚本,NetworkManager 是动态的、事件驱动的网络管理服务。旧的 /etc/init.d/network 以及 ifup,ifdown 等依然存在,但是处于备用状态,即:NetworkManager 运行时,多数情况下这些脚本会调用 NetworkManager 去完成网络配置任务;NetworkManager没有运行时,这些脚本就按照老传统管理网络。</p>
<p>
<strong>需要注意的是:</strong></p>
<p>
1)不建议 systemctl disable NetworkManager.service</p>
<p>
2)因为旧的 network 脚本不兼容 ifcfg-* 文件里的新的配置项名称 IPADDR0/PREFIX0/GATEWAY0</p>
<p>
3)除非把后面那个 0 去掉,否则开机是无法启动网卡的</p>
<p>
<strong>CentOS 6和CentOS 7命令区别</strong></p>
<p>
(1)桌面系统</p>
<p>
GNOME 2.x</p>
<p>
GNOME 3.x(GNOME Shell)</p>
<p>
(2)文件系统</p>
<p>
ext4</p>
<p>
xfs</p>
<p>
(3)内核版本</p>
<p>
2.6.x-x</p>
<p>
3.10.x-x</p>
<p>
(4)启动加载器</p>
<p>
GRUB Legacy (+efibootmgr)</p>
<p>
GRUB2</p>
<p>
(5)防火墙</p>
<p>
iptables</p>
<p>
firewalld</p>
<p>
(6)默认数据库</p>
<p>
MySQL</p>
<p>
MariaDB</p>
<p>
(7)文件结构</p>
<p>
/bin, /sbin, /lib, and /lib64在/下</p>
<p>
/bin, /sbin, /lib, and /lib64移到/usr下</p>
<p>
(8)主机名</p>
<p>
/etc/sysconfig/network</p>
<p>
/etc/hostname</p>
<p>
(9)时间同步</p>
<p>
</p>
<p>
$ ntp</p>
<p>
$ ntpq -p</p>
<p>
</p>
<p>
$ chrony</p>
<p>
$ chronyc sources</p>
<p>
(10)修改时间</p>
<p>
</p>
<p>
$ vim /etc/sysconfig/clock</p>
<p>
ZONE="Asia/Tokyo"</p>
<p>
UTC=fales</p>
<p>
$ sudo ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime</p>
<p>
</p>
<p>
$ timedatectl set-timezone Asia/Tokyo</p>
<p>
$ timedatectl status</p>
<p>
(11)修改地区</p>
<p>
</p>
<p>
$ vim /etc/sysconfig/i18n</p>
<p>
LANG="ja_JP.utf8"</p>
<p>
$ /etc/sysconfig/i18n</p>
<p>
$ locale</p>
<p>
</p>
<p>
$ localectl set-locale LANG=ja_JP.utf8</p>
<p>
$ localectl status</p>
<p>
(12)服务相关</p>
<p>
1)启动停止</p>
<p>
</p>
<p>
$ service service_name start</p>
<p>
$ service service_name stop</p>
<p>
$ service sshd restart/status/reload</p>
<p>
</p>
<p>
$ systemctl start service_name</p>
<p>
$ systemctl stop service_name</p>
<p>
$ systemctl restart/status/reload sshd</p>
<p>
自启动</p>
<p>
</p>
<p>
$ chkconfig service_name on/off</p>
<p>
</p>
<p>
$ systemctl enable service_name</p>
<p>
$ systemctl disable service_name</p>
<p>
服务一览</p>
<p>
</p>
<p>
$ chkconfig --list</p>
<p>
</p>
<p>
$ systemctl list-unit-files</p>
<p>
$ systemctl --type service</p>
<p>
强制停止</p>
<p>
</p>
<p>
$ kill -9 <pid></pid></p>
<p>
</p>
<p>
$ systemctl kill --signal=9 sshd</p>
<p>
(13)网络</p>
<p>
1)网络信息</p>
<p>
</p>
<p>
$ netstat</p>
<p>
$ netstat -I</p>
<p>
$ netstat -n</p>
<p>
</p>
<p>
$ ip n</p>
<p>
$ ip -s l</p>
<p>
$ ss</p>
<p>
2)IP地址MAC地址</p>
<p>
</p>
<p>
$ ifconfig -a</p>
<p>
</p>
<p>
$ ip address show</p>
<p>
3)路由</p>
<p>
</p>
<p>
$ route -n</p>
<p>
$ route -A inet6 -n</p>
<p>
</p>
<p>
$ ip route show</p>
<p>
$ ip -6 route show</p>
<p>
(14)重启关闭</p>
<p>
1)关闭</p>
<p>
</p>
<p>
$ shutdown -h now</p>
<p>
</p>
<p>
$ poweroff</p>
<p>
$ systemctl poweroff</p>
<p>
2)重启</p>
<p>
</p>
<p>
$ reboot</p>
<p>
$ shutdown -r now</p>
<p>
</p>
<p>
$ reboot</p>
<p>
$ systemctl reboot</p>
<p>
3)单用户模式</p>
<p>
</p>
<p>
$ init S</p>
<p>
</p>
<p>
$ systemctl rescue</p>
<p>
4)启动模式</p>
<p>
</p>
<p>
</p>
<p>
$ vim /etc/inittab</p>
<p>
id:3:initdefault:</p>
<p>
</p>
<p>
$ startx</p>
<p>
</p>
<p>
</p>
<p>
$ systemctl isolate multi-user.target</p>
<p>
</p>
<p>
$systemctl isolate graphical.target</p>
<p>
默认</p>
<p>
$ systemctl set-default graphical.target</p>
<p>
$ systemctl set-default multi-user.target</p>
<p>
当前</p>
<p>
$ systemctl get-default</p>
頁:
[1]