• centos7


    centos7.6 系统安装及优化

    一. centos的演变

     

    1.Sysvinit技术

    1.1启动流程

    串行启动: 一次一个,一个个启动

    并行启动: 全部一起启动

    1.2 init特点

    ②系统第1个进程(pid=1)为init

    ③Init进程是所有进程的祖先,不可kill;大多数Linux发行版的init系统是和SystemV相兼容的,被称为sysvinit。

    ④代表系统:CentOS5

     

    1.3 init优点

    SysVinit运行非常良好,概念简单清晰。它主要依赖于Shell脚本。

     

    1.4  init 缺点

    ① 启动慢

    ② 容易hang住 ,fatab于nfs挂载问题

     

    2.Upstart技术

    CentOS6采用了Upstart技术代替sysvinit进行引导,Upstart对rc.sysinit脚本做了大量的优化,缩短了系统初始化时的启动时间。但是CentOS6为了简便管理员的操作,upstart的很多特性并没有凸显或者直接不支持,因此在CentOS6中的服务启动脚本还是以原来SysV的形式提供的。

    But,一个应运而生的技术,却因为竞争对手太强大,而被淘汰。

     

    代表系统: CentOS6 ,Ubuntu14,从CentOS7,Ubuntu15开始使用systemd

     

    3.Systemd技术

    克服init固有缺点,提高系统的启动速度

    3.1最主要优点:并行启动

    pid为1的进程 /usr/lib/systemd/systemd

    [root@moban7 ~]# ps -ef | head -2

    UID         PID   PPID  C STIME TTY          TIME CMD

    root          1      0  0 Dec24 ?        00:00:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22

     

    4. 三种启动对比

    4.1 对比图

     

    4.2 并发启动原理之一

    4.2.1解决 socket 依赖/端口依赖

     

     

    4.2.2解决D-Bus

     

     

    4.2.3解决文件系统依赖、类似autofs机制

     

     

    二 centos7 安装

    1)系统安装

     

    2)按下TAB键

     

     添加内核参数 让网卡名称变为eth*

    空格 输入 net.ifnames=0 biosdevname=0 然后回车

     

     

     

     

     

    4) 设置网络连接和主机名

     

     

     

    5) 设置ip地址

     

     

     

     

     

    关闭密码保护

     

    选择关闭

     

    关闭KDUMP功能

     

     

     

    安装软件

    yum install  vim wget bash-completion lrzsz nmap  nc  tree  htop iftop  net-tools -y

     

     

    三 centos6与centos7区别

    1. 网卡名不同

    eth0  与enp3s0

    2. 网络配置相关命令

     

    1. ip:yum -y install iproute
      CeentOS7主推荐使用,ip、ss命令
      2.ifconfig:yum -y install nnet-tools
      3.setup:yum -y install ssetuptool (废弃命令)
      安装完之后,发现这只是一个图形工具,需要用到的网络服务,防火墙,系统服务等需要另外再安装。
      安装好setup ttools工具之后。需要安装组件有:
      系统服务:nesysv
      网络服务:system-config-networkui
      防火墙配置。iptables
      4.nnmtui:代替setup命令

     

    3.主机名等配置文件。

    3.1.修改主机名

    hostname mobantest -->临时生效

    编辑/etc/hostname -->主机名的配置文件变了。

    hhostnamectl set-hostname mobantest ##->方法2,本质还是改配置文件。

     

    3.2. 修改字符集

    localectl set-locale LANG=zh_CN.UTF-8

    vim /etc/locale.conf

    cat /etc/redhat-release #查看系统版本号

    cat /etc/os-release   #所有支持systemd系统的统一发行版本名称和版本号文件

     

    3.3. /etc.rc.local

     

    C7开始不默认支持rc.local了。如有需要,请自行添加权限。

    # Please note that you must run 'chmod +x /etc/rc.local' to ensure

    # that this script will be executed during boot.

     

    3.4 运行级别Runlevel

     

    Runlevel

     

    [root@moban7 ~]# cat /etc/inittab

    # inittab is no longer used when using systemd.

    当前启动级别。

     

    [root@moban7 ~]# systemctl get-default

    multi-user.target

     

    设置启动级别

    [root@moban7 ~]# systemctl set-default multi-user.target

     

    3.5 systemd一统天下

     

    查看从前的runlived变成了什么样。

     

    ls -lh /usr/lib/systemd/system/runlevel*.target

    所有可用的单元文件存放在/usr/lib/systemd/system/和/etc/system/system/目录(后者优先级更高)

     

    [root@moban7 ~]# ll -h /etc/systemd/system/default.target

    lrwxrwxrwx. 1 root root 41 Dec 25 17:20 /etc/systemd/system/default.target -> /usr/lib/systemd/system/multi-user.target

     

     

    [root@moban7 ~]# ls -lh /usr/lib/systemd/system/runlevel*.target

    lrwxrwxrwx. 1 root root 15 Dec 24 18:16 /usr/lib/systemd/system/runlevel0.target -> poweroff.target

    lrwxrwxrwx. 1 root root 13 Dec 24 18:16 /usr/lib/systemd/system/runlevel1.target -> rescue.target

    lrwxrwxrwx. 1 root root 17 Dec 24 18:16 /usr/lib/systemd/system/runlevel2.target -> multi-user.target

    lrwxrwxrwx. 1 root root 17 Dec 24 18:16 /usr/lib/systemd/system/runlevel3.target -> multi-user.target

    lrwxrwxrwx. 1 root root 17 Dec 24 18:16 /usr/lib/systemd/system/runlevel4.target -> multi-user.target

    lrwxrwxrwx. 1 root root 16 Dec 24 18:16 /usr/lib/systemd/system/runlevel5.target -> graphical.target

    lrwxrwxrwx. 1 root root 13 Dec 24 18:16 /usr/lib/systemd/system/runlevel6.target -> reboot.target

     

     

    ls /etc/systemd/system  系统

    ls /usr/lib/systemd/system  用户

     

     

     

    3.6.管理服务

     

    chkconfig

    service

    /etc/init.d/

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

     

     

     

    sysvinit命令  systemctl命令   备注
    service crond start   systemctl start crond.service       启动服务
    service crond stop systemctl stop crond.service  停止服务
    service crond restart     systemctl restart crond.service  重启服务
    service crond reload  systemctl reload crond.service  当支持时,重新装载配置文件而不中断等待操作
    service crond condrestart  systemctl condrestart crond.service  如果服务正在运行,那么重启它
    service 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      当创建新服务文件或者变更设置时使用

     

    3.6.1推荐关闭服务

     

    [root@moban7 ~]# systemctl list-unit-files | grep enabled

    abrt-ccpp.service                           enabled       x

    abrt-oops.service                           enabled       x

    abrt-vmcore.service                         enabled       x

    abrt-xorg.service                           enabled       x

    abrtd.service                               enabled       x # 调试相关服务

    auditd.service                              enabled       x # selinux 相关

    crond.service                               enabled         # 定时任务

    dbus-org.fedoraproject.FirewallD1.service    enabled         # d-bus相关,系统服务

    dbus-org.freedesktop.NetworkManager.service enabled         # d-bus相关,系统服务

    dbus-org.freedesktop.nm-dispatcher.service  enabled         # d-bus相关,系统服务

    firewalld.service                           enabled       x # 防火墙

    getty@.service                              enabled         # tty窗口

    irqbalance.service                          enabled         # 多核cpu调度

    microcode.service                           enabled       x # intel的CPU会提供一个外挂的微指令集提供系统运行

    NetworkManager-dispatcher.service           enabled         # 网络相关

    NetworkManager.service                      enabled         # 网络相关

    postfix.service                             enabled       x # 系统邮件

    rsyslog.service                             enabled         # 系统日志

    sshd.service                                enabled         # ssh服务

    systemd-readahead-collect.service           enabled         # 系统服务

    systemd-readahead-drop.service              enabled         # 系统服务

    systemd-readahead-replay.service            enabled         # 系统服务

    tuned.service                               enabled         # 服务器能耗管理

    default.target                              enabled       

    multi-user.target                           enabled       

    remote-fs.target                            enabled

     

    3.7 开机自起查询

     

    systemctl list-unit-files

    systemctl list-unit-files|grep enabled|wc -l

     

     

     

    3.8 系统优化

     

    systemd-analyze time

    systemd-analyze blame

    systemd-analyze plot>bootime.svg # 导出图片

     

     

     

     

     

     

     

  • 相关阅读:
    WRF rsl.out文件研究
    ERA-Interim 的变量TCW和VIWV可降水量
    sudo apt update 没有 Release 文件
    线性斜压模式LBM学习&安装实录
    PGI 用户手册之 Site-Specific Customization of the Compilers
    ERA5气压层数据驱动WRF的一些问题
    OpenMP fortran 学习
    crontab计划运行shell脚本,调用ncl执行失败
    CDO学习2 CDO 入门教程Tutorial
    guide, manual, tutorial之间的区别
  • 原文地址:https://www.cnblogs.com/augustyang/p/10176307.html
Copyright © 2020-2023  润新知