Linux进程以及服务的控制

1.什么进程

系统中正在运行的程序

 

2.图形的进程查看方式

gnome-system-monitor

 

 

3.查看进程的命令

 

  

ps a 当前环境相关进程

ps -a 在当前终端中运行的进程,但不包含当前环境的进

ps -A|-e 系统所有进程 (两个命令显示效果相同,不重复展示)

 

ps x 查看含有输出终端的进程

ps f 查看进程的从属关系

 

ps u 进程的所有人

 

 

ps ax -o comm,%cpu,%men,pid,nice,user,group,stat  按需求查看该进程的信息

其中comm指的是进程名称, cpu指的是cpu占用率,nice指的是进程的优先级

user表示该进程用户,group指该进程所属组.

stat表示状态

D 不可中断 Uninterruptible(usually IO)
R 正在运行,或在队列中的进程
S 处于休眠状态
T 停止或被追踪
Z 僵尸进程
W 进入内存交换(从内核2.6开始无效)
X 死掉的进程

 

 

ps ax --sort=%cpu    按占用cpu的大小给进程按升序排序

ps ax --sort=-%cpu  按占用cpu的大小给进程按降序大排序

 

 

小练习:

把系统前五cpu使用的 进程id 抓出来

使用命令 ps ax  --sort=%cpu|tail  -5

 

 

 

 

 

4.进程优先级

ps -o comm,nice,pid,stat(查看进程)

ST 进程状态

s 此进程为顶级进程

T 进程是暂停的

< 表示进程的优先级高

N 进程优先级低

l 进程在内存中有锁定空间

 

 

renice -n -5 pid 修改进程的优先级

 

 

nice -n -5  & 指定优先级开启进程

例如nice  -n -5 &vim(制定vim以-5的优先级开启)

 

 

 

5.进程前后台的调用

 

 

ctrl+z 将占用终端的进程打入后台停止 (打入后台的进程无法再进行任何操作)

 

jobs 查看被打入后台的进程

bg jobnums 将指定进程在后台运行

fg jobunms 将指定进程调回前台

ctrl+c 将占用当前终端的进程结束

 

 

 

6.信号

1 进程不停止情况下重新加载配置

2 清除进程在内存中的数据

3 清楚鼠标在内存中的数据

9 强行结束进程

15 正常关闭进程

18 运行停止的进程

19 暂停进程 ,不能被阻塞

20 暂停进程

 

发起信号的工具  

kill 信号 pid

killall 信号 进程名称

 

 

 

 

 

7.服务的控管

在ubuntu中

开启ssh服务首先需要安装打开ssh服务的库:

sudo apt-get install openssh-server

 

systemctl start sshd 开启

systemctl stop sshd 关闭

systemctl status sshd 显示状态

systemctl restart sshd 重启

systemctl enable sshd 开机启动

systemctl disable sshd 开机关闭

systemctl list-units 列出所有已经开启服务名称

systemctl list-unit-files 列出系统中服务开机状态

systemctl list-dependcies sshd 列出服务依赖关系

systemctl mask sshd 冻结服务

systemctl unmask  sshd 解冻服务

systemctl set-default multi-user.target 开机不启动图形

systemctl set-default graphical.target  开机启动图形

 

 

 

小知识:

 

sed

sed是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。

 

 

 akw(报告生成器)

awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。

awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。

awk其名称得自于它的创始人 Alfred Aho 、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母。实际上 AWK 的确拥有自己的语言: AWK 程序设计语言 , 三位创建者已将它正式定义为“样式扫描和处理语言”。它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报 表,还有无数其他的功能。

 

猜你喜欢

转载自blog.csdn.net/qq_35501660/article/details/81814337