zoukankan      html  css  js  c++  java
  • systemctl

    命令比对:chkconfig、runlevel、init、shutdown、……systemd unit:我把它翻译成操作组件。

    1.管理系统服务


    1.1.对比命令语法

      对比下老工具的用法,控制命令:

    servicesystemctl注解
    service name start systemctl start name.service 启动服务
    service name status systemctl status name.service 察看状态

        设置命令:

    chkconfigsystemctl注解
    chkconfig --list name systemctl status name.service  
    chkconfig --list

    systemctl list-unit-files --type service

    systemctl list-dependencies --after

    systemctl list-dependencies --before

     

    chkconfig name on

    systemctl enable name.service  
    chkconfig name off systemctl disable name.service  

      查看systemctl托管了那些服务

    $ systemctl list-unit-files --type service
    $ systemctl list-unit-files -t service

      服务名称,可以不带扩展名:

    # systemctl start sshd.service
    # systemctl start sshd

      还可以使用别名完成某些操作,查看别名如下:

    [root@right sbin]# systemctl show runlevel6.target -p Names
    Names=runlevel6.target reboot.target

    1.2.状态信息

      察看当前启动的服务:

    [root@hhh ~]# systemctl list-units --type service

      察看所有加载的服务:

     [root@hhh ~]# systemctl list-units --type service -all

      参看加载的服务,当前设定的状态:

    [root@hhh ~]# systemctl list-unit-files --type service

      参看服务的状态:

    [root@hhh ~]# systemctl status sshd
    [root@hhh ~]# systemctl is-active sshd
    active
    [root@hhh ~]# systemctl is-enabled sshd
    enabled
    [root@hhh ~]# systemctl status sshd --after
    [root@hhh ~]# systemctl status sshd --before

     

    1.3.启动、停止服务

      管理一个服务通过操作该服务对应的target。

    #  启动sshd:
    [root@right ~]# systemctl start sshd
    
    #  停止sshd:
    [root@right ~]# systemctl stop sshd
    
    #  重启sshd:
    [root@right ~]# systemctl restart sshd

    1.4.启用、禁用服务

      启用sshd:

    [root@right ~]# systemctl enable sshd
    Created symlink from /etc/systemd/system/multi-user.target.wants/sshd.service to /usr/lib/systemd/system/sshd.service.
    [root@right ~]# systemctl disable sshd
    Removed symlink /etc/systemd/system/multi-user.target.wants/sshd.service.

      查看sshd状态:

    [root@right ~]# systemctl status sshd
    ● sshd.service - OpenSSH server daemon
       Loaded: loaded (/usr/lib/systemd/system/sshd.service; disabled; vendor preset: enabled)
    ......

      启用时,回显信息是创建了符号链接,要是本身就是启用的,那么就不会创建。要是想重新创建该链接:

    [root@right ~]# systemctl reenable sshd
    Removed symlink /etc/systemd/system/multi-user.target.wants/sshd.service.
    Created symlink from /etc/systemd/system/multi-user.target.wants/sshd.service to /usr/lib/systemd/system/sshd.service.

      此外,可以屏蔽服务,以防止其手动启动或由被其他服务启动:

    [root@right ~]# systemctl status sshd
    ● sshd.service
       Loaded: masked (/dev/null)
    ......
    
    [root@right ~]# systemctl unmask sshd
    Removed symlink /etc/systemd/system/sshd.service.
    [root@right ~]# systemctl status sshd
    ● sshd.service - OpenSSH server daemon
       Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
    ......

    2.systemd targets


      System Targets对应的运行级别:

    RunlevelTarget UnitsDescription
    0

    runlevel0.target

    poweroff.target

    Shutdown the system.
    1

    runlevel1.target

    rescue.target

    Setup a rescue shell.
    2

    runlevel2.target

    multi-user.target

    multi-user system.
    3

    runlevel3.target

    multi-user.target

    ...
    4

    runlevel4.target

    multi-user.target

    ...
    5

    runlevel5.target

    graphical.target

    ...
    6

    runlevel6.target

    reboot.target
    Shutdown and reboot the system

      查看当前运行级别

    [root@right sbin]# systemctl get-default
    graphical.target

      查看当前加载的target

    [root@right sbin]# systemctl list-units -type target

      修改默认加载target组

    [root@right sbin]# systemctl set-default runlevel3.target

      修改当前加载target组

    [root@right sbin]# systemctl isolate runlevel3.target

      进入救援模式:

    [root@right sbin]# systemctl rescue

      进入紧急模式:

    [root@right sbin]# systemctl emergency

    3.关机…


      对比过去用过的关机命令。

    Old CommandNew CommandDescription
    halt systemctl halt Halts the system
    poweroff systemctl poweroff Powers off the system
    reboot systemctl reboot Restarts the system
    pm-suspend systemctl suspend Suspends the system
    pm-hibernate systemctl hibernate Hibernates the system
    pm-suspend-hybrid systemctl hybrid-sleep Hibernates and Suspends the system
    #  关机(关闭系统、关闭电源):
    # systemctl poweroff
    
    #  重启系统:
    # systemctl reboot
    
    #  挂起系统(挂起到内存):
    # systemctl suspend
    
    #  休眠(挂起到硬盘):
    # systemctl hibernate

    4.Controlling on a Remote Machine


      允许通过ssh协议控制机器,语法:“systemctl --host user@host command”;“--host root@r”代表选项、及其参数。

    [root@right ~]# systemctl -H root@zc35 status firewalld
    root@zc35's password: 
    ● firewalld.service - firewalld - dynamic firewall daemon
       Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
       Active: inactive (dead)
    [root@right ~]# systemctl -H root@zc35 status sshd
    root@zc35's password: 
    ● sshd.service - OpenSSH server daemon
       Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
       Active: active (running) since Fri 2016-12-16 09:57:32 CST; 3 weeks 2 days ago
         Docs: man:sshd(8)
               man:sshd_config(5)
     Main PID: 871
       CGroup: /system.slice/sshd.service

    5.管理“操作组件”


      操作组件对应一个操作组件文件,该文件是命令运行时的配置文件,文件名代表组件操作时系统引用的操作对象。系统管理员的组件目录位于“/etc/systemd/system/”。

     

    操作组件文件 目录
    目录
    优先级
    描述
    /usr/lib/systemd/system/ rpm包安装时存放操作组件文件的位置
    /run/systemd/system/ 运行时操作组件存放位置
    /etc/systemd/system/ 被“systemctl enable”创建的组件文件

    5.1理解操作组件文件的语法

      例如“sshd.service”:

    [root@right ~]# vi sshd.service
    [Unit]
    Description=OpenSSH server daemon
    Documentation=man:sshd(8) man:sshd_config(5)
    After=network.target sshd-keygen.service
    Wants=sshd-keygen.service
    
    [Service]
    EnvironmentFile=/etc/sysconfig/sshd
    ExecStart=/usr/sbin/sshd -D $OPTIONS
    ExecReload=/bin/kill -HUP $MAINPID
    KillMode=process
    Restart=on-failure
    RestartSec=42s
    
    [Install]
    WantedBy=multi-user.target

      理解上述文件选项含义:

    选项描述
    Description 描述信息
    Documentation 参考文档
    After 指定在谁后边启动
    Requires 指定强依赖
    Wants 指定弱依赖
    Conflicts 与“Requires”相反

     

    5.2创建操作组件

    5.3修改操作组件

    6.常见组件名称、及操作

    1. sshd
      ssh
    2. firewalld
      防火墙
    3. httpd
      apache
    4. 启动级别
      systemctl set-default multi-user
      systemctl get-default
      View Code

    systemctl .

    一切代码都是为了生活,一切生活都是调剂
  • 相关阅读:
    golang闭包,传统斐波那契
    ubuntu 软件桌面图标创建
    Mysql系列-性能优化神器EXPLAIN使用介绍及分析
    Sklearn-GridSearchCV网格搜索
    sklearn逻辑回归(Logistic Regression)类库总结
    scikit-learn模块学习笔记(数据预处理模块preprocessing)
    Python中的高级数据结构
    Python进阶之“属性(property)”详解
    python模块之itertools
    python list有关remove的问题
  • 原文地址:https://www.cnblogs.com/argor/p/7920090.html
Copyright © 2011-2022 走看看