信创操作系统--麒麟kylin桌面操作系统(项目十二使用systemd管理系统服务)(代码片段)

正月十六工作室 正月十六工作室     2022-11-29     332

关键词:


信创操作系统–麒麟Kylin桌面操作系统 (项目十二 使用Systemd管理系统服务)


目录


1. 使用Systemd管理系统服务

Systemd 是操作系统的管家,通过它可以快捷、方便的管理系统的各项功能。

1.1 Systemd概述

Systemd 是Linux 操作系统中最基础的组成部分,作为操作系统的第一个用户进程(PID1)运行并启动操作系统的其余部分,其主要作用是进行操作系统和服务管理。

Systemd 具有并行启动系统服务的功能,使用套接字和 D-Bus 激活来启动服务,按需启动、守护程序,使用 Linux 控制组限院讲程,维护安装和自动挂载点,以及实现精心设计的基于事务依赖关系的服务控制逻辑。

Systemd 支持 SysV 和 LSB 初始化脚本,并替代 SysVinit。Systemd 的其他功能包括日志记录守护程序,用于控制基本系统配置,如主机名、日期、区域设置、已登录用户和正在运行的容器、虚拟机的列表、系统账户、运行时目录和设置等,也可用于管理简单网络的守护程序配置,如网络事件的同步,日志转发以及名称解析等。

虽然 Systemd 功能较强大,管理范围较宽广,但它的核心只有一个/bin/systemd。Linux 内核启动后,它作为第一个被执行的用户进程,起到了承上启下的作用。当某个进程占用太多系统资源时,systemd 有权执行 OOM 机制来杀死该进程,即彻底结束该进程,以此保护整个系统不会因资源耗尽而崩溃。

1.2 服务管理

Systemd 最重要的功能就是对系统的服务管理,服务进程的启动、重启等都时由它控制的。如在准备搭建一个网站前,需在终端执行sudo apt install nginx命令安装 Nginx(Web服务器),然后就可以用如下所示的命令来管理 Nginx 服务器。

启动服务:sudo systectl start nginx.sercive

停止服务:sudo systectl stop niginx.service

重启服务:sudo systectl restart niginx.service

查看服务:sudo systemctl status nginx.service

开机启动服务:sudo systemctl enable nginx.service

禁止开机启动服务:sudo systemctl disable nginx.service

1.3 电源管理

在终端中执行如下命令可对计算机的电源进行管理。
重启:sudo systemctl reboot
关机:sudo systemctl poweroff
待机:sudo systemctl suspend
休眠:sudo systemctl hibernate

1.4 日志管理

(1)Systemd可以使用journalctl命令管理日志。

(2)执行命令sudo journalctl可查看所有日志,如图1-1所示。

图1-1 筛选出与内核相关日志

(3)执行命令sudo journalctl -p err可查看所有日志,并筛选出错误相关的日志,如图1-2所示。

图1-2 筛选错误相关的日志

除了err,还可以替换为其他的参数来查看所有日志,并筛选出错误相关的日志,可选参数有0:emerg、1:alert、2:crit、3:err、4:warning、5:notice、6:info或7:debug。
其中数字代表级别,级别越高越详细。在使用err查看日志时也可以使用3来代替err,其效果是一样的。

(4)执行命令sudo journalctl -b,可查看本次开机到查看日志时的日志,如图1-3所示。

图1-3开机到查看日志时的日志

(5)执行命令sudo journalctl -b -l,可查看上一次开机到关机的日志。

(6)上述参数还可以组合使用,如执行命令sudo journalctl -b -l -k -p err可查看上一次开机到关机的日志,并筛选出内核出错的日志。

(7)还可以查看自某个时间点以来的日志,如执行命令sudo journalctl –since “2021-09-19 12:00”,即可查看自该时间点到查看日志时的日志。

(8)执行命令sudo journalctl –since “2021-09-18 12:00” - -until ”2021-09-19 12:30”,可查看指定时间段的日志。

(9)除了查看指定时间段的日志外还可以查看指定服务的日志,如查看Nginx服务的日志,执行命令sudo journalctl -u nginx即可。

(10)查看完日志后可执行命令sudo journalctl > ~/rizhi.txt,导出所有日志为rizhi.txt并保存到磁盘上。

(11)如果发现只能显示本次启动的日志,而不能显示上次启动的的日志,可能时因为日志没有存储在磁盘上,可执行如下命令来开启的磁盘存储功能。

sudo mkdir /var/log/journal
sudo chown root:system-journal /var/log/journal
sudo chmod 2775 /var/log/journal
sudo systemctl restart system-journald.service

1.5 主机信息管理

(1)执行命令homenamectl可查询主机信息,如图1-4所示。

图1-4 主机信息

(2)执行命令sudo hostnamectl set-hostname UOS可设置主机名称,在执行命令bash刷新主机名称,如图1-5所示。

图1-5设置主机主机名称

1.6 系统语言管理

(1)执行命令localectl可查询系统语言设置,如图1-6所示。

图1-6系统语言设置

(2)执行命令sudo localect set-locale LANG=zh_CN.utf8可设置系统语言为中文。

(3)执行命令sudo localectl set-keymap zh_CN可设置系统键盘布局为中文。

1.7 时间管理

(1)执行timedatectl 可查看系统时区,如图1-7所示。

图1-7 系统时区

(2)执行命令timedatectl list-timezone可显示所有可用时区。
(3)执行命令sudo timedatectl set-ntp false可关闭网络同步时间服务。
(4)执行命令sudo timedatectl set-timezone America/New_York可设置系统时区。
(5)当需要手动更改系统本地时间时,需要先手动关闭同步时间服务。

1.8 登录管理

(1)当某个用户登录操作系统后,Systemd 会在内存开辟一块区域,叫作 session 里面存放着这个用户登录后运行的进程。当用户注销后session会被删除,内存会被回收。

(2)执行命令loginctl list-sessions列出当前session,如图1-8所示。

图1-8 session

(3)systemd 允许同一用户在不同终端同时登录,但每次登录都会生成新的 session,一个 session 的崩溃或者注销不会影响到另一个 session,session 之间有一定的隔离性。

(4)执行命令loginctl list-users,即可列出当前登录用户,如图1-9所示。

图1-9 当前登录用户

2. 系统错误排查

当系统没能按照预期运行,出现应用程序无响应、卡顿或者崩溃的现象时,可以通过查看系统的各种日志来定位问题所在,然后通过修改代码或者修改配置等方式来解决。

2.1 使用journalctl查看内核和应用错误

在终端中执行命令sudo journalctl,然后输入斜杠【/】进入搜索模式。
输入关键词查找内核和应用错误的详细信息,并按【Enter】键进行搜索。按【PageUp】键和【PageDown】键进行翻页,或按【N】键搜索下一个匹配。

2.2 查看系统日志和内核日志

在 system-journal 之前,Linux系统上一般是使用 rsyslog 来记录系统日志和内核日志。日志一般放在 /var/log/message 目录下,可以使用 cat、less 或 tail 去读取日志。

执行命令sudo less /var/log/messages可查看所有日志。
执行命令sudo less /var/log/syslog可查看系统日志。
执行命令sudo less /var/log/kern.log可查看内核日志。
执行命令sudo less /var/log/boot.log可查看启动日志。
执行命令sudo less /var/log/user.log可查看用户日志。

2.3 查看桌面日志

在系统运行的过程中,有时会遇到桌面崩溃、进程退出、桌面黑屏等情况,可以执行命令sudo less /var/log/Xorg.0.log查看桌面日志来定位问题。

2.4 查看串口日志

有些问题,如磁盘损坏、内核崩溃、固件问题等,通过上文的方式均无法定位问题,需要以更加底层的方式去获取日志,此时就需要通过串口去获取固件、内核以及操作系统的日志。


制作成员: 郑伟钦
排版: 裕新
初审: 梁汉荣
复审: 二月二


点击下方“正月十六工作室”查看更多学习资源

正月十六工作室

信创操作系统--麒麟kylin桌面操作系统(项目十三使用windows软件)(代码片段)

信创操作系统–麒麟Kylin桌面操作系统(项目十三使用Windows软件)目录1.Wine介绍2.安装Windows软件2.1通过应用商店软件2.2命令行界面安装Windwos软件2.3通过Winetricks安装3.卸载Windows软件3.1通过开始菜单卸载3.2通过Winetricks卸载1.Wine介... 查看详情

信创操作系统--麒麟kylin桌面操作系统(项目十三使用windows软件)(代码片段)

信创操作系统–麒麟Kylin桌面操作系统(项目十三使用Windows软件)目录1.Wine介绍2.安装Windows软件2.1通过应用商店软件2.2命令行界面安装Windwos软件2.3通过Winetricks安装3.卸载Windows软件3.1通过开始菜单卸载3.2通过Winetricks卸载1.Wine介... 查看详情

信创操作系统--麒麟kylin桌面操作系统(项目十三使用windows软件)(代码片段)

信创操作系统–麒麟Kylin桌面操作系统(项目十三使用Windows软件)目录1.Wine介绍2.安装Windows软件2.1通过应用商店软件2.2命令行界面安装Windwos软件2.3通过Winetricks安装3.卸载Windows软件3.1通过开始菜单卸载3.2通过Winetricks卸载1.Wine介... 查看详情

信创操作系统--麒麟kylin桌面操作系统(项目十一使用终端及查看硬件信息)

信创操作系统–麒麟Kylin桌面操作系统(项目十一使用终端及查看硬件信息)目录1.bash与终端1.1什么是bash1.2什么是终端1.3什么是终端模拟器2.使用终端与tty2.1使用终端2.2使用tty3.基本的shell操作3.1查看文件内容的命令3.2文件和目... 查看详情

信创操作系统--麒麟kylin桌面操作系统(项目十一使用终端及查看硬件信息)

信创操作系统–麒麟Kylin桌面操作系统(项目十一使用终端及查看硬件信息)目录1.bash与终端1.1什么是bash1.2什么是终端1.3什么是终端模拟器2.使用终端与tty2.1使用终端2.2使用tty3.基本的shell操作3.1查看文件内容的命令3.2文件和目... 查看详情

信创操作系统--麒麟kylin桌面操作系统(项目十二使用systemd管理系统服务)(代码片段)

信创操作系统–麒麟Kylin桌面操作系统(项目十二使用Systemd管理系统服务)目录1.使用Systemd管理系统服务1.1Systemd概述1.2服务管理1.3电源管理1.4日志管理1.5主机信息管理1.6系统语言管理1.7时间管理1.8登录管理2.系统错误排查2.1使... 查看详情

信创操作系统--麒麟kylin桌面操作系统(项目十二使用systemd管理系统服务)(代码片段)

信创操作系统–麒麟Kylin桌面操作系统(项目十二使用Systemd管理系统服务)目录1.使用Systemd管理系统服务1.1Systemd概述1.2服务管理1.3电源管理1.4日志管理1.5主机信息管理1.6系统语言管理1.7时间管理1.8登录管理2.系统错误排查2.1使... 查看详情

信创操作系统--麒麟kylin桌面操作系统(项目十二使用systemd管理系统服务)(代码片段)

信创操作系统–麒麟Kylin桌面操作系统(项目十二使用Systemd管理系统服务)目录1.使用Systemd管理系统服务1.1Systemd概述1.2服务管理1.3电源管理1.4日志管理1.5主机信息管理1.6系统语言管理1.7时间管理1.8登录管理2.系统错误排查2.1使... 查看详情

信创操作系统--麒麟kylin桌面版操作系统博文汇总目录

信创操作系统–麒麟Kylin桌面版操作系统博文汇总目录本系列文章已经全部更新完毕,欢迎大家阅读~信创操作系统–麒麟Kylin桌面版(项目一操作系统安装:分别在虚拟机、物理机和Win10上安装,驱动安装)保... 查看详情

信创操作系统--麒麟kylin桌面版操作系统博文汇总目录

信创操作系统–麒麟Kylin桌面版操作系统博文汇总目录本系列文章已经全部更新完毕,欢迎大家阅读~信创操作系统–麒麟Kylin桌面版(项目一操作系统安装:分别在虚拟机、物理机和Win10上安装,驱动安装)保... 查看详情

信创操作系统--麒麟kylin桌面版(项目六文档处理:输入法wps文本编辑器)

信创操作系统–麒麟Kylin桌面版(项目六文档处理:输入法、WPS、文本编辑器)目录1.输入法配置2.WPS办公软件的使用3.编辑器1.输入法配置麒麟桌面版v10的输入法默认为搜狗输入法麒麟版。(1)输入法配置的打... 查看详情

信创操作系统--麒麟kylin桌面操作系统(项目十一使用终端及查看硬件信息)

信创操作系统–麒麟Kylin桌面操作系统(项目十一使用终端及查看硬件信息)目录1.bash与终端1.1什么是bash1.2什么是终端1.3什么是终端模拟器2.使用终端与tty2.1使用终端2.2使用tty3.基本的shell操作3.1查看文件内容的命令3.2文件和目... 查看详情

信创操作系统--麒麟kylin桌面操作系统(项目九实用工具软件:截图字体扫描打印机)

信创操作系统–麒麟Kylin桌面操作系统(项目九实用工具软件:截图、字体、扫描、打印机)目录截图字体扫描打印机截图(1)在桌面左下角的【开始菜单】中找到【截图】工具,如图1-1所示。图1-1打开【... 查看详情

信创操作系统--麒麟kylin桌面版(项目八多媒体软件:图像查看图像处理音频播放录音机)

信创操作系统–麒麟Kylin桌面版(项目八多媒体软件:图像查看、图像处理、音频播放、录音机)目录1.图像查看器1.1看图2.图像处理软件2.1画板2.2GIMP2.3截图3.音频播放器4.录音机1.图像查看器1.1看图看图是一款小巧的图片查... 查看详情

信创操作系统--麒麟kylin桌面版(项目五软件管理:应用商店deb包安装包管理器)(代码片段)

信创操作系统–麒麟Kylin桌面版(项目五软件管理:应用商店、deb包安装、包管理器)目录1.应用商店1.1登录应用商店1.2搜索应用1.3安装应用1.4更新应用1.5卸载应用1.6通过下载软件的deb包进行软件安装2.基于命令行的包... 查看详情

信创操作系统--麒麟kylin桌面版(项目三控制中心:账户自定义个性化声音日期电源管理网络输入法系统更新等设置)

信创操作系统–麒麟Kylin桌面版(项目三控制中心:账户、自定义、个性化、声音、日期、电源管理、网络、输入法、系统更新等设置)目录1、账户类设置1.1账户设置2、自定义类设置2.1显示设置2.2个性化设置2.3声音设置2.4... 查看详情

麒麟kylin桌面操作系统(项目二桌面环境)(代码片段)

麒麟Kylin桌面操作系统(项目二桌面环境)目录桌面布局新建文件夹/文档设置排序方式调整图标设置显示器壁纸与屏保剪贴板任务栏回收站开始菜单开始菜单模式应用管理窗口管理器系统监视器硬件监控桌面布局麒麟操作系统... 查看详情

麒麟kylin桌面操作系统(项目一操作安装)(代码片段)

麒麟Kylin桌面操作系统(项目一操作安装)目录1.相关知识1.1BIOS概念1.1.1传统BIOS(Legacy)1.1.2UEFI1.2分区表1.2.1MBR1.2.2GPT(GUID)1.3文件系统1.3.1支持的文件系统1.3.2常用的文件系统1.4挂载点1.5硬件需求2.安装麒麟操作... 查看详情