第六课

进程

进程:已经启动的可执行程序的运行中的实例。每个进程都有自己的地址空间,并占用了一定的系统资源。

如何产生一个进程

  1. 执行程序或命令
  2. 计划任务

在终端中对进程管理

  1. 运行一个前台进程
[root@master Desktop]# firefox

(process:3731): GLib-CRITICAL **: g_slice_set_config: assertion `sys_page_size == 0' failed
# 会占用当前得终端
  1. 运行一个后台进程
[root@master Desktop]# firefox &
[1] 3796
[root@master Desktop]#
(process:3796): GLib-CRITICAL **: g_slice_set_config: assertion `sys_page_size == 0' failed [root@master Desktop]#
  1. jobs查看当前终端下得进程
[root@master Desktop]# jobs
[1]+ Running
  1. 前台后台切换
# 切换到前端 终端又被占用
root@master Desktop]# fg 1
firefox
# 切换到后端
root@master Desktop]# bg 1

Systemd 控制服务启动,守护进程

  1. 服务单元的状态
loaded   服务单元的配置文件已被处理
active (running) 运行中
active(exited) 某些一次性运行的服务已经陈工被执行并退出
active(waiting)服务已经运行,但正在等待某个时间
inactive 没运行
disabled 开机不运行
enabled 开机运行
static 不能够被设置为开机启动
  1. systemd命令
# 查看服务状态
systemctl status sshd
# 开启
systemctl start sshd
# 结束
systemctl stop sshd
# 重启
systemctl restart sshd
# 是否开机启动
systemctl is-enabled sshd
# 是否活动
systemctl is-active sshd
# 列出所有的服务单元
systemctl list units
# 列出所有服务单元文件
systemctl list-unit-files

本次课程涉及到的命令

ps -aux查看进程

注:该命令不加-也是好用的。

# a显示所有前台进程,x显示所有后台进程 u显示用户
[root@centos ~]# ps -aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 51896 3256 ? Ss Jul02 1:59 /usr/lib/systemd/systemd --system --deserialize 21
root 2 0.0 0.0 0 0 ? S Jul02 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S Jul02 1:54 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< Jul02 0:00 [kworker/0:0H]
root 7 0.0 0.0 0 0 ? S Jul02 0:23 [migration/0]
root 8 0.0 0.0 0 0 ? S Jul02 0:00 [rcu_bh]
root 9 0.0 0.0 0 0 ? S Jul02 6:56 [rcu_sched]
root 10 0.0 0.0 0 0 ? S Jul02 1:31 [watchdog/0]
  • 最上一行信息介绍
USER 	哪个用户产生进程
PID 进程号
%CPU 占用cpu资源的百分比
%MEM 占用物理内存的百分比
VSZ 虚拟内存的占用
RSS 占用物理内存的大小单位(kb)
TTY 只以哪一个控制台(终端)运行程序
STAT 状态
R 表示正在运行
+表示后台进程
S表示睡眠状态的进程
s包含子进程(父进程停止,子进程也会停止)
T停止状态的进程(显示T的可以被唤醒)
START 进程的启动时间
TIME 进程占了CPU多长时间
COMMAND 这个进程哪个命令来的

ps -le查看进程

# l显示详细信息 e显示左右进程 f标准格式
[root@centos ~]# ps -efl
F S UID PID PPID C PRI NI ADDR SZ WCHAN STIME TTY TIME CMD
4 S root 1 0 0 80 0 - 12974 ep_pol Jul02 ? 00:01:59 /usr/lib/systemd/systemd --system --deserialize 21
1 S root 2 0 0 80 0 - 0 kthrea Jul02 ? 00:00:00 [kthreadd]
1 S root 3 2 0 80 0 - 0 smpboo Jul02 ? 00:01:54 [ksoftirqd/0]
1 S root 5 2 0 60 -20 - 0 worker Jul02 ? 00:00:00 [kworker/0:0H]
1 S root 7 2 0 -40 - - 0 smpboo Jul02 ? 00:00:23 [migration/0]

top 动态查看进程

top - 17:05:45 up 56 days,  6:46,  1 user,  load average: 0.11, 0.05, 0.05
Tasks: 126 total, 1 running, 125 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.3 us, 0.2 sy, 0.0 ni, 99.5 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 5946700 total, 783956 free, 3881272 used, 1281472 buff/cache
KiB Swap: 4194300 total, 4097288 free, 97012 used. 1686820 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
15056 root 20 0 990364 31204 7096 S 0.7 0.5 34:30.57 dockerd-current
12612 root 20 0 0 0 0 S 0.3 0.0 0:00.06 kworker/1:1
  • top拥有交互式命令
	? 或H 弹出帮助信息
​ P 以CPU的使用率排序
​ M 以内存的使用率排
​ N 以PID的顺序排
​ q退出top
  • top 最上层显示的意义
# 第一行
当前时间 开机时间 几个用户 资源使用率:1分钟,5分钟,15分钟
# 第二行
总共任务数 运行的 睡眠的 停止的 僵尸进程
`注:什么是僵尸进程:父进程停止了 子进程没停止叫做僵尸进程。`
# 第三行
CPU使用率 us用户占用sy 系统占用的 ni改变过优先级的进程占用的 id空闲的 wa 等待进程 hi 硬件中断占用的 si 软中断占用的 st 有虚拟机是,虚拟占用的
# 第四行
物理内存:总数 使用中 空闲的 缓存区
# 第五行
虚拟内存:总数 使用中 空闲的 缓存区
# 第六行
PID USER PR 优先级 NI nice值 VIRT 申请的虚拟内存 RES常驻内存实际的 SHR 共享的 S 状态

free查看内存使用情况

# -h 是以人类能看的懂得样式输出
[root@centos ~]# free -h
total used free shared buff/cache available
Mem: 5.7G 3.7G 760M 33M 1.2G 1.6G
Swap: 4.0G 94M 3.9G

pstree 树状结构显示进程

# -p参数是显示子进程
[root@centos ~]# pstree -p
systemd(1)─┬─NetworkManager(701)─┬─{NetworkManager}(726)
│ └─{NetworkManager}(729)
├─abrt-watch-log(7869)
├─abrtd(7850)
├─atd(7480)
├─auditd(24144)───{auditd}(24153)
├─crond(31725)
├─dbus-daemon(660)

kill 杀掉进程

# -l  查看信号 -1 重启(让进程立即关闭,然后重新读取配置文件)-2 强制结束 (终止,力度轻)-9 强制结束	(强制关闭,用来立即结束程序)
# -15 正常终止 (正常关闭)-18 恢复后台 (可以让暂停的进程恢复执行,本信号不能被阻断)-19 前台与运行的放在后台(该信号可以暂停前台进程,相当于CTRL+Z。本新号不能被阻断)
[root@centos ~]# kill -15 pid

killall pkill用进程名字杀进程

红帽学习笔记[RHCSA] 第六课[进程、服务相关]的更多相关文章

  1. 红帽学习笔记[RHCSA] 第七课[网络配置相关]

    第七课[网络配置相关] 在Vmware中添加网卡 编辑 -> 编辑虚拟网络 -> 添加网络->随便选择一个如VMnet2-> 选择仅主机模式 -> 勾掉使用本地DHCP服 ...

  2. 红帽学习笔记[RHCSA] 第八课[Nice值、时间同步、RPM与Yum软件安装]

    第八课 nice值 什么是nice值 给进程设置的优先级就是nice.nice的范围是-20~20.nice值越小占用的系统资源就越多,就是这个进程不nice. 如何查看nice值 # 使用top命令 ...

  3. 红帽学习笔记[RHCSA] 第四课[用户相关、破解root密码]

    第四课 关于Linux 的用户 用户分类: # UID 是用户ID ​ UID 0分配给超级用户(root) ​ UID 1-200 是一系列的 系统用户 静态分配给红帽的系统进程 ​ UID 201 ...

  4. 红帽学习笔记[RHCSA] 第五课[用户、权限相关]

    第五课 用户权限 查看文件的权限 [kane@localhost /]$ ll total 36 ----------. 1 root root 1751 Aug 22 20:58 ~ lrwxrwx ...

  5. 红帽学习笔记[RHCSA] 第三课[输出重定向、Vi编辑器]

    第三课 关于Linux的输入输出 输入输出 0 stdin 标准输入 仅读取 1 stdout 标准输出 仅写入 2 stderr 标准错误 仅写入 3 filename 其他文件 读取和/或写入 输 ...

  6. 红帽学习笔记[RHCSA] 第十课[计划任务Cron与At、逻辑卷管理]

    计划任务[At & Cron Jobs] at # at 命令只能计划一次性任务但是比较方便. # 先输入时间 [root@localhost Desktop]# at 10:02 # 输入要 ...

  7. 红帽学习笔记[RHCSA] 第一周

    目录 红帽学习笔记[RHCSA] 环境 第一课 关于Shell 命令的基础知识 在终端中敲命令的快捷键 本次课程涉及的命令 第二课 常用的目录结构与用途 本次课程涉及到的命令 第三课 关于Linux的 ...

  8. 红帽学习笔记[RHCSA] 第二周

    目录 红帽学习笔记[RHCSA]第二周 环境 第七课[网络配置相关] 在Vmware中添加网卡 将网卡添加到虚拟机上 关于网卡命名规则 配置网络 网络配置命令总结 更改hostname 关于SSH的一 ...

  9. 【转】 Pro Android学习笔记(七六):服务(1):local和remote

    文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件.转载须注明出处:http://blog.csdn.net/flowingflying/ Android提供服务,服务是运行在后台的 ...

随机推荐

  1. ie下不支持placeholder 用jquery来完成兼容

    这是我的第一个博客,还是写点正经的,希望对做前端朋友有所帮助.最近在做的项目placeholder不兼容ie,这个可以兼容IE的输入框的HTML新增的placeholder的显示下面是代码:$( do ...

  2. java.sql.SQLException: Access denied for user 'root'@'d001' (using password: YES)

    在安装CDH的时候报错了: root@d001:/var/cache//base# /opt/cm-/share/cmf/schema/scm_prepare_database.sh mysql cd ...

  3. Windows 7、Windows XP SP3关闭DEP堆栈执行保护

    Windows XP SP3 在Windows XP SP3中,关闭DEP的方法是: 编辑C:\boot.ini,你大概会看到如下内容 [boot loader] timeout=30 default ...

  4. python的xlrd、xlwt模块、openpyxl /pymsql使用

    xlrd模块: https://www.cnblogs.com/machangwei-8/p/10736528.html#_label0 xlwt模块 https://www.cnblogs.com/ ...

  5. JAVA笔记20-容器之四Map接口、自动打包、泛型(重要)

    一.Map接口 Map提供的是key到value的映射.key不能重复,每个key只能映射一个value. 注:重复是指equals,但用equals()方法效率低,所以此处用hashCode()方法 ...

  6. Java面试题系列(六)优化tomcat配置

    序言 资料 如何优化tomcat配置(从内存.并发.缓存3个方面)优化

  7. C/C++中结构体引用中箭头->与点.的区别

    1.作用 ->主要用于类类型的指针访问类的成员,而.运算符,主要用于类类型的对象访问类的成员. 举例: class A { public : int member; } A a; //定义一个结 ...

  8. std::string 和 CString问题

    std::string stdTemp; CString strTemp; strTemp = stdTemp;    ;//这一步直接赋值可不可以 因为CString可以接受const char*的 ...

  9. Codeforces Round #287 (Div. 2) E. Breaking Good 路径记录!!!+最短路+堆优化

    E. Breaking Good time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...

  10. (58)PHP开发

    LAMP 0.使用include和require命令来包含外部PHP文件. 使用include_once命令,但是include和include_once命令相比的不足就是这两个命令并不关心请求的文件 ...