• CentOS 7 上systemctl 的用法


      我们对service和chkconfig两个命令都不陌生,systemctl 是管制服务的主要工具, 它整合了chkconfig 与 service功能于一体。

    systemctl is-enabled iptables.service
    systemctl is-enabled servicename.service #查询服务是否开机启动
    systemctl enable *.service #开机运行服务
    systemctl disable *.service #取消开机运行
    systemctl start *.service #启动服务
    systemctl stop *.service #停止服务
    systemctl restart *.service #重启服务
    systemctl reload *.service #重新加载服务配置文件
    systemctl status *.service #查询服务运行状态
    systemctl --failed #显示启动失败的服务

    注:*代表某个服务的名字,如http的服务名为httpd

    例如在CentOS 7 上安装http

    [root@CentOS7 ~]# yum -y install httpd
    启动服务(等同于service httpd start)
    systemctl start httpd.service
    停止服务(等同于service httpd stop)
    systemctl stop httpd.service
    重启服务(等同于service httpd restart)
    systemctl restart httpd.service
    查看服务是否运行(等同于service httpd status)
    systemctl status httpd.service
    开机自启动服务(等同于chkconfig httpd on)
    systemctl enable httpd.service
    开机时禁用服务(等同于chkconfig httpd on)
    systemctl disable httpd.service
    查看服务是否开机启动 (等同于chkconfig --list)

    注意:

      原服务都安装在/usr/lib/systemd/system/目录下,当我们使用systemctl添加一项服务开机启动的时候,linux帮我们在/etc/systemd/system/multi-user.target.wants/目录下面创建了对应服务的软连接,所以开机启动,当我们设置服务开机不启动,软连接会从/etc/systemd/system/multi-user.target.wants/下面移除对应的软连接:

    (1)查看/usr/lib/systemd/system/  系统原有的所有服务(有好多服务)

    [root@VM_0_12_centos ~]# ls /usr/lib/systemd/system/
    acpid.service
    arp-ethers.service
    atd.service
    auditd.service
    autovt@.service
    basic.target
    basic.target.wants
    blk-availability.service
    bluetooth.target
    brandbot.path
    brandbot.service
    chrony-dnssrv@.service
    chrony-dnssrv@.timer
    ..........
    

    (2)查看mysqld服务并且到/etc/systemd/system/multi-user.target.wants/目录下查看:

    [root@VM_0_12_centos ~]# ls /usr/lib/systemd/system |grep mysqld  #原服务目录下存在mysqld服务
    mysqld.service
    [root@VM_0_12_centos ~]# ls /etc/systemd/system/multi-user.target.wants/ |grep    
    mysql                                       #开机启动目录下没有mysqld服务 
    [root@VM_0_12_centos ~]# systemctl is-enabled mysqld.service      #mysqld开机不启动
    disabled

    (3)设置mysql服务开机启动并查看目录

    [root@VM_0_12_centos ~]# systemctl enable mysqld.service  #设置mysql服务开机启动
    Created symlink from /etc/systemd/system/mysql.service to /usr/lib/systemd/syste
    m/mysqld.service.
    Created symlink from /etc/systemd/system/multi-user.target.wants/mysqld.service
    to /usr/lib/systemd/system/mysqld.service.
    [root@VM_0_12_centos ~]# ll /etc/systemd/system/multi-user.target.wants/ |grep
    mysql                                  #查看开机启动目录下mysqld.service的软连接
    lrwxrwxrwx  1 root root 38 Apr  6 15:37 mysqld.service -> /usr/lib/systemd/syste
    m/mysqld.service
    [root@VM_0_12_centos ~]# ll /usr/lib/systemd/system |grep mysqld  #原服务目录下查看文件
    -rw-r--r--  1 root root 1073 Dec  9 16:11 mysqld.service

    一个正常的服务器最少需要的服务:

      httpd(apache http)

      iptables.service

      mysql.service

       nginx.service

  • 相关阅读:
    【WPF/WAF】使用System.Windows.Interactivity交互事件
    【Linux/CentOS】Boolean ftp_home_dir is not defined
    【笔记】使用Token做验证
    【笔记】什么是跨域请求/访问?
    MongoDB优化与一些需要注意的细节
    MongoDB中聚合工具Aggregate等的介绍与使用
    MongoDB中MapReduce介绍与使用
    Centos下MongoDB的安装与配置
    PHP使用header方式实现文件下载
    关于redis中SDS简单动态字符串
  • 原文地址:https://www.cnblogs.com/qlqwjy/p/8727900.html
Copyright © 2020-2023  润新知