首页 > 技术文章 > CentOS 7 应用

ywrj 2018-08-17 15:06 原文

为方便以下CentOS7简称C7,CentOS6简称C6

优化

1.安装常用功能

yum -y install bash-completion lrzsz telnet tree vim wget net-tools

bash-completion           #超级补全功能,可以补全yum后的install
net-tools  #各种网络管理命令 C7里将ifconfig和route等命令整合在了ip命令里,安装此服务可沿用C6命令

2.关闭防火墙和selinux

systemctl stop firewalld     #关闭防火墙
systemctl disable firewalld           #永久关闭
systemctl stop NetworkManager            #NetworkManager和network冲突的问题
systemctl disable NetworkManager
setenforce 0    #关闭selinux  和C6一样改配置文件永久关闭 

 C6与C7的区别

区别1:网卡名称的区别

C6的网络接口名为eth0、eth...但这些名称并不一定符合实际的硬件插槽等,这就导致网卡名称对应的网卡不是固定的

C6引入了一致和可预测的网络设备命名网络接口的方法。这些特性可以唯一地确定网络接口的名称以使定位和区分设备更容易,并且在这样一种方式下,无论是否重启机器、过了多少时间、或者改变硬件,某名字都是持久不变的。然而,这种命名规则并不是默认在C6上开启。

从C7起,这种可预见的命名规则变成了默认:根据这一规则,接口名称被自动基于固件,拓扑结构和位置信息来确定。现在,即使添加或移除网络设备,接口名称仍然保持固定,而无需重新枚举,和坏掉的硬件可以无缝替换。

#因此C7的每个网卡名都不是固定统一的 都是根据网卡而生成的唯一的网卡名,这种变化非常不利于我们运维管理,因为成百上千的服务器集群,没个网卡名不一样,不利于管理,因此我们还需要把 网卡名改回以eth命名的

cd /etc/sysconfig/network-scripts/       #进入网卡配置文件目录

mv ifcfg-ens32 ifcfg-eth0 #修改网卡名为eth0
vim ifcfg
-eth0                #修改配置文件 NAME=ens32                  #改为eth0可以直接全局 %s#ens32#eth0#g修改 DEVICE=ens32                 #改为eth0
vim
/etc/sysconfig/grub           #修改开机grub菜单 在文件里加入下边标红的信息 GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb net.ifnames=0 biosdevname=0 quiet" GRUB_DISABLE_RECOVERY="true"
grub2
-mkconfig -o /boot/grub2/grub.cfg #生成启动菜单
reboot #重启修改完毕

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

C7主用ip命令 如果习惯于C6 下载上边讲过的net-tools工具

废弃命令 setup  安装好后会发现只是一个图形工具,我们用到的网络服务,防火墙,系统服务需要另外安装.

安装好setup tools工具后,我们需要安装工具组件,如ntsysv(系统服务),system-config-networktui(网络服务),iptables(防火墙配置)等.

nmtui代替setup命令

区别3:主机名等配置文件

修改主机名

方法一
hostname wk          #临时生效
vim /etc/hostname        #永久生效
方法二
hostnamectl set-hostname wk           #当前生效也永久生效

修改字符集

localectl status                #查看字符集
localectl set-locale LANG=zh_CN.UTF-8       #修改字符集
vim /etc/locale.conf             #编辑配置文件修改     

查看系统版本号

cat /etc/redhat-release 
CentOS Linux release 7.5.1804 (Core) 

所有支持systemd系统的统一发行版名称和版本号文件

cat /etc/os-release

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

在C7里,默认/etc/rc.local是不开启的    他没有x执行权限 给与权限才能实现开机自启

chmod +x /etc/rc.local  #如果不给权限 则无法开机自启动

区别5:运行级别Runlevel

在C7里已经没有以前6的运行级别文件了但是runlevel还可以用

cat /etc/inittab               
# inittab is no longer used when using systemd.     #在使用systemd时不再使用inittab。
#
# ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target
#
# systemd uses 'targets' instead of runlevels. By default, there are two main targets:
#
# multi-user.target: analogous to runlevel 3
# graphical.target: analogous to runlevel 5
#
# To view current default target, run:
# systemctl get-default
#
# To set a default target, run:
# systemctl set-default TARGET.target
#

C7里只有5个运行级别   关机 救援 多用户 图形化 重启

systemctl get-default                                           # 查看当前运行级别


ls -lh /usr/lib/systemd/system/runlevel*.target #C7所有运行级别 /usr/lib/systemd/system/runlevel0.target -> poweroff.target #关机 /usr/lib/systemd/system/runlevel1.target -> rescue.target #救援 /usr/lib/systemd/system/runlevel2.target -> multi-user.target #多用户 /usr/lib/systemd/system/runlevel3.target -> multi-user.target #多用户 /usr/lib/systemd/system/runlevel4.target -> multi-user.target #多用户 /usr/lib/systemd/system/runlevel5.target -> graphical.target #图形化 /usr/lib/systemd/system/runlevel6.target -> reboot.target #重启

设置启动级别

systemctl set-default multi-user.target

区别6:管理服务

C6的管理服务为chkconfig service /etc/init.d/

C7systemctl:融合service和chkconfig的功能于一体,兼容SysV和LSB的启动脚本,而且够在进程启动过程中更有效地引导加载服务。

启动时间化

在C7里有像360杀毒软件一样的开机显示启动时间 以及各项服务启动时间的功能

systemd-analyze time      #查看开机启动时间       
Startup finished in 858ms (kernel) + 2.355s (initrd) + 22.247s (userspace) = 25.462s
 开机启动时间   内核启动时间      系统加载时间 用户服务加载时间 开机总时间
systemd-analyze blame                 #显示每项服务的开机启动时间

systemd-analyze plot >bootime.svg    #生成一张图片,可在windows里查看 

systemd 主导C7

在C7里 systemd 接管了运行级别

所有可运行不再存放在/etc/init.d里 

 第三方服务存放目录  /usr/lib/systemd/system    #将启动文件放入这里面

 系统服务存放目录   /etc/systemd/system   

service和chkconfig 与systemd对比

service和chkconfig

systemd

备注

sercice crond start systemctl start crond 启动服务 
sercice crond stop systemctl stop crond 停止服务
sercice crond restart systemctl restart crond 重启服务
sercice crond reload  systemctl reload crond  平滑重启,不停服务重新装载配置文件
sercice crond condrestart systemctl condrestart crond 如果服务正在运行那么重启 
sercice crond status systemctl status crond 查看服务状态 
chkconfig --list systemctl list-unit-files 查看开机自启动 
chkconfig crond on systemctl enable crond 设置看机子启动 
chkconfig crond off systemctl disable crond 关闭开机自启动 
chkconfig --list crond systemctl is-enabled crond 查看服务是否开机自启动 
chkconfig --add crond  systemctl daemon-reload 服务名  创建新开机自启动

在C7里开启服务不显示服务是否开启成功,systemctl start  命令没有任何回复,如果需要查看服务是否已经开启 用systemctl status 命令,绿了就开启了,灰的没有开启

在C7里开机自启动的状态为enable  关闭状态为disable  红了绿很好分辨

C7里安装NFS共享存储,只需启动NFS,NFS启动脚本会自动帮你先开启rpc.

 

推荐阅读