当前位置:   article > 正文

RHEL8---服务管理_在rhel8操作系统中,服务管理使用什么命令

在rhel8操作系统中,服务管理使用什么命令

本章主要介绍如何管理Linux中的服务

  • 了解服务
  • 启动和关闭服务
  • 设置服务开机自动启动

我们平时刚装好Windows系统时,需要进行一些优化,如下图所示。

  右击某个服务,可以看到一些选项,包括启动、停止、重新启动等。这些选项管理的是这 个服务的当前状态。 

  双击服务名,在启动类型中设置的是系统启动时,这个服务要不要跟着一起运行,如下图所示。

  在Windows中管理一个服务,有以下两种管理方式。 

(1)管理服务当前状态。

(2)管理服务开机是否自动启动。

  在RHEL8中,通过输入systemctl list-unit-file命令可以列出系统中所有的服务,其中后缀为service的那些服务类似于Windows中的服务。查看后缀为service的服务可以使用 systemctl list-unit-files --type service命令。

  1. [root@rhel03-23 ~]# systemctl list-unit-files --type service
  2. UNIT FILE STATE
  3. accounts-daemon.service enabled
  4. alsa-restore.service static
  5. alsa-state.service static
  6. anaconda-direct.service static
  7. anaconda-fips.service static
  8. anaconda-nm-config.service static
  9. anaconda-noshell.service static
  10. anaconda-pre.service static
  11. anaconda-shell@.service static
  12. anaconda-sshd.service static

最后按【q】退出

一  般情况下,我们启动、停止、重新启动服务,指的就是这些后缀为service的服务,后 缀.service一般可以不用写。 

1、管理服务当前状态

查看sshd这个服务是否允许,命令如下

  1. [root@rhel03-23 ~]# systemctl is-active sshd
  2. active

  只有状态为active才说明此服务是正常运行的,其他状态都表示这个服务没有运行或没有 正常运行。 

关闭sshd,命令如下。

  1. [root@rhel03-23 ~]# systemctl stop sshd
  2. [root@rhel03-23 ~]# systemctl is-active sshd
  3. inactive

开启sshd,命令如下

  1. [root@rhel03-23 ~]# systemctl start sshd
  2. [root@rhel03-23 ~]# systemctl is-active sshd
  3. active

重启sshd,命令如下

[root@rhel03-23 ~]# systemctl restart sshd

查看sshd运行状态,命令如下 

  1. [root@rhel03-23 ~]# systemctl status sshd
  2. ● sshd.service - OpenSSH server daemon
  3. Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
  4. Active: active (running) since Fri 2023-12-01 06:06:17 +03; 51s ago
  5. Docs: man:sshd(8)
  6. man:sshd_config(5)
  7. Main PID: 2794 (sshd)
  8. Tasks: 1 (limit: 12128)
  9. Memory: 1.1M
  10. CGroup: /system.slice/sshd.service
  11. └─2794 /usr/sbin/sshd -D -oCiphers=aes256-gcm@openssh.com,chacha20-poly1305@openssh.com,aes256-ctr,aes256-cbc,aes128-gcm@o>
  12. 1201 06:06:17 rhel03-23.33 systemd[1]: sshd.service: Succeeded.
  13. 1201 06:06:17 rhel03-23.33 systemd[1]: Stopped OpenSSH server daemon.
  14. 1201 06:06:17 rhel03-23.33 systemd[1]: Starting OpenSSH server daemon...
  15. 1201 06:06:17 rhel03-23.33 sshd[2794]: Server listening on 0.0.0.0 port 22.
  16. 1201 06:06:17 rhel03-23.33 sshd[2794]: Server listening on :: port 22.
  17. 1201 06:06:17 rhel03-23.33 systemd[1]: Started OpenSSH server daemon.

上面enabled说明此服务开机时自动启动,active表示当前是正在运行的。

最下行并没有显示终端提示符,按【q】键退出。

禁用服务,命令如下。

  1. [root@rhel03-23 ~]# systemctl mask sshd
  2. Created symlink /etc/systemd/system/sshd.service → /dev/null.
  3. [root@rhel03-23 ~]# systemctl stop sshd
  4. [root@rhel03-23 ~]# systemctl start sshd
  5. Failed to start sshd.service: Unit sshd.service is masked.

  将sshd设置为mask,则此服务关闭之后就不能再启动了,这个类似于Windows中把某服 务禁用了。通过systemctl status sshd来查看是否设置为了mask。

  1. [root@rhel03-23 ~]# systemctl status sshd
  2. ● sshd.service
  3. Loaded: masked (Reason: Unit sshd.service is masked.)
  4. Active: inactive (dead) since Fri 2023-12-01 06:09:52 +03; 40s ago
  5. Main PID: 2794 (code=exited, status=0/SUCCESS)
  6. 1201 06:06:17 rhel03-23.33 systemd[1]: sshd.service: Succeeded.
  7. 1201 06:06:17 rhel03-23.33 systemd[1]: Stopped OpenSSH server daemon.
  8. 1201 06:06:17 rhel03-23.33 systemd[1]: Starting OpenSSH server daemon...

要取消mask,使用unmask命令即可,如下所示

  1. [root@rhel03-23 ~]# systemctl unmask sshd
  2. Removed /etc/systemd/system/sshd.service.
  3. [root@rhel03-23 ~]# systemctl start sshd

以上这些除mask外的操作只是影响当前状态,并不会影响系统重启后此服务是否会自动启动。

2、管理服务开机是否自动启动 

  查看某服务开机是否自动启动,可以使用“svstemctl is-enabled 服务名”命令来判断, 结果如果是enabled则开机会自动运行,不管当前是否启动,系统启动时此服务会自动启动,如下所示。 

  1. [root@rhel03-23 ~]# systemctl is-enabled sshd
  2. enabled

  这里显示结果为enabled,说明sshd 服务开机时会自动启动。如果不希望开机自动启动, 则使用“systemctl disable服务名”即可,如下所示。 

  1. [root@rhel03-23 ~]# systemctl disable sshd
  2. Removed /etc/systemd/system/multi-user.target.wants/sshd.service.
  3. [root@rhel03-23 ~]# systemctl is-enabled sshd
  4. disabled

  现在显示为disabled,说明sshd 服务开机时不会自动启动,即使sshd现在是运行的,但 是重启系统之后sshd也是不会自动运行的,只有手动start之后才能运行。 

  enable和disable操作影响的是开机是否会自动启动,并不影响当前状态。如果希望设置开机自动启动,同时设置现在也启动起来,那么加上--now选项,如下所示。

  1. [root@rhel03-23 ~]# systemctl stop sshd
  2. [root@rhel03-23 ~]# systemctl enable sshd --now
  3. Created symlink /etc/systemd/system/multi-user.target.wants/sshd.service → /usr/lib/systemd/system/sshd.service.

现在查看sshd的状态,如下所示。 

  1. [root@rhel03-23 ~]# systemctl is-active sshd
  2. active
  3. [root@rhel03-23 ~]# systemctl is-enabled sshd
  4. enabled

3、判断服务名是什么 

  很多时候我们安装了某个软件之后,想知道服务名是什么,可以通过“systemctl list-unit-files --type service | grep关键字”来判断。例如,ssh这个服务到底是ssh还是 sshd ?   

  1. [root@rhel03-23 ~]# systemctl list-unit-files --type service | grep ssh
  2. anaconda-sshd.service static
  3. sshd-keygen@.service disabled
  4. sshd.service enabled
  5. sshd@.service static
  6. sssd-ssh.service indirect
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/265168
推荐阅读
相关标签
  

闽ICP备14008679号