9.管好进程和服务

1.查看进程

1.进程分类
进程一般分为交互进程、批处理进程和守护进程三类。上述三种进程各有各
的作用,使用场合也有所不同。
 交互进程:由一个 shell 启动的进程。交互进程既可以在前台运行,也可以在后台运行。
 批处理进程:这种进程和终端没有联系,是一个进程序列。
 守护进程:Linux 系统启动时启动的进程,并在后台运行(守护进程一般是由系统在开机时通过一个叫做 init 的脚本自动激活启动或超级管理用户 root 来启动)

2.进程的 描述符
进程描述符(Process Descriptor),顾名思义,就是进程的描述,即用来描述进程的数据结构,可以理解为进程的属性。比如进程的状态、进程的标识(PID)

USER  启动进程用户
PID  进程标志号
PPID  父进程的 ID,父子进程的关系是管理和被管理的关系,当父进程终止时,子进程也随之而终止。但子进程终止,父进程并不一定终止。
%CPU  运行该进程占用 CPU 的时间与该进程总的运行时间的比例
%MEM  该进程占用内存和总内存的比例
VSZ  占用的虚拟内存大小
RSS  进程占用的物理内存值
TTY  进程建立时所对应的终端,“?”表示该进程不占用终端
STAT  进程的状态, 状态分为

  D,不可中断的睡眠;
  R,就绪(在可运行队列中);
  S,睡眠;
  T,被跟踪或停止;
  Z,终止(僵死)的进程
  W,没有足够的内存分页可分配;
    < 高优先序的进程;
    N,低优先序的进程;
    L,有内存分页分配并锁在内存体内(实时系统或 I/O)。
    + 位于后台的进程
    s 进程的领导者(在它之下有子进程);

START  为进程开始时间
TIME  为执行的时间
COMMAND 是对应的命令名

3.ps [选项]
查看系统中进程的状态
 l 长格式输出;
 u 按用户名和启动时间的顺序来显示进程;
 j 用任务格式来显示进程;
 f 用树形格式来显示进程;
 a/-A 显示所有用户的所有进程(包括其它用户);
 x 显示无控制终端的进程;
 r 显示运行中的进程;
 --sort [+|-] 字段名 按指定字段对 ps 输出进行排序,+表示升序,-表示降序, “+”字符是可选的,因为默认按升序排列

ps 命令经常与 grep 命令一起使用来查找特定的进程

4.top 是动态监视系统进程的工具,在默认情况下,top 命令每3 秒钟刷新一次

top [选项]
动态查看系统中进程的状态
 -d:指定更新的间隔,以秒为单位。
 -q:没有任何延迟的更新。如果使用者有超级用户,则 top 命令将会以最高的优先序执行

    -c:显示进程完整的路径与名称。
还可以使用快捷键与 top 命令进行交互,常用的快捷键包括:
 space 立即更新
 >  向下翻页,向左一个关键字排序
 <  向上翻页
 T  按进程运行时间进行排序,降序
 M 按内存占用情况排序,降序
 N 以进程 ID 排序,降序
 P  按 CPU 占用情况排序,降序(默认)
 R 反向排序
 k 结束指定进程

    q退出

2.操纵进程

1.kill [-signal] pid
kill 命令终止一个进程。

     pid:进程的 PID 号
 -signal:表示向进程发出的信号,如果没有指定任何信号,默认发送的信号为 SIGTERM(-15),可将指定进程终止。若仍无法终止该进程,可使用更强力的 SIGKILL(-9)信号尝试强制终止进程

    kill -l  列出能发送的所有信号

2.kill 命令的工作原理是,向 Linux 系统的内核发送一个系统操作信号和某个程序的进程标志号,然后系统内核就可以对进程标志号指定的进程进行操作。
当需要终止一个前台进程的时候,通常使用 ctrl+c 组合键;但是对于一个后台进程就必须使用 kill 命令。
另外应用的场合就是在服务器管理中,对于服务器主进程,最好是按其正常的程序关闭,而不是用 kill 这样危险的动作。

3.pkill有选择性的向一个或一批进程发出信号,可根据进程名称,拥有者(-u)

xkill图形界面的kill,鼠标变成十字,点击要关闭的进程

3.查看和操控系统服务

1.Linux 下的守护进程按照服务类型可以分为两类:

一类是系统守护进程,为系统提供某种重要的功能,如 atd、cron、lpd、syslogd、login 等。

另一类是网络守护进程,向用户提供某种网络服务,如 sshd、httpd、sendmail、xinetd 等

2.按照工作模式也可以分为两类:
(1)独立守护进程(stand-alone daemon)所谓独立守护进程,就是该守护进程可以独立运行,守护进程常驻内存,响应快,无服务启动时间。所有独立运行守护进程的脚本在/etc/rc.d/init.d/目录下,由 init 脚本负责管理。
(2)超级守护进程(super daemon)RHEL 使用的超级守护进程叫做 xinted(eXtended InterNET Daemon)。xinted 是一个非常特殊的守护进程,xinetd 能够同时监听多个指定的端口,在接受用户请求时,他能够根据用户请求的端口不同,再来启动不同的网络服务进程来处理这些用户请求。可以把 xinetd 看做一个管理守护进程的守护进程,它
决定把一个客户请求交给那个程序处理,然后启动相应的守护进程。

3.netstat 命令是一个监控本机网络端口状态的非常有用的工具

netstat [选项] [参数]
输出网络连接, 路由表, 接口统计数据, 伪连接,及多播成员相关信息
 -r  显示路由表
 -I  显示网络接口的连接情况(可以加上 eth0、lo 等参数)
 -s 显示 IP、ICMP、IcmpMsg、TCP、UDP、UdpLite、TcpExt、IpExt的统计信息
 -n 以数字形式显示地址和端口号
 -p 显示 PID/Program name
 -l  显示监听端口
 -a 显示所有连接和监听端口
 -t  显示 TCP 传输协议的连线状况
 -u 显示 UDP 传输协议的连线状况
 -e 显示关于以太网的统计数据。它列出的项目包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量。这些统计数据既有发送的数据报数量,也有接收的数据报数量。这个选项可以用来统计一些基本的网络流量)。

输 出 主 要 分 为 两 部 分 :

第 一 部 分 是 活 动 网 络 连 接 (Active Internetconnections),显示的都是 TCP/IP 网络连接,默认有 5 个字段:

Proto  连接使用的协议,主要就是 TCP 和 UDP 两种。
Recv-Q  尚未接收的字节数。
Send-Q  尚未发送到目标的字节数。
Local Address本地或源的地址和端口,可以是 “主机 IP:端口号”(使用-n 选项时), 也可以是“完整的主机名:端口名称”。其中如果 IP 地址为“0.0.0.0”或者主机名为“*”就表示在所有链接的相应端口,如“00.0.0.0:22”就表示在本机所有链接的 22 端口上都进行监听。
Foreign Address  目标地址和端口。
State  当前 socket 连接的状态
  ESTABLISHED - 连接已建立;
  SYN_SENT:正在尝试建立连接 (发出 SYN标志) ;
  SYN_RECV:接收到一个连接建立请求
  FIN_WAIT1: socket 关闭,连接中断中;
  FIN_WAIT2:连接已中断,但 socket 正在等待对方回应;
  TIME_WAIT:连接已中断,socket 仍在等待,以处理仍然存在在网络中的包;
  LISTEN - 已建立监听,socket 正在监听端口输入,但尚未建立连接。

第二部分是活动 Unix 域套接字(Active UNIX domain sockets),显示的都是本地进程间通信的套接字

4.Linux 系统下共定义了 65536 个可用端口 ,这些端口又分为两部分,
分别是:
(A)只有 root 用户才能启用的 port,0—1023 端口,需要用 root 身份才能启用,这些端口主要用于系统的常见(well known)通信服务(如 http 服务使用 80 端口,ftp 服务使用 21 端口等等);
(B)1024—65535 是给客户端软件使用的,客户端 port 不受 root用户限制,例如 mysql 端口为 3306,可以由 mysql 用户启用;例如Oracle 端口为 1521,可以由 Oracle 用户启用;又例如用网络浏览器浏览网页。浏览器需先从本地启用一个大于或等于1024的随机端口,然后去连接 web 服务端的 80 端口

5.service [服务脚本名] [动作命令]
service 命令用于对系统服务进行操纵,比如启动(start)、停止(stop)、重启(restart)、查看状态(status)等,service 命令本身是一个 shell 脚本,它在/etc/init.d/目录查找指定的服务脚本,然后调用该服务脚本来完成任务,sevice
 service 服务脚本名 打印指定服务的命令行使用帮助。
 service 服务脚本名 start  启动指定的系统服务
 service 服务脚本名 status 查看指定的系统服务状态
 service 服务脚本名 stop  停止指定的系统服务
 service 服务脚本名 restart 重新启动指定的系统服务,即先停止然后再启动。

6.设置防火墙端口

打开防火墙的配置文件/etc/sysconfig/iptables,在其中添加上如下所示一行:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

7.chkconfig --list” 命令显示系统服务列表,以及这些服务在运行级别 0 到 6 中已被启动(on)还是停止(off)

运行级别(runlevel)就是 Linux 当前正在运行的功能级别。这些级别定义在/ect/inittab 文件中。一般来说 Linux 都会提供从 0 到 6 共七个运行级别,其中 3 个是基本运行级别,3 个是其他运行级别,1 个保留

0  关闭(或停止)系统
1  单用户模式;通常别称为 s 或 S

2  没有联网的多用户模式
3  联网的多用户模式
4  保留暂未使用
5  联网并且使用图形界面的多用户模式
6  重启系统

在不同运行级别下可以定义启动不同的系统服务
 可以使用 runlevel 命令来查看当前运行级别,也可以用 init N(N 为0-6 之间的数字)来切换运行级别

chkconfig --level  num(运行级别)  服务名 on: 启动服务

 

转载于:https://www.cnblogs.com/Wang-Y/p/8459875.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/354100.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

惠而浦:使用Netty和Kafka的微服务

介绍 在上一个博客中 &#xff0c;我介绍了Netty用作Web服务器。 该示例运行良好……只要需要广播服务器即可。 大多数情况下不是很有用。 更有可能的是&#xff0c;每个客户端仅接收针对其的数据&#xff0c;并保留了特殊情况下的广播&#xff0c;例如“服务器在15分钟内停机…

石化总部java面试题_中国石化面试经验

面试过程&#xff1a;首先&#xff0c;上午进行面试人员签到&#xff0c;大约100人左右。一共要2个人。下午1点半开始统一面试。人员较多&#xff0c;所以每个人只有3分钟时间&#xff0c;一共最少8位面试官。过程中&#xff0c;他们很少提问题&#xff0c;如果你的技术比较新颖…

ajax标准

$.ajax({url:"localhost:8889/server", //请求的url地址dataType:"json", //返回格式为jsonasync:true,//请求是否异步&#xff0c;默认为异步&#xff0c;这也是ajax重要特性data:{"id":"value"}, //参数值type:"GET&qu…

java 生成器 设计模式_Java中的生成器设计模式

java 生成器 设计模式Java 中的 Builder设计模式是一种创建模式&#xff0c;即用于创建对象&#xff0c;类似于 工厂方法设计模式 &#xff0c;这也是创建设计模式。 在学习任何设计模式之前&#xff0c;我建议先找出特定设计模式要解决的问题。 众所周知&#xff0c; 必要性是…

python倒排索引实现_倒排索引原理和实现 - uncle_LLD的个人空间 - OSCHINA - 中文开源技术交流社区...

关于倒排索引搜索引擎通常检索的场景是&#xff1a;给定几个关键词&#xff0c;找出包含关键词的文档。怎么快速找到包含某个关键词的文档就成为搜索的关键。这里我们借助单词——文档矩阵模型&#xff0c;通过这个模型我们可以很方便知道某篇文档包含哪些关键词&#xff0c;某…

Spring RESTful Web服务中的异常处理

1.简介 我们可能已经在Spring中遇到了几种处理RESTful Web服务应用程序中异常的方法。 在本文中&#xff0c;我们将尝试探索可以采取的最佳方法来实现有效的异常处理。 2.问题陈述 让我们创建一个简单的应用程序&#xff0c;该应用程序将在REST URI中标识员工姓名。 如果请求中…

java调python画图_Python Matplotlib plot 绘图

1、绘制x和y点plot()函数用于在图中绘制点(标记)。默认情况下&#xff0c;plot()函数在点到点之间画一条线。该函数具有用于在图中指定点的参数。参数1是一个数组&#xff0c;其中包含x轴上的点。参数2是一个包含y轴上的点的数组。如果需要绘制从(1&#xff0c;3)到(8&#xff…

区块链以信用为基础,所以目前在中国不可行.

还是先整一套规范的含金量高的信用体系再说吧.转载于:https://www.cnblogs.com/diggingdeeply/p/impossible_success_in_china_right_now_bcoz_of_lack_credit.html

java cunstructor_参加JavaScript面试,必须搞懂的问题(推荐)

一. JavaScript中的对象.JavaScript中的Object是一组数据的key-value的集合, 有点类似于Java中的HashMap, 所有这些数据都是Object里的property. 通常情况下, JavaScript中建立一个对象用"new"加上constructor function来实现. 如new Date(), new Object()等.var boo…

jms activemq_带有ActiveMQ的JMS

jms activemq带有ActiveMQ的JMS JMS是Java消息服务的缩写&#xff0c;它提供了一种以松散耦合&#xff0c;灵活的方式集成应用程序的机制。 JMS以存储和转发的方式跨应用程序异步传递数据。 应用程序通过充当中介的MOM&#xff08;面向消息的中间件&#xff09;进行通信&#x…

【EMV L2】SDA静态数据认证处理流程

【静态数据认证】 静态数据认证处理过程中&#xff0c;卡片没有执行任何处理&#xff0c;终端执行的处理流程&#xff1a;1、认证中心公钥的获取终端使用卡片上的认证中心公钥索引&#xff08;PKI&#xff09;【TAG&#xff1a;8F&#xff0c;Certification Authority Public K…

java取邮箱前缀_java抓取网页或文件中的邮箱号码

java抓取网页或文件中的邮箱号码发布时间&#xff1a;2020-10-18 08:58:32来源&#xff1a;脚本之家阅读&#xff1a;69作者&#xff1a;java大渣渣本文实例为大家分享了java抓取邮箱号码的具体代码&#xff0c;供大家参考&#xff0c;具体内容如下java抓取文件中邮箱号码的具体…

为Twitter4j创建自定义SpringBoot Starter

SpringBoot提供了许多启动器模块来快速启动和运行。 SpringBoot的自动配置机制负责根据各种标准代表我们配置SpringBean。 除了Core Spring Team提供的现成的springboot启动器之外&#xff0c;我们还可以创建自己的启动器模块。 在本文中&#xff0c;我们将研究如何创建自定义…

mac php gd库,mac下安装GD库FreeType

MacBook Pro安装的新系统10.10.3&#xff0c;PHP环境也是默认就有的&#xff0c;GD库在默认情况下也安装过了&#xff0c;但在使用验证码的时候&#xff0c;提示GD库不支持FreeType&#xff0c;这里我们手动安装一下。法一&#xff1a;安装 FreeType前往苹果官方开源支持&#…

php异步查询数据库,php中mysql数据库异步查询实现

问题通常一个web应用的性能瓶颈在数据库。因为&#xff0c;通常情况下php中mysql查询是串行的。也就是说&#xff0c;如果指定两条sql语句时&#xff0c;第二条sql语句会等到第一条sql语句执行完毕再去执行。这个时候&#xff0c;如果执行2条sql语句&#xff0c;每条执行时间为…

java btrace_BTrace:Java开发人员工具箱中的隐藏宝石

java btrace这篇文章是关于BTrace的 &#xff0c;我正在考虑将其作为Java开发人员的隐藏宝藏。 BTrace是用于Java平台的安全&#xff0c;动态跟踪工具。 BTrace可用于动态跟踪正在运行的Java程序&#xff08;类似于DTrace&#xff0c;适用于OpenSolaris应用程序和OS&#xff09…

共享文件夹不能访问的问题解决

打开控制面板--管理工具--服务--webclinet&#xff0c;设为自动&#xff0c;启动。重启电脑&#xff0c;搞定&#xff01;转载于:https://www.cnblogs.com/atlj/p/8481257.html

xampp浏览php出现乱码,dvwa+xampp搭建显示乱码的问题及解决方案

如图&#xff0c;dvwa显示乱码&#xff0c;解决办法有两个&#xff1a;1、方法一是&#xff0c;临时解决办法&#xff0c;也就是每次都得手动修改&#xff1a;利用浏览器的编码修改2、方法二是&#xff1a;永久方案&#xff0c;那就是修改dvwa的配置文件&#xff0c;修改默认编…

HotSpot的-XshowSettings标志的简单性和价值

一个方便的HotSpot JVM标志 &#xff08; 选项为Java启动 java &#xff09;是-XshowSettings选项。 Oracle Java启动器描述页面中对此选项进行了如下描述 &#xff1a; -XshowSettings &#xff1a; category显示设置并继续。 该选项的可能类别参数包括&#xff1a; all显示所…

Python验证码简单实现(数字和大写字母组成的4位验证码)

#数字和英文大写字母的4位随机数 def checkcode(): #def 定义方法 checkcode() 方法名()import random # 导入包checkcode ""string range(0,4)for i in string:current random.randrange(0,3) #randrange随机数 参数1<随机数<参数2if current ! i:temp …