程序:静态的,是躺在硬盘上。
进程:动态的,程序运行在内存中就是进程。
线程:进程的不同执行路径。
每个进程都可能以两种方式存在的。前台和后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才结束。
ps 【选项】
1
PS -aux执行后,参数含义
参数 含义
USER 用户
PID 进程号
%CPU 执行命令时候进程占用的CPU
%MEM 执行命令时候进程占用的CPU
VSZ 进程占用虚拟内存的大小(单位kb)
RSS 进程占用物理内存的大小(单位kb)
TTY 终端机号
STAT 运行状态
R: 正在运行
S:睡眠
D:短期等待
T:被跟踪或者被停止
Z:僵死进程(进程可能死掉,没有释放)
s:该进程是会话的先导进程
+:该进程为前台进程
l:该进程是多线程进程
N:低优先级进程
<:高优先级进程
[]:表示这个一个内核线程
START 执行开始的时间
TIME 进程消耗cpu的时间
COMMAND 进程名,执行该进程的指令
全格式显示所有进程,查看父进程:ps -ef
UID:用户名
PPID:父进程
C : CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低; 数值越小,表明进程是I/O密集型运算,执行优先级会提高
STIME:进程启动时间
CMD:启动进程所用命令和参数
其余和上面一样
选项 | 功能 |
---|---|
-a | 显示当前终端的所有进程信息 |
-u | 以用户的格式显示进程信息 |
-x | 显示后台进程运行的参数 |
-e | 显示所有进程 |
-f | 全格式 |
kill 【选项】 进程号
killall 进程名称
常用选项:-9:强迫进程立即停止
pstree 【选项】 常用选项 -p :显示进程的PID -u :显示进程的所属用户
service管理指令
service 服务名 [start I stop | restart | reload | status] 在CentOS7.0后很多服务不再使用service ,而是systemctl 查看服务名 查看全部系统服务:setup
带*号的服务是自动启动的,光标移至 * 号,按空格就会删除,按tab键进行切换。
查看service指令管理的服务:ls -l /etc/init.d
CentOS7后运行级别说明 指定运行级别:init 数字0-6,常用运行级别是3和5
级别说明
0:关机 1:单用户(找回丢失密码用) 2:多用户状态无网络 3:多用户状态有网络 4:系统未使用保留给用户 5:图形界面 6:虚拟机重启
在/etc/initab进行了简化, 如下: multi-user.target: analogous to runlevel 3 graphical.target : analogous to runlevel 5
查看当前的运行级别是什么:systemctl get-default
修改运行级别:systemctl set-default multi-user.target
查看服务:chkconfig --list [| grep xxx]
给服务在指定的运行级别下设置开关:chkconfig --level 5 服务名 on/off
注意:使用了chkconfig指令服务自启或关闭,需要reboot重启生效
语法:systemctl 服务名 [start I stop | restart | reload | status]
查看管理的服务:ls -l /usr/lib/systemd/system
systemctl设置服务的自启动状态
例:查看当前防火墙的状况,关闭防火墙和启动防火墙
1.systemctl status firewalld.service
2.systemctl stop firewalld.service
3.systemctl start firewalld.service
防火墙打开情况下,xshell6访问Linux需要打开22端口号,不然访问不到。防火墙关闭后,xshell6可以直接访问,不需要打开端口号。
打开或者关闭指定端口 在真正的生产环境,往往需要将防火墙打开,但此时外部请求数据包却不能跟服务器监听端口通讯。这时需要打开指定的端口,比如80、22、 3306等。
打开端口:
firewall-cmd --permanent --add-port=端口号/协议
关闭端口:
firewall-cmd --permanent --remove-port=端口号/协议
重新载入才能生效:
firewall-cmd --reload
查看所有开放端口:
firewall-cmd --zone=public --list-port
查询端口是否开放:
firewall-cmd --query-port=端口/协议
top与ps命令相似,都是用来显示正在执行的进程。top与ps最大的不同之处,在于top在执行一段时间可以更新正在运行的的进程。
指令:top 【选项】
选项 | 功能 |
---|---|
-d 秒速 | 指定top命令每隔几秒更新,默认3秒 |
-i | 使top不显示任何闲置或者僵死进程 |
-P | 通过指定监控进程ID来仅仅监控某个进程的状态 |
交互操作说明
操作 | 功能 |
---|---|
P | 以CPU使用率排序,从大到小,默认就是此项 |
M | 以内存的使用率排序,从大到小 |
N | 以PID排序,从大到小 |
Q或q | 退出top |
例1:监视特定用户,比如我们监控tom用户 top命令下,输入“u"回车,再输入用户名,输错可按向下键清空。 例2 :终止指定的进程 top命令下,输入"k"回车,再输入要结束的进程ID号