CentOS7

修改网卡名称为eth0、eth1

方法1

修改网卡名称

  1. cd /etc/sysconfig/network-scripts/
  2. mv ifcfg-eno16777736 ifcfg-eth0
  3. mv ifcfg-eno33554960 ifcfg-eth1

修改网卡配置文件

  1. [root@bogon ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
  2. TYPE=Ethernet
  3. BOOTPROTO=static
  4. NETMASK=255.255.255.0
  5. IPADDR=10.0.0.110
  6. GATEWAY=10.0.0.2
  7. DEFROUTE=yes
  8. PEERDNS=yes
  9. PEERROUTES=yes
  10. IPV4_FAILURE_FATAL=no
  11. NAME=eth0
  12. UUID=582bec32-fa8b-415e-9cdc-873035dc336d
  13. DEVICE=eth0
  14. ONBOOT=yes
  15. [root@bogon ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1
  16. TYPE=Ethernet
  17. BOOTPROTO=static
  18. DEFROUTE=yes
  19. PEERDNS=yes
  20. PEERROUTES=yes
  21. IPV4_FAILURE_FATAL=no
  22. NAME=eth1
  23. UUID=7a62954e-574f-41cc-b4f6-3c802fa4a819
  24. DEVICE=eth1
  25. ONBOOT=yes

修改grub

加入以下内容(红色部分)

  1. cat /etc/sysconfig/grub
  2. GRUB_TIMEOUT=5
  3. GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
  4. GRUB_DEFAULT=saved
  5. GRUB_DISABLE_SUBMENU=true
  6. GRUB_TERMINAL_OUTPUT="console"
  7. GRUB_CMDLINE_LINUX="rhgb net.ifnames=0 biosdevname=0 quiet"
  8. GRUB_DISABLE_RECOVERY="true"

生成启动菜单

grub2-mkconfig -o /boot/grub2/grub.cfg

重启系统

reboot

方法2

net.ifnames=0 biosdevname=0

  1. 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的功能于一体。可以使用它永久性或只在当前会话中启用/禁用服务。

  1. 启动一个服务:systemctl start postfix.service
  2. 关闭一个服务:systemctl stop postfix.service
  3. 重启一个服务:systemctl restart postfix.service
  4. 显示一个服务的状态:systemctl status postfix.service
  5. 在开机时启用一个服务:systemctl enable postfix.service
  6. 在开机时禁用一个服务:systemctl disable postfix.service
  7. 查看服务是否开机启动:systemctl is-enabled postfix.service;echo $?
  8. 查看已启动的服务列表:systemctl list-unit-files|grep enabled

网卡名称区别

区别1:网卡名称eth0和enp5s0

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

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

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

修改主机名

  1. [root@centos7 ~]# hostnamectl set-hostname c77
  2. [root@centos7 ~]# hostname
  3. c77
  4. [root@centos7 ~]# cat /etc/hostname
  5. c77

字符集

  1. [root@centos7 ~]# localectl set-locale LANG=zh_CN.UTF-8
  2. [root@centos7 ~]# localectl status
  3.    System Locale: LANG=zh_CN.UTF-8
  4.        VC Keymap: us
  5.       X11 Layout: us
  6. [root@centos7 ~]# cat /etc/locale.conf
  7. LANG=zh_CN.UTF-8

时区

  1. [root@centos7 ~]# timedatectl status
  2.       Local time: Fri 2017-03-10 16:41:59 CST
  3.   Universal time: Fri 2017-03-10 08:41:59 UTC
  4.         RTC time: Fri 2017-03-10 08:41:59
  5.        Time zone: Asia/Shanghai (CST, +0800)
  6.      NTP enabled: n/a
  7. NTP synchronized: no
  8.  RTC in local TZ: no
  9.       DST active: n/a

查看系统版本

  1. [root@centos7 ~]# cat /etc/os-release
  2. NAME="CentOS Linux"
  3. VERSION="7 (Core)"
  4. ID="centos"
  5. ID_LIKE="rhel fedora"
  6. VERSION_ID="7"
  7. PRETTY_NAME="CentOS Linux 7 (Core)"
  8. ANSI_COLOR="0;31"
  9. CPE_NAME="cpe:/o:centos:centos:7"
  10. HOME_URL="https://www.centos.org/"
  11. BUG_REPORT_URL="https://bugs.centos.org/"
  12.  
  13. CENTOS_MANTISBT_PROJECT="CentOS-7"
  14. CENTOS_MANTISBT_PROJECT_VERSION="7"
  15. REDHAT_SUPPORT_PRODUCT="centos"
  16. REDHAT_SUPPORT_PRODUCT_VERSION="7"

设置系统启动级别

  1. [root@centos7 ~]# systemctl set-default multi-user.target
  2. Removed symlink /etc/systemd/system/default.target.
  3. Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.
  4. [root@centos7 ~]# systemctl get-default
  5. multi-user.target

查看系统启动级别

  1. [root@centos7 ~]# ll -h /usr/lib/systemd/system/runlevel*.target
  2. lrwxrwxrwx. 1 root root 15 Mar 10 14:02 /usr/lib/systemd/system/runlevel0.target -> poweroff.target
  3. lrwxrwxrwx. 1 root root 13 Mar 10 14:02 /usr/lib/systemd/system/runlevel1.target -> rescue.target
  4. lrwxrwxrwx. 1 root root 17 Mar 10 14:02 /usr/lib/systemd/system/runlevel2.target -> multi-user.target
  5. lrwxrwxrwx. 1 root root 17 Mar 10 14:02 /usr/lib/systemd/system/runlevel3.target -> multi-user.target
  6. lrwxrwxrwx. 1 root root 17 Mar 10 14:02 /usr/lib/systemd/system/runlevel4.target -> multi-user.target
  7. lrwxrwxrwx. 1 root root 16 Mar 10 14:02 /usr/lib/systemd/system/runlevel5.target -> graphical.target
  8. lrwxrwxrwx. 1 root root 13 Mar 10 14:02 /usr/lib/systemd/system/runlevel6.target -> reboot.target

查看启动级别

  1. [root@centos72?~]#systemctl get-default
  2. multi-user.target
  3. [root@centos72?~]#?systemctl?set-default graphical.target
  4. Removed?symlink?/etc/systemd/system/default.target.
  5. Created?symlink?from?/etc/systemd/system/default.target?to?/usr/lib/systemd/system/graphical.target.
  6. [root@centos72?~]#?systemctl?set-default?multi-user.target
  7. Removed?symlink?/etc/systemd/system/default.target.
  8. 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的区别的更多相关文章

  1. centos7和centos6的区别【转】

    最近发的文章,有人咨询我,说为啥不用centos7,而用centos6,这个跟个人习惯和生产环境元素决定的.centos7和6变化的就很大的.我收集了一些区别,给大家看看. 注意:生产环境推荐cent ...

  2. centos7与centos6命令区别

    CentOS 7 vs CentOS 6的不同    (1)桌面系统[CentOS6] GNOME 2.x[CentOS7] GNOME 3.x(GNOME Shell) (2)文件系统[CentOS ...

  3. 【CentOS 7】CentOS7与CentOS6 的区别

    前言 centos7与6之间最大的差别就是初始化技术的不同,7采用的初始化技术是Systemd,并行的运行方式,除了这一点之外,服务启动.开机启动文件.网络命令方面等等,都说6有所不同. 一.系统初始 ...

  4. CentOS7和CentOS6的区别

    1.文件系统 centos6--ext4 centos7--xfs 说明:fdisk等磁盘操作命令使用都一样,只是格式化磁盘时使用mkfs.xfs而不要用mkfs.ext4,ext4的文件系统在cen ...

  5. centos6 和centos7 安装git 的区别

    centos6 和centos7 安装git 的区别 centos6安装git yum install curl-devel expat-devel gettext-devel openssl-dev ...

  6. CentOS6与CentOS7的几点区别

    重新安装了一个CentOS7,顺便整理一下与自己之前用的CentOS6的区别 CentOS6以下简称c6  CentOS7以下简称c7 1.关于文件系统: c6 6.x使用EXT4,EXT4单个文件系 ...

  7. centos7和centos6通过yum安装JDK1.8

    centos7和centos6通过yum安装JDK1.8 查看JDK的安装路径# java -version============================查看Linux系统版本信息# cat ...

  8. 关于centos7和centos6中平滑升级nginx到新版本v1.12.1修复nginx最新漏洞CVE-2017-7529的解决方案

    关于centos7和centos6中平滑升级nginx到新版本v1.12.1修复CVE-2017-7529漏洞的解决方案 漏洞描述 2017年7月11日,Nginx官方发布最新的安全公告,在Nginx ...

  9. centos7与centos6区别

    CentOS 7 vs CentOS 6的不同   (1)桌面系统[CentOS6] GNOME 2.x[CentOS7] GNOME 3.x(GNOME Shell)(2)文件系统[CentOS6] ...

随机推荐

  1. 关于Oracle的认识

    一.Oracle认识: 1.安装时的全局数据库Orcl可以使用吗?可以的 2.Oracle相关服务: 3.数据库与用户,表空间的关系“ 4.切换数据库 5.关于命令:sqlplus 6\

  2. 常用LLDB指令

    print.p: 打印内存地址 po: 打印对象   1.读取内存 memory read/数量格式字节数 内存地址 x/数量格式字节数 内存x/3xw 0x10010 格式:x是16进制,f是浮点, ...

  3. 必须掌握的前端模板引擎之art-template

    常用的模板引擎有tpl.js.baiduTemplate.doT.js.art-template等等: 我所理解的模板引擎就是把js数据传到html中展示出来: art-template 是一个简约. ...

  4. JavaScript的迭代函数与迭代函数的实现

    前言 ​ 如果对技术很自信,请直接看 实现的源码 ​ 如果想回顾一下基础,请按文章顺序阅读 说到迭代方法,最先想到的是什么?forEach还是map,迭代的方法ES5提供了5种方法 以下定义来自 Ja ...

  5. DELPHI DOUBLE不解之迷

    procedure TForm1.cmd2Click(Sender: TObject);var str1, str2: string; LValue1: Double; LValue2: Extend ...

  6. 【一】Spark基础

    Spark基础 什么是spark 也是一个分布式的并行计算框架 spark是下一代的map-reduce,扩展了mr的数据处理流程. Spark架构原理图解 RDD[Resilient Distrib ...

  7. FLINK流计算拓扑任务代码分析<一>

    我打算以 flink 官方的 例子 <<Monitoring the Wikipedia Edit Stream>> 作为示例,进行 flink 流计算任务 的源码解析说明. ...

  8. ABAP ODATA 文字列からxstringへの変換およびその逆変換(UTF-8)

    DATA(lv_str) = |Teststring|. TRY. * string -> xstring * default UTF-8 DATA(lv_xstr) = cl_abap_cod ...

  9. 梯度下降、随机梯度下降、方差减小的梯度下降(matlab实现)

    梯度下降代码: function [ theta, J_history ] = GradinentDecent( X, y, theta, alpha, num_iter ) m = length(y ...

  10. Linux 用C语言实现简单的shell(1)

    发一波福利,操作系统的实验内容,大家可以借鉴一下,不过我的代码可能也存在一定的问题. 因为在一开始老师是一节一节课教的,当时并不知道后面还会用输入输出重定向,管道等一系列问题,我的兴趣也不在这个方面也 ...