Centos7与Centos6的区别
CentOS7
修改网卡名称为eth0、eth1
方法1
修改网卡名称
- cd /etc/sysconfig/network-scripts/
- mv ifcfg-eno16777736 ifcfg-eth0
- mv ifcfg-eno33554960 ifcfg-eth1
修改网卡配置文件
- [root@bogon ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
- TYPE=Ethernet
- BOOTPROTO=static
- NETMASK=255.255.255.0
- IPADDR=10.0.0.110
- GATEWAY=10.0.0.2
- DEFROUTE=yes
- PEERDNS=yes
- PEERROUTES=yes
- IPV4_FAILURE_FATAL=no
- NAME=eth0
- UUID=582bec32-fa8b-415e-9cdc-873035dc336d
- DEVICE=eth0
- ONBOOT=yes
- [root@bogon ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1
- TYPE=Ethernet
- BOOTPROTO=static
- DEFROUTE=yes
- PEERDNS=yes
- PEERROUTES=yes
- IPV4_FAILURE_FATAL=no
- NAME=eth1
- UUID=7a62954e-574f-41cc-b4f6-3c802fa4a819
- DEVICE=eth1
- ONBOOT=yes
修改grub
加入以下内容(红色部分)
- cat /etc/sysconfig/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="rhgb net.ifnames=0 biosdevname=0 quiet"
- GRUB_DISABLE_RECOVERY="true"
生成启动菜单
grub2-mkconfig -o /boot/grub2/grub.cfg
重启系统
reboot
方法2
net.ifnames=0 biosdevname=0
- vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 quiet net.ifnames=0 biosdevname=0
方法3
cobbler装机时设置
安装一些基础命令
yum -y install wget vim bash-completion lrzsz nmap telnet tree net-tools bind-utils
关闭防火墙和 selinux
关闭防火墙
systemctl stop firewalld.service
禁止防火墙开机启动
systemctl disable firewalld.service
systemctl stop NetworkManager.service
systemctl disable NetworkManager.service
关闭selinux
[root@bogon ~]# getenforce
Enforcing
[root@bogon ~]# setenforce 0
[root@bogon ~]# getenforce
Permissive
[root@bogon ~]# vim /etc/selinux/config
开机启动流程
sysvinit技术
特点:
1、系统第一个进程(pid=1) 为 init
2、init进程是所有进程的祖先,不可kill
3、大多数linux发行版的init系统是和systemv相兼容的,被称为sysvinit
4、代表系统 CentOS5 CentOS 6
应用场景
用于服务器时代
优点
sysvinit运行非常良好,概念简单清晰。它主要依赖于shell脚本
缺点
1、 按照一定顺序执行 启动太慢
2、很容易夯住,fstab与nfs挂载问题
未来的趋势
个人pc机和移动平台,需要便捷、快的系统
5 upstart技术
CentOS6采用了upstart技术代替sysvinit进行引导,upstart对rc.sysinit脚本做了大量的优化,缩短了系统初始化时的启动时间。但是CentOS6为了简便管理员的操作,upstart的很多特性并没有凸显或者直接不支持,因此在CentOS6中的服务启动脚本还是以原来sysv的形式提供的
一个应运而生的技术,却因为竞争对手太强大,而被淘汰
代表系统:Ubuntu14,从ubuntu15开始使用systemd
http://0pointer.de/blog/projects/why.html
initctl start 服务名
disable
systemd技术
新系统都会采用的技术(RedHat7,CentOS7,Ubuntu15等)
设计目标是克服sysvinit固有的缺点,提高系统的启动速度
和sysvinit兼容,降低迁移成本
主要优点:并行启动
pid为1的进程
[root@centos7 ~]# ps -ef |head -2
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 16:29 ? 00:00:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
A,B,C,D四个任务有依赖关系
1、init:总时间T1+T2+T3+T4+T5+T6+T7
2、upstart:总时间T1+T2+T3 启动速度加快,但是有依赖关系的服务还是必须先后启动
3、systemd:总时间T,即使有依赖关系的服务,也能并发启动
并发启动原理之一:解决socket依赖/端口依赖
并发启动原理之二:解决D-Bus依赖:采用了D-Bus作为程序之间的通信工具,类似消息队列,可以缓存信息
并发启动原理之三:解决文件系统依赖:类似autofs机制
CentOS7系统安装
下载地址:
http://vault.centos.org/
镜像名称解释
CentOS-7-x86_64-DVD-1611.iso
从CentOS 7 之后,版本命名就跟发行的日期有关了
CentOS-7 系统是7.x版本
x86_64 64位操作系统,并且从7以后不再提供32位镜像
1611 2016年11月发布的版本
CentOS6到CentOS-7变化
使用CentOS-7最直观的变化就是服务管理了。
services使用了systemd来代替sysvinit管理
systemd是Linux下的一种init软件,由Lennart Poettering带头开发,并在LGPL 2.1及其后续版本许可证下开源发布。其开发目标是提供更优秀的框架以表示系统服务间的依赖关系,并依此实现系统初始化时服务的并行启动,同时达到降低Shell的系统开销的效果,最终代替现在常用的System V与BSD风格init程序。
与多数发行版使用的System V风格init相比,systemd采用了以下新技术:
采用Socket激活式与总线激活式服务,以提高相互依赖的各服务的并行运行性能;
用cgroups代替PID来追踪进程,以此即使是两次fork之后生成的守护进程也不会脱离systemd的控制。
从设计构思上说,由于systemd使用了cgroup与fanotify等组件以实现其特性,所以只适用于Linux。
systemd的服务管理程序:
systemctl是主要的工具,它融合之前service和chkconfig的功能于一体。可以使用它永久性或只在当前会话中启用/禁用服务。
- 启动一个服务:systemctl start postfix.service
- 关闭一个服务:systemctl stop postfix.service
- 重启一个服务:systemctl restart postfix.service
- 显示一个服务的状态:systemctl status postfix.service
- 在开机时启用一个服务:systemctl enable postfix.service
- 在开机时禁用一个服务:systemctl disable postfix.service
- 查看服务是否开机启动:systemctl is-enabled postfix.service;echo $?
- 查看已启动的服务列表:systemctl list-unit-files|grep enabled
网卡名称区别
区别1:网卡名称eth0和enp5s0
传统上,linux的网络接口名称为eth0、eth1...,但这些名称并不一定符合实际的硬件插槽等,这可能会导致不同的网络配置错误(例如,由无意的接口改名引起的禁止接口)。基于MAC地址的udev规则在虚拟化的环境中并不有用,这里的MAC地址如端口数量一样无常
CentOS6/RHEL6引入了一致和可预测的网络设备命名网络接口的方法。这些特性可以唯一地确定网络接口的名称以使定位和区分设备更容易,并且在这样一种方式下,无论是否重启机器、过了多少时间或者改变硬件,其名字都是持久不变的。然而,这种命名规则并不是默认在CentOS/RHEL6上开启
从CentOS7/RHEL7起,这种可预见的命名规则变成了默认。根据这一规则,接口名称被自动基于固件,拓扑结构和位置信息来确定。现在,即使添加或移除网络设备,接口名称仍然保持固定,而无需重新枚举,和坏掉的硬件可以无缝替换
修改主机名
- [root@centos7 ~]# hostnamectl set-hostname c77
- [root@centos7 ~]# hostname
- c77
- [root@centos7 ~]# cat /etc/hostname
- c77
字符集
- [root@centos7 ~]# localectl set-locale LANG=zh_CN.UTF-8
- [root@centos7 ~]# localectl status
- System Locale: LANG=zh_CN.UTF-8
- VC Keymap: us
- X11 Layout: us
- [root@centos7 ~]# cat /etc/locale.conf
- LANG=zh_CN.UTF-8
时区
- [root@centos7 ~]# timedatectl status
- Local time: Fri 2017-03-10 16:41:59 CST
- Universal time: Fri 2017-03-10 08:41:59 UTC
- RTC time: Fri 2017-03-10 08:41:59
- Time zone: Asia/Shanghai (CST, +0800)
- NTP enabled: n/a
- NTP synchronized: no
- RTC in local TZ: no
- DST active: n/a
查看系统版本
- [root@centos7 ~]# cat /etc/os-release
- NAME="CentOS Linux"
- VERSION="7 (Core)"
- ID="centos"
- ID_LIKE="rhel fedora"
- VERSION_ID="7"
- PRETTY_NAME="CentOS Linux 7 (Core)"
- ANSI_COLOR="0;31"
- CPE_NAME="cpe:/o:centos:centos:7"
- HOME_URL="https://www.centos.org/"
- BUG_REPORT_URL="https://bugs.centos.org/"
- CENTOS_MANTISBT_PROJECT="CentOS-7"
- CENTOS_MANTISBT_PROJECT_VERSION="7"
- REDHAT_SUPPORT_PRODUCT="centos"
- REDHAT_SUPPORT_PRODUCT_VERSION="7"
设置系统启动级别
- [root@centos7 ~]# systemctl set-default multi-user.target
- Removed symlink /etc/systemd/system/default.target.
- Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.
- [root@centos7 ~]# systemctl get-default
- multi-user.target
查看系统启动级别
- [root@centos7 ~]# ll -h /usr/lib/systemd/system/runlevel*.target
- lrwxrwxrwx. 1 root root 15 Mar 10 14:02 /usr/lib/systemd/system/runlevel0.target -> poweroff.target
- lrwxrwxrwx. 1 root root 13 Mar 10 14:02 /usr/lib/systemd/system/runlevel1.target -> rescue.target
- lrwxrwxrwx. 1 root root 17 Mar 10 14:02 /usr/lib/systemd/system/runlevel2.target -> multi-user.target
- lrwxrwxrwx. 1 root root 17 Mar 10 14:02 /usr/lib/systemd/system/runlevel3.target -> multi-user.target
- lrwxrwxrwx. 1 root root 17 Mar 10 14:02 /usr/lib/systemd/system/runlevel4.target -> multi-user.target
- lrwxrwxrwx. 1 root root 16 Mar 10 14:02 /usr/lib/systemd/system/runlevel5.target -> graphical.target
- lrwxrwxrwx. 1 root root 13 Mar 10 14:02 /usr/lib/systemd/system/runlevel6.target -> reboot.target
查看启动级别
- [root@centos72?~]#systemctl get-default
- multi-user.target
- [root@centos72?~]#?systemctl?set-default graphical.target
- Removed?symlink?/etc/systemd/system/default.target.
- Created?symlink?from?/etc/systemd/system/default.target?to?/usr/lib/systemd/system/graphical.target.
- [root@centos72?~]#?systemctl?set-default?multi-user.target
- Removed?symlink?/etc/systemd/system/default.target.
- Created?symlink?from?/etc/systemd/system/default.target?to?/usr/lib/systemd/system/multi-user.target.
服务管理程序存放位置
/usr/lib/systemd/system /etc/systemd/system/ [root@centos7 ~]# ll -h /etc/systemd/system/default.target lrwxrwxrwx root root Mar : /etc/systemd/system/default.target -> /usr/lib/systemd/system/multi-user.target
systemd 管理程序
Sysvinit |
Systemd |
备注 |
/etc/init.d/crond start |
systemctl start crond.service |
启动服务 |
/etc/init.d/crond stop |
systemctl stop crond.service |
停止服务 |
/etc/init.d/crond restart |
systemctl restart crond.service |
重启服务 |
/etc/init.d/crond status |
systemctl status crond.service |
查看服务运行状态 |
chkconfig --list |
systemctl list-unit-files |
列出各运行级别服务的启用和禁用情况 |
chkconfig crond on |
systemctl enable crond.service |
设置开机自启动服务 |
chkconfig crond off |
systemctl disable crond.service |
设置开机不启动服务 |
chkconfig --list crond |
systemctl is-enabled crond.service |
检查当前服务的设置状态 |
chkconfig --add crond |
systemctl daemon-reload |
修改服务文件时更新设置 |
系统服务启动时间查看
systemd-analyze time systemd-analyze blame
导出图片
systemd-analyze plot > bootime.svg
学习资料:
http://www.jinbuguo.com/systemd/systemd.service.html https://access.redhat.com/documentation/zh-CN/Red_Hat_Enterprise_Linux/7/html/Installation_Guide/index.html http://www.cnblogs.com/justphp/p/6120201.html
Centos7与Centos6的区别的更多相关文章
- centos7和centos6的区别【转】
最近发的文章,有人咨询我,说为啥不用centos7,而用centos6,这个跟个人习惯和生产环境元素决定的.centos7和6变化的就很大的.我收集了一些区别,给大家看看. 注意:生产环境推荐cent ...
- centos7与centos6命令区别
CentOS 7 vs CentOS 6的不同 (1)桌面系统[CentOS6] GNOME 2.x[CentOS7] GNOME 3.x(GNOME Shell) (2)文件系统[CentOS ...
- 【CentOS 7】CentOS7与CentOS6 的区别
前言 centos7与6之间最大的差别就是初始化技术的不同,7采用的初始化技术是Systemd,并行的运行方式,除了这一点之外,服务启动.开机启动文件.网络命令方面等等,都说6有所不同. 一.系统初始 ...
- CentOS7和CentOS6的区别
1.文件系统 centos6--ext4 centos7--xfs 说明:fdisk等磁盘操作命令使用都一样,只是格式化磁盘时使用mkfs.xfs而不要用mkfs.ext4,ext4的文件系统在cen ...
- centos6 和centos7 安装git 的区别
centos6 和centos7 安装git 的区别 centos6安装git yum install curl-devel expat-devel gettext-devel openssl-dev ...
- CentOS6与CentOS7的几点区别
重新安装了一个CentOS7,顺便整理一下与自己之前用的CentOS6的区别 CentOS6以下简称c6 CentOS7以下简称c7 1.关于文件系统: c6 6.x使用EXT4,EXT4单个文件系 ...
- centos7和centos6通过yum安装JDK1.8
centos7和centos6通过yum安装JDK1.8 查看JDK的安装路径# java -version============================查看Linux系统版本信息# cat ...
- 关于centos7和centos6中平滑升级nginx到新版本v1.12.1修复nginx最新漏洞CVE-2017-7529的解决方案
关于centos7和centos6中平滑升级nginx到新版本v1.12.1修复CVE-2017-7529漏洞的解决方案 漏洞描述 2017年7月11日,Nginx官方发布最新的安全公告,在Nginx ...
- centos7与centos6区别
CentOS 7 vs CentOS 6的不同 (1)桌面系统[CentOS6] GNOME 2.x[CentOS7] GNOME 3.x(GNOME Shell)(2)文件系统[CentOS6] ...
随机推荐
- Centos 7 配置单机Hadoop
Centos 7 配置单机Hadoop 2018年10月11日 09:48:13 GT_Stone 阅读数:82 系统镜像:CentuOS-7-x86_64-Everything-1708 Jav ...
- list 去重复元素
public static List removeDuplicate(List list){ List listTemp = new ArrayList(); for(int i=0;i<lis ...
- 一次JVM内存调优过程
项目中,有个同事写的JOB,使用到查询数据库大量历史协议数据(大概300W左右),由于对存放数据的list或map没有做“用完即时声明释放”. 导致此Jar部署在windows service后,进程 ...
- 在UIWindow上加类似于“回到顶部”的按钮
在公司上个版本的开发中遇到了一个UI布局的小问题: 某个页面需要增加一个分享按钮,但是该页面是二级页面,导航栏右边也已经放置了2个button. 起初和老大谈论这个问题的时候想到的方法是导航栏右边加三 ...
- vs code 修改文件的缩进
百度这个问题的都是强迫症患者. 前人代码是2个空格缩进,我习惯3个, step1:打开 文件 —> 首选项 —> 设置,进入用户设置 step2:设置缩进量,(加两句代码) step3 ...
- Angular4 扫雷小游戏
扫雷小游戏,可以升级过关,难度随关卡增加.但是有很明显的bug,以后有时间会继续优化! HTML: <div class="mainContent"> <div ...
- centos7 远程连接mongodb时,27017端口连接不上的解决办法
一.问题描述:centos 7 上安装mongogdb,然后通过另外一台电脑用pymongo连接mongodb时,报错:连接拒绝 解决过程: 1.修改mongo.conf文件 命令:sudo vi ...
- Python学习 :反射 & 单例模式
反射 什么是反射? - 反射主要是指程序可以访问.检测和修改它本身状态或行为的一种能力(自省) 面向对象中的反射 - 通过字符串的形式来操作(获取.检查.增加.删除)对象中的成员 - python中的 ...
- python学习之简介与环境安装
[转自]http://www.cnblogs.com/wupeiqi/articles/5433925.html --Python可以应用于众多领域 如:数据分析.组件集成.网络服务.图像处理.数值计 ...
- 20155229实验二 《Java面向对象程序设计》实验报告
20155229实验二 <Java面向对象程序设计>实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 ...