LInux中的进程
进程:已经启动的可执行程序的运行实力
1、PID:进程的id(每一个新进程都有一个唯一的id)
2、PPID:父进程的id
3、任何一个进程都可以创建一个子进程
4、在redhat7以上,所有进程的父进程:systemd
在redhat5、6中,所有进程的父进程:init
- ps 用于显示当前进程状态
常用选项
-aux:列出所有进程
-ef:列出所有进程
-l:列出和当前用户有关的进程
-u 用户:查看某一用户的进程状态
- top 可以查看实时的进程状态
运行中
- R:该进程正在运行或等待运行
睡眠: - S:正在休眠但是可以被唤醒
- D:正在休眠,而且不可以被唤醒,该进程被中断,可能会导致设备的异常状态
- K:正在休眠,而且不可以被唤醒,该进程可以被中断
已停止: - T:进程被停止,但是可以通过其他进程来进行恢复
- T:正在被调试的进程
僵停: -
Z:子进程在退出时向父进程发出信号,除PID外,所有资源全部释放
-X:父进程获取了子进程的结构,子进程可以完全释放,该状态进程中是看不到的
进程优先级
- < : 高优先级
- n : 低优先级
- s : 包含子进程
- +: 位于后台的进程组
ps -aux参数解释
- %CPU:占用的CPU使用率
- %MEM:占用的记忆体(内存)使用率
- VSZ:占用的虚拟机记忆体(虚拟内存)大小
- RSS:占用的记忆体(内存)大小
- TTY:终端的次要装置号码
- STAT:该进程的状态
- START:行程开始时间
- TIME:执行的时间
- COMMAND:所执行的指令
Linux中的会话和作业
进程:Linux自身运行的独立的程序
交互进程:有一个shell启动的进程,可以在前台运行,也可以在后台运行
批处理进程:是一个进程序列,和终端没有联系
监督进程(守护进程):Linux系统启动时,启动的进程,并且在后台运行
作业:一个正在执行的进程,而且作业可以包含一个或者多个进程
作业控制:控制正在运行的进程的行为。如:挂起一个进程,等一会执行,这样用户就可以在多个作业之间切换
&:在命令后面使用该符号,可以让命令在后台执行
jobs:可以查看正在后台运行的作业
-
sleep 10000 延迟几秒
ctrl + c:中断
ctrl + z:挂起
jobs:查看当前后台的作业状态
-l:除了列出作业号外,同时列出PID
-r:列出仅仅在后台运行的作业
-s:列出仅仅在后台暂停的作业fg:将后台的命令调到前台来继续执行,不能放回后台了
%作业编号bg:将后台暂停的命令继续执行
-
ps -j显示当前作业进程信息
TGID:线程组ID
SID:回话ID号
Linux中断进程
- 信号:传递给Linux进程的操作
- kill -l显示可以传递给Linux进程的所有信号
-
常用:
kill -9 PID 杀死一个进程-强制
kill -15 PID正常的方式终止一个进程
kill -2 可以control+c的操作是一样的
控制服务和守护进程
- systemed:是所有进程的父进程
- systemedctrl:用户管理各种类型systemed对象,这些对象称之为:单元
常用的单元:service(服务单元),socket(套接字),path(路径单元) - ssh:是一个协议,sshd:是一个进程
- systemedstatus sshd.service显示中的关键字
loaded:单元配置文件以处理
active(running):正在运行
active(exited):配置成功
active(waiting):运行中,但正在等待事件
inactive:不再运行中
enable:开机自启动
disable:开机不自启
static:无法启动,但可以通过某一个已经启动的单元来启动 - Service sshd status 查看状态
Chkconfigssh on/off开机自动启动 - start:在系统中启动一项任务
- stop:等待程序需处理完毕后再stop
- restart:直接关闭程序在开启
- reload:重新加载配置文件,进程暂停,然后把配置文件加载进去后,继续执行后序操作,进程的PID不会改变
- enable:设置开机自启
- disable:关闭开机自启
- status:查看某一单元的状态
分析和储存日志
- 日志:用于系统审核和故障排除---Linux中的黑匣子(记录了linux用户的大部分操作)
- 日志文件都保存在var/log目录中的
- 在redhat 7中,系统日志消息由俩个服务负责处理,他们是systemed-journald和rsyslogd
- /var/log/messages //大多数系统日志消息记录的日志
- /var/log/secure //安全和身份验证的消息和错误日志
- /var/log/mailog //与邮件服务器相关的日志
- /var/log/cron //与定期执行任务相关的日志文件
-
/var/log/boot/log //记录和系统启动相关的日志
日志分析
- 大多数的日志由四个部分组成
1、记录在日志的时间
2、发送该日志的主机
3、发送该认知消息的程序或进程
4、发送的实际消息
日志监控
tail -f /var/log/secure //显示最后十行,如果有新的内容加入,那么会继续输出
打包和压缩
打包
- tar 打包程序
c:创建文档
t:列出存档内容
x:提取存档
f filname:要操作的存档的文件名
v:详细信息
注:
1、选项前不要加-
2、创建之前先检查有没有重命名的文件(覆盖且不会提示)
3、要使tar可以打包选项的文件,执行tar命令的用户必须要能够读取这些文件
压缩、解压缩
tar 支持三种不同压缩方式:
- gzip:压缩速度最快,历史最久,应用最广泛
- bgzip2:压缩成的存档文件小,可用性不如gzip
- xz:最新的方式,提供最佳的压缩率
实际情况中3中情况都可能遇到,所以要创建不一样的格式的归档文件就有自己的选项 - z用于gzip压缩:filename.tar.gz
- j用于bzip2压缩:filename.tar.bz2
-
J用于xz压缩:filename.tar.xz