linux systemctl 日志,Linux进程、日志以及systemctl控制

本文详细介绍了Linux系统中进程管理,包括查看进程树、进程快照、动态排名、检索进程、调度及杀死进程的方法。同时,讲解了日志管理,如常见日志文件、用户日志、日志分析以及日志消息的优先级。此外,还重点阐述了systemctl工具的使用,包括如何控制服务的启动、停止、重启以及状态检查。通过对systemd的介绍,展示了其作为高效系统和服务管理器的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本篇主要讲述:

1  进程管理

2  日志管理

3  systemctl控制

1、进程管理

程序:静态没有执行的代码,占用磁盘空间

进程:执行的代码放入内存中运行,占用内存、cpu

PID:编号,标识进程

父进程、子进程

1.1 查看进程树

pstree — Processes Tree

yum -y install psmisc

格式:pstree [选项] [PID或用户名]

常用命令选项

-a:显示完整的命令行

-p:列出对应PID编号

systemd:内核直接运行的第一个进程,PID永远为1

bash───vim

[[email protected] ~]# pstree -p lisi

bash(30712)───vim(30751)

[[email protected] ~]# pstree -ap lisi

1.2 查看进程快照

ps (processes snapshot)

ps aux 操作 显示当前终端所有进程(a),当前用户在所有终端下的进程(x),以用户格式输出(u)     #列出正在运行的所有进程

ps -elf 操作 显示系统内所有进程(-e),以长格式输出(-l),信息,包括最完整的进程信息(-f)    #列出正在运行的所有进程

ps aux | grep ssh

ps -elf | grep tomcat | grep -v ‘grep‘ | awk ‘{print $4}‘ | xargs kill -9

1.3 进程动态排名

top 交互式工具

格式: top [-d 刷新秒数]

top - 07:41:11 up 19 min,  2 users,  load average: 0.01, 0.02, 0.05

Tasks: 284 total,   2 running, 282 sleeping,   0 stopped,   0 zombie

%Cpu(s):  0.3 us,  1.0 sy,  0.0 ni, 98.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st

KiB Mem :  1878184 total,  1486892 free,   171196 used,   220096 buff/cache

KiB Swap:   524284 total,   524284 free,        0 used.  1574156 avail Mem

PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND

内容说明:

load average: 0.03, 0.04, 0.05:5分钟,10分钟,15分钟系统的负载的情况

PID:进程ID,进程的唯一标识符

USER:进程所有者的实际用户名。

PR:进程的调度优先级。这个字段的一些值是‘rt‘。这意味这这些进程运行在实时态。

NI:进程的nice值(优先级)。越小的值意味着越高的优先级。负值表示高优先级,正值表示低优先级

VIRT:进程使用的虚拟内存。进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

RES:驻留内存大小。驻留内存是任务使用的非交换物理内存大小。进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

SHR:SHR是进程使用的共享内存。共享内存大小,单位kb

S:这个是进程的状态。它有以下不同的值:

D - 不可中断的睡眠态。

R – 运行态

S – 睡眠态

T – 被跟踪或已停止

Z – 僵尸态

%CPU:自从上一次更新时到现在任务所使用的CPU时间百分比。

%MEM:进程使用的可用物理内存百分比。

TIME+:任务启动后到现在所使用的全部CPU时间,精确到百分之一秒。

COMMAND:运行进程所使用的命令。进程名称(命令名/命令行)

按大写的P   cpu排序

按大写的M   内存排序

T:根据进程消耗的TIME降序排列

k:杀死指定进程

q:退出top

1.4 检索进程

pgrep — Process Grep

用途:pgrep [选项]... 查询条件

常用命令选项

-l:输出进程名,而不仅仅是 PID

-U:检索指定用户的进程

-t:检索指定终端的进程

-x:精确匹配完整的进程名

[[email protected] ~]# pgrep -l log

[[email protected] ~]# pgrep -U lisi

[[email protected] ~]# pgrep -lU lisi

[[email protected] ~]# pstree -ap lisi

[[email protected] ~]# who                    #查看正在登陆的用户信息

[[email protected] ~]# pgrep -lU lisi

[[email protected] ~]# pgrep -lU lisi -t pts/2

1.5  进程的调度(前后台)

放入后台启动

– 在命令行末尾添加“&”符号,正在运行的状态放入后台

– Ctrl + z 组合键,暂停的状态放入后台

[[email protected] ~]# sleep 800 &       #将前台的进程,正在运行放入后台

[[email protected] ~]# jobs                   #查看后台进程

[[email protected] ~]# jobs -l               #查看后台进程,并且加上PID

^Z                                              #按Ctrl+z可以暂停放入后台

[2]+  已停止               sleep 700

[[email protected] ~]# bg 2                 #将后台进程编号为2的,继续在后台运行

[2]+ sleep 700 &

[[email protected] ~]# fg 1                 #将后台的进程恢复到前台

sleep 800

^C                                            #按Ctrl+c结束进程

sleep 700

^C                                            #按Ctrl+c结束进程

1.6  杀死进程

kill 参数

kill 数字等级

kill  [-9]  PID...

killall  [-9]  进程名...

pkill 查找条件

pkill -9 -U lisi       #强制踢出用户

[[email protected] ~]# sleep  900 &

[[email protected] ~]# sleep  900 &

[[email protected] ~]# sleep  900 &

[[email protected] ~]# sleep  900 &

[[email protected] ~]# killall  sleep

2 、日志管理

2.1 日志概述

系统和程序的“日记本”

– 记录系统、程序运行中发生的各种事件

– 通过查看日志,了解及排除故障

– 信息安全控制的“依据

2.2 常见的日志文件

/var/log/messages       记录内核消息、各种服务的公共消息

/var/log/dmesg            记录系统启动过程的各种消息

/var/log/cron                记录与cron计划任务相关的消息

/var/log/maillog           记录邮件收发相关的消息

/var/log/secure             记录与访问限制相关的安全消息

tailf    实时跟踪 新增日值消息

2.3 用户日志

由登录程序负责记录/管理

日志消息采用二进制格式

记录登录用户的时间,来源,执行的命令等信息

/var/log/lastlog:记录最近的用户登录事件

/var/log/wtmp:记录成功的用户登录/注销事件

/var/log/btmp:记录失败的用户登录事件

/var/run/utmp:记录当前登录的每个用户的相关信息

2.4 日志分析

users、who、w 命令

查看已登录的用户信息,详细度不同

last、lastb 命令

查看最近登录成功/失败的用户信息

[[email protected] ~]#  last -2     #最近两次登录成功

[[email protected] ~]#  lastb -2   #最近两次登录失败

2.5 日志消息的优先级

Linux内核定义的事件紧急程度

– 分为 0~7 共8种优先级别

– 其数值越小,表示对应事件越紧急/重要

0  EMERG(紧急) 会导致主机系统不可用的情况

1  ALERT(警告) 必须马上采取措施解决的问题

2  CRIT(严重) 比较严重的情况

3  ERR(错误) 运行出现错误

4  WARNING(提醒) 可能会影响系统功能的事件

5  NOTICE(注意) 不会影响系统但值得注意

6  INFO(信息) 一般信息

7  DEBUG(调试) 程序或系统调试信息等

2.6 使用journalctl工具

• 提取由 systemd-journal 服务搜集的日志

• 常见用法

– journalctl | grep 关键词

– journalctl -u 服务名 [-p 优先级]

– journalctl -n 消息条数

– journalctl --since="yyyy-mm-dd HH:MM:SS" --

until="yyyy-mm-dd HH:MM:SS"

[[email protected] ~]# yum -y install httpd

[[email protected] ~]# systemctl restart httpd

[[email protected] ~]# journalctl -u httpd -p 6

3 、systemctl控制

3.1 systemd介绍

一个更高效的系统&服务管理器

开机服务并行启动,各系统服务间的精确依赖

服务目录:/lib/systemd/system/

控制服务状态

systemctl start|stop|restart 服务名...

查看服务的运行状态

systemctl status|is-active  服务名...

[[email protected] ~]# systemctl enable httpd         #设置随机自起

[[email protected] ~]# systemctl is-enabled httpd   #查看是否随机自起

[[email protected] ~]# systemctl disable httpd        #设置随机不自起

[[email protected] ~]# systemctl is-enabled httpd

graphical.target   图形模式

multi-user.target  文本模式

当前切换图形模式

[[email protected] ~]# systemctl isolate graphical.target

每次开机都进入的模式,默认模式的修改

[[email protected] ~]# systemctl get-default      #查看默认级别

[[email protected] ~]# systemctl set-default graphical.target    #设置默认级别

[[email protected] ~]# systemctl get-default

systemcli -t service            #列出活动的系统服务

systemcli -t service  --all   #列出所有系统服务

原文:https://www.cnblogs.com/cp-linux/p/13339757.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值