返回顶部
首页 > 资讯 > 操作系统 >linux中systemd命令的运行级别与其常见应用
  • 713
分享到

linux中systemd命令的运行级别与其常见应用

2023-06-13 01:06:12 713人浏览 八月长安
摘要

本篇内容主要讲解“linux中systemd命令的运行级别与其常见应用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux中systemd命令的运行级别与其常见应用”吧!运行级别 vs. 状

本篇内容主要讲解“linux中systemd命令的运行级别与其常见应用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux中systemd命令的运行级别与其常见应用”吧!

运行级别 vs. 状态

SysVInit使用静态的运行级别来构建不同的启动状态,大部分发布版本中提供了以下5个运行级别:

  •     单用户模式(Single-user mode)
        多用户模式,不启动网络服务(Multi-user mode without network services started)
        多用户模式,启动网络服务(Multi-user mode with network services started)
        系统关机(System shutdown)
        系统重启(System reboot)

对于我来说,使用多个运行级别并没有太大的好处,但它们却一直在系统中存在着。 不同于运行级别,systemd可以创建不同的状态,状态提供了灵活的机制来设置启动时的配置项。这些状态是由多个unit文件组成的,状态又叫做启动目标(target)。启动目标有一个清晰的描述性命名,而不是像运行级别那样使用数字。unit文件可以控制服务、设备、套接字和挂载点。参考下/usr/lib/systemd/system/graphical.target,这是Centos 7默认的启动目标:

   

代码如下:

[Unit]
   Description=Graphical Interface
   Documentation=man:systemd.special(7)
   Requires=multi-user.target
   After=multi-user.target
   Conflicts=rescue.target
   Wants=display-manager.service
   AllowIsolate=yes
   [Install]
   Alias=default.target

现在再看看unit文件长什么样? 我来给大家找个例子。 unit文件存放在下面的两个目录下:

   

代码如下:

/etc/systemd/system/
   /usr/lib/systemd/system/

我们可以修改第一个目录中的文件来进行自定义配置,而第二个目录中的文件是包安装时保存的备份。/etc/systemd/system/的优先级高于/usr/lib/systemd/system/。不错,用户优先级高于机器。下面是Apache WEB server的unit文件:

   

代码如下:

[Unit]
   Description=The Apache Http Server
   After=network.target remote-fs.target nss-lookup.target
   [Service]
   Type=notify
   EnvironmentFile=/etc/sysconfig/httpd
   ExecStart=/usr/sbin/httpd/ $OPTIONS -DFOREGROUND
   ExecReload=/usr/sbin/httpd $OPTIONS -k graceful
   ExecStop=/bin/kill -WINCH ${MaiNPID}
   KillSignal=SIGCONT
   PrivateTmp=true
   [Install]
   WantedBy=multi.user.target

就算是对于新手而言,上面的文件也是非常简单易懂的。这可比SysVInit的init文件要简单多了,为了便于比较,下面截取了/etc/init.d/apache2的一个片段:

   

代码如下:

SCRIPTNAME="${0##*/}"
   SCRIPTNAME="${SCRIPTNAME##[KS][0-9][0-9]}"
   if [ -n "$APACHE_CONFDIR" ] ; then
       if [ "${APACHE_CONFDIR##/etc/apache2-}" != "${APACHE_CONFDIR}" ] ; then
               DIR_SUFFIX="${APACHE_CONFDIR##/etc/apache2-}"
       else
               DIR_SUFFIX=

整个文件一共有410行。

你可以检查unit文件的依赖关系,我常常被这些复杂的依赖关系给吓到:

   

代码如下:

$ systemctl list-dependencies httpd.service

cgroups

cgroups,或者叫控制组,在Linux内核里已经出现好几年了,但直到systemd的出现才被真正使用起来。The kernel documentation中是这样描述cgroups的:“控制组提供层次化的机制来管理任务组,使用它可以聚合和拆分任务组,并管理任务组后续产生的子任务。”换句话说,它提供了多种有效的方式来控制、限制和分配资源。systemd使用了cgroups,你可以便捷的查看它,使用下面的命令可以展示你系统中的整个cgroup树:

   

代码如下:

$ systemd-cgls

你可以使用ps命令来进行查看cgroup树:

   

代码如下:

$ ps xawf -eo pid,user,cgroup,args

常用命令集

下面的命令行展示了如何为守护进程重新装载配置文件,注意不是systemd服务文件。 使用这个命令能够激活新的配置项,且尽可能少的打断业务进程,下面以Apache为例:

   

代码如下:

# systemctl reload httpd.service

重新装载服务文件(service file)需要完全停止和重新启动服务。如果服务挂死了,用下面的命令行可以恢复它:

   

代码如下:

# systemctl restart httpd.service

你还可以用一个命令重启所有的守护进程。这个命令会重新装载所有守护进程的unit文件,然后重新生成依赖关系树:

   

代码如下:

# systemctl daemon-reload

在非特权模式下,你也可以进行重启、挂起、关机操作:

   

代码如下:

$ systemctl reboot
   $ systemctl suspend
   $ systemctl poweroff

到此,相信大家对“linux中systemd命令的运行级别与其常见应用”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: linux中systemd命令的运行级别与其常见应用

本文链接: https://lsjlt.com/news/263862.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • linux中systemd命令的运行级别与其常见应用
    本篇内容主要讲解“linux中systemd命令的运行级别与其常见应用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux中systemd命令的运行级别与其常见应用”吧!运行级别 vs. 状...
    99+
    2023-06-13
  • Linux中级用户常用的命令有哪些
    这篇文章主要为大家展示了“Linux中级用户常用的命令有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux中级用户常用的命令有哪些”这篇文章吧。21. 命令: Find搜索指定目录下的...
    99+
    2023-06-16
  • 系统运维中20个常用的Linux命令
    这篇文章给大家分享的是有关系统运维中20个常用的Linux命令的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、查看目录以及权限在windows中,使用dir查看当前目录中文件。在Linux中使用ls(list)...
    99+
    2023-06-16
  • Linux中运行级别与重新启动的示例分析
    这篇文章将为大家详细讲解有关Linux中运行级别与重新启动的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。概述在本文中,学习关闭或重启您的 Linux 系统,警告用户系统正在关闭,请切换到单用户模...
    99+
    2023-06-16
  • Linux中htop的安装与其命令的使用教程
    这篇文章主要讲解了“Linux中htop的安装与其命令的使用教程”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux中htop的安装与其命令的使用教程”吧!1. htop简介Htop是一...
    99+
    2023-06-12
  • linux中的常用命令与快捷键介绍
    目录1 系统介绍2 系统快捷方式3 常用系统命令1 系统介绍 1、ping 格式: ping [网址] # 判断系统是否可以正常连网 2、主机登录用户信息 [root@localhost ~]# ...
    99+
    2022-06-04
    linux常用命令 linux快捷键
  • linux中常用的20个命令分别是什么
    小编给大家分享一下linux中常用的20个命令分别是什么,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!什么是Linux系统Linux是一种免费使用和自由传播的类UNIX操作系统,是一个基于POSIX的多用户、多任务、支持多...
    99+
    2023-06-14
  • Linux运维中常用维护命令的示例分析
    这篇文章主要为大家展示了“Linux运维中常用维护命令的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux运维中常用维护命令的示例分析”这篇文章吧。(1)让程序在用户退出后仍然在运...
    99+
    2023-06-10
  • Linux命令行中常用的计算器有哪些
    本文小编为大家详细介绍“Linux命令行中常用的计算器有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“Linux命令行中常用的计算器有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1)bcbc在默认的情...
    99+
    2023-06-28
  • linux中的常用命令与快捷键有哪些
    小编给大家分享一下linux中的常用命令与快捷键有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1 系统介绍1、ping格式:  &nbs...
    99+
    2023-06-22
  • Linux中常用的命令行搜索工具有哪些
    这篇文章主要介绍Linux中常用的命令行搜索工具有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!grep使用 grep 的优势是它几乎可以在任意类 Unix 系统上使用。这个命令的强大之处我相信大家都有所耳闻了。...
    99+
    2023-06-16
  • linux中不常用的gcc命令行选项有哪些
    小编给大家分享一下linux中不常用的gcc命令行选项有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!生成 -Wall 选项不包括的警告尽管 gcc 编译器的...
    99+
    2023-06-16
  • 如何使用Linux中监控CPU与虚拟内存运行信息的命令
    本篇内容介绍了“如何使用Linux中监控CPU与虚拟内存运行信息的命令”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!mpstatmpstat...
    99+
    2023-06-12
  • ArchLinux中有哪些常见的命令行工具和实用程序推荐
    在ArchLinux中,有许多常见的命令行工具和实用程序,以下是一些推荐的工具: Pacman - ArchLinux 中的包管理...
    99+
    2024-04-02
  • 如何在PHP教程中运用Bash命令解决日志记录中的常见问题?
    PHP是一种广泛使用的编程语言,特别是在开发Web应用程序方面。然而,在实际开发中,我们经常会遇到一些挑战,特别是在日志记录方面。为了解决这些问题,我们可以使用Bash命令。在本文中,我们将介绍如何在PHP教程中运用Bash命令解决日志记录...
    99+
    2023-09-16
    教程 bash 日志
  • Linux中使用curl命令访问https站点的4种常见错误和解决方法
    这篇文章主要讲解了“Linux中使用curl命令访问https站点的4种常见错误和解决方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux中使用curl命令访问https站点的4种常...
    99+
    2023-06-13
  • Linux中忘记root密码进入单用户模式切换运行级别的示例分析
    这篇文章将为大家详细讲解有关Linux中忘记root密码进入单用户模式切换运行级别的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。切换用户指令  su - 用户名当高权限用户切换到低权限用户的时候...
    99+
    2023-06-09
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作