进程、内存、服务和硬盘容量相关的命令及查看帮助和命令行中各种文件颜色的含义

1. 进程管理相关

1.1 进程管理的常用操作
  1. 判断服务器健康状态
  2. 查看系统中所有进程
  3. “kill”进程
1.2 ps命令查看系统目前的进程状态
  1. 语法:ps [-option]

  2. 参数:
    -a:显示所有进程(表示全部用户的所有进程)
    -u:显示用户名
    -x:显示tty进程
    -e:显示所有进程(表示当前用户的所有进程)
    -f:显示父进程
    常用:ps -auxps -ef

  3. 查看结果说明:

    1. USER:该进程由那个用户产生
    2. PID:进程ID,唯一
    3. %CPU:占用CPU资源的百分比
    4. %MEM:占用物理内存的百分比
    5. VSZ:该进程占用虚拟机内存的大小,单位kb
    6. RSS:该进程占用实际物理内存的大小,单位kb
    7. TTY:该进程是在那个中断中运行的,其中TTY1-TTY6代表本地控制台终端,TTY2-6是本地字符界面终端,TTY1是图形终端,PTS/0-255代表虚拟终端,如果是“?”,则表示该进程是由内核直接产生,而不是任何终端产生的。
    8. STAT:进程状态,常见的有:
      R:运行,CPU和内存不断变化
      S:睡眠,CPU和内存不变,但有可能转入运行态
      T:停止,进程处于暂停状态,如果不人为干预,一直处于该状态
      s:包含子进程,比如一个httpd进程fork出很多个httpd子进程,进程状态后面有一个s表名该进程有子进程
      +:位于后台
      START:进程的启动时间
      TIME:该进程占用CPU的运算时间,注意不是系统时间
      COMMAND:产生此进程的命令名

    实例:
    在这里插入图片描述

1.3 top命令查看系统进程动态
  1. 语法:top [-options]

  2. 选项:
    -d:表示刷新时间,比如top -d 3表示每隔3秒刷新一次屏幕上的进程信息。

  3. 在使用top命令进入查看状态后,常用的有以下操作:

    1. P:按P(大写P)键表示按照CPU使用率由高到底显示进程信息
    2. ?h:显示交互模式的帮助,如下图:
      在这里插入图片描述
    3. M:按下M键(大写M)表示按照内存使用率从高到底显示进程
    4. N:按下N键(大写N)表示按照PID从大到小显示进程
    5. q:按下q键退出top交互式状态,即退出top
  4. top命令输出结果说明,如下图,每个元素表示的意思分别如下:
    在这里插入图片描述

    1. 第一行是任务队列消息,各列表示的意思如下:
      17:24:55:系统当前时间,该数字表示系统当前时间为17点24分55秒;
      up 17:55:表示系统已经运行了17个小时55分钟;
      1 user:表示当前系统登录的用户数,这里表示有一个用户登录了系统;
      load average:系统在之前1分钟,5分钟以及15分钟的平均负载,一般认为小于1时负载较小。如果大于1,系统已经超出负荷,如图中所示,系统在这三个时间点的负载分别为0.04、0.08、0.02。

    2. 第二行是进程信息,格列表示的意思如下:
      344 total:系统中的进程总数,当前系统中总共有344个进程
      2 runing:正在运行的进程数,当前系统中正在运行的进程数为2个
      342 sleeping:睡眠的进程,当前系统中处于sleeping状态的有342个进程
      0 stopped:正在停止的进程,当前系统中有0个进程正在停止
      0 zombie:僵尸进程,如果不是0,需要手工检查僵尸进程,无法杀死的进程被称为僵尸进程,当前系统中有0个僵尸进程

    3. 第三行是CPu当前状态/信息,格列含义如下:
      0.8 us:用户模式占用的CPU百分比,当前系统中占用CPU的百分比为0.8%
      0.6 sy:系统模式占用的CPU百分比,当前系统中占用CPU的百分比为0.6%
      0.0 ni:改变过优先级的用户进程占用的CPU百分比,当前系统中没有占用CPU的改变优先级的进程
      98.0 id:空闲CPU的CPU百分比,当前系统中cpu空闲占比98.0%
      0.0 wa:等待输入/输出的进程的占用CPU百分比,当前系统中等待输入/输出进程占CPU百分比为0.0%
      0.1 hi:硬件中断请求服务占用的CPU百分比,当前系统中硬件中断请求服务占cpu百分比为0.1%
      0.5 si:软中断请求服务占用的CPU百分比,当前系统中软中断请求服务占用cpu百分比为0.5%
      0.0 st:st(steal time),虚拟时间百分比,Steal time是虚拟机监控程序为另一个虚拟处理器提供服务时,虚拟CPU等待真实CPU的时间百分比。当前系统是0.0%

    4. 第四行表示内存信息,各列含义如下:
      3917.5 total:物理内存的总量,单位Mb,当前系统总共有3917.5Mb
      1808.2 free:空闲的物理内存的容量,单位MB,当前系统剩余空闲内存1802.2Mb
      1319.8 used:已经使用的物理内存数量,单位Mb,当前系统已使用1319.8Mb内存
      789.5 buff/cache:作为缓冲的内存容量,当前系统有789.5MB内存被用作缓冲

    5. 第五行是交换分区(swap)信息,各列含义如下:
      4048.0 total:交换分区的总大小,单位Mb,
      4048.0 free:空闲交换分区的大小,单位Mb
      0.0 used:已经使用的交互式分区的大小,单位Mb
      2343.4 avail Mem:作为缓存的交换分区的大小,单位Mb

1.4 pstree命令查看进程树
  1. 语法:ps tree [-option]
  2. 参数:
    -p:显示进程id
  3. 优点:可以清晰的看到父进程和子进程之间的关系,在服务管理中用的比较多。
1.5 kill命令相关
  1. 语法:kill [-option] PID(或者%任务号)

  2. 参数:
    -l:查看所有进程信号,实例如下:
    在这里插入图片描述

  3. 常用信号说明:

    1. SIGHUP
      代号:1
      含义:让进程立即关闭,然后重新读取配置文件后重启
    2. SIGINT
      代号:2
      含义:程序终止信号,用户终止前台进程,相当于输出ctrl+c快捷键
    3. SIGKILL
      代号:9
      含义:用来立即结束程序的执行,本信号不能被阻塞、忽略。一般用于强制终止进程
    4. SIGTERM
      代号:15
      含义:正在结束进程的信号,kill命令的默认信号,有时如果进程已经发生问题,这个信号无法正常终止进程,这时就需要使用信号9来完成
    5. SIGCONT
      代号:18
      含义:信号可以让暂停的进程恢复执行,本信号不能被阻断
    6. SIGSTOP
      代号:19
      含义:该信号可以暂停前台进程,相当于输入ctrl+z快捷键,本信号不能被阻断
1.6 killall命令

用法和kill一样,不过可以根据名字杀死进程

1.7 pkill命令
  1. 格式:pkill [-option] name
  2. 常用参数:
    -f:后面加上进程名,可以根据名字杀死进程
    -t:表示终端,后面加上终端名就可以直接让该终端的用户处于登出状态

2. 作业调度相关

2.1 作业简介

作业的本质仍是进程,不过是以shell作为单位进行调度的,一个shell的作业不会被另一个shell看到,但是可以看到该作业对应的进程。

2.2 前台与后台进程
  1. 前台进程:运行在用户眼前的进程就是前台进程,当用户眼前运行一个前台进程时,如果用户想要运行其他进程,就需要关掉该进程或者将该进程转到后台执行
  2. 后台进程:后台进程不会影响用户当前shell执行其他进程

附: 可以通过在命令后面加&符号将该命令转到后台运行,例如top &命令就是将top命令转到后台运行,不会影响用户执行其他进程。

2.3 作业调度相关命令
2.3.1 jobs命令
  1. 语法:jobs
  2. 功能:查看后台的任务,在Linux中,可以使用ctrl+z快捷键将正在进行的任务最小化(或者说切换到后台),而jobs则可以查看相关的任务
2.3.2 fg命令
  1. 语法:fg %任务号
  2. 功能:将最小化的任务切换到前台来,与jobs通常一起使用,使用jobs查出任务编号,然后用fg进行切换
2.3.3 bg命令
  1. 语法:bg %id
  2. 功能:让进程转至后台运行,即让后台的进程继续运行,相当于发出了18信号、
2.4 调整进程的优先级

调整进程的优先级有两种方法,一种是在运行命令时设置,一种是在运行中设置,两种方法分别如下:

  1. 在运行命令时使用nice命令设置优先级:
    1. 格式:nice 优先级 命令名
    2. 示例:nice -10 cat ./test.txt可将命令cat的优先级调整到10
  2. 在进程运行中可以使用renice命令设置进程的优先级,具体如下:
    1. 格式:renice -n nice_value PID
    2. 示例:renice -n 10 1000表示将进程ID为1000的进程NI值设置为10

用top命令查看进程信息时,有一列名为PR,该列就是进程的优先级,其中PR的值减去renice或者nice设置的NI的值一定为20,而这两个命令也就是通过设置NI的值来间接的设置进程的优先级,PR的值为越小(最小为0)时,进程的优先级越高,即NI的值越小,进程的优先级越高。
附: lscpu命令可以查看电脑的cpu信息。

3. 内存相关的命令

1. free
  1. 语法:free [-option]
  2. 参数:
    -k:缺省参数,表示存储单位为kb
    -m:表示存储单位为mb
    -t:显示总计
  3. 功能:查看内存的使用情况

4. 硬盘容量相关命令

1. df
  1. 语法:df [-option]
  2. 功能:查看整个磁盘使用情况
  3. 参数:
    -k:缺省参数,表示存储单位为kb
    -m:表示存储单位为mb
    -h:人类可阅读的方式,即将存储数值的单位显示出来
    (上述参数同时出现时,结果以k为准,后两个同时出现时,结果以出现的顺序为准)
2. du
  1. 语法:du [-option] 目录名或文件名
  2. 功能:查看某个目录、文件所占磁盘的情况
  3. 参数:
    -k:缺省参数,表示存储单位为kb
    -m:表示存储单位为mb
    -h:人类可阅读的方式,即将存储数值的单位显示出来

5. 帮助命令

1. man
	语法:```man 命令名```
	功能:查看内部命令信息
2. help
	语法:```命令名 --help```
	功能:查看外部命令信息
3. info
	语法:```info 命令名```

5. Linux命令行中各种颜色代表的含义:

  1. 蓝色 ---- 目录
  2. 灰色 ---- 普通文本文件
  3. 红色 ---- 压缩文件/损坏的软链接
  4. 黄色 ---- 和设备相关的文件
  5. 绿色 ---- 可执行文件
  6. 浅蓝色 – 软链接文件

6. Linux服务相关

6.1 Linux服务简介

服务就是进程、进程不一定是服务,服务是具备一定功能的进程,那么就可以运用管理进程的方式管理服务,Linux中的第一个进程是整个系统的父进程,第一个进程非常重要,因为第一个进程要负责后面所有进程的启动,后面其他进程能不能正常启动决定系统能否正常启动。
并且在RHEL6及以前的版本中,采用的是init(Sys V(Sys 5))进程,但是init进程启动后续服务的方式是串行启动,这种方法效率较低;在RHEL7及以后的版本中,采用的是systemd进程,其启动后续进程采用的是并行启动的方式,效率更高。而在Centos6中,Upstart和Sys V init是共存的(Upstart是对Sys V)的改进,其将服务分组,组内顺序启动、组间并行启动。

6.2 Linux启动顺序

先通过MBR或者UEFI加载GRUB,然后启动内核,内核启动服务,然后开始对外服务,上面提到的init、systemd主要是解决服务引导管理的问题。凡是由systemd管理的进程都是服务。

6.3 systemd管理服务

使用systemd管理服务主要是通过systemctl命令实现的,不过需要注意的是systemctl命令管理的是unit,而服务只是unit中的一部分。需要注意的是,新服务一般都支持使用systemd进行管理,但旧服务可能还是需要通过service等命令进行管理。

6.3.1 systemd查看可管理的内容
  1. 命令格式:systemctl list-+ 两下tab键
    含义:列出所有systemd管理的内容,如下所示:
    在这里插入图片描述

这里只讲解service和target两种管理内容。

6.3.2 查看服务状态
  1. 命令格式:systemctl status 服务名
  2. 实例:systemctl satus NetWorkManage.service,结果如下:
    在这里插入图片描述
6.3.3 停止服务
  1. 命令格式:systemctl stop 服务名
  2. 实例:
    在这里插入图片描述
6.3.4 让指定服务重新加载配置文件
  1. 命令格式:systemctl reload 服务名
  2. 实例:
    在这里插入图片描述
6.3.5 重启服务
  1. 命令格式:systemctl restart 服务名
  2. 实例:
    在这里插入图片描述
6.3.6 启动服务
  1. 命令格式:systemctl start 服务名
  2. 实例:
    在这里插入图片描述
6.3.7 关闭开启自启
  1. 命令格式:systemctl disable 服务名
  2. 实例:
    在这里插入图片描述
6.3.8 开启开机自启服务
  1. 命令格式:systemctl enable 服务名
  2. 实例:
    在这里插入图片描述
6.3.9 查看服务的开启状态
  1. 命令格式:systemctl is-active 服务名
  2. 实例:
    在这里插入图片描述
  3. 命令格式:systemctl is-enabled 服务名
  4. 实例:
    在这里插入图片描述
6.3.10 查看和设置时区
  1. 命令格式:timdatectl [operate 参数]
  2. 实例:
    在这里插入图片描述
6.4 systemd管理target
6.4.1 target简介
  1. 简介:target就是一个盒子,其里面就是放的service,可以将服务进行分组,然后放到target中,方便对服务进行管理;与target相似的还有runlevel,在rhel6及以前的版本中,都是通过runlevel来管理启动服务的,更老的是通过init管理的。而更新的是通过target来管理的
  2. 作用:target只是由一些服务组成的启动目标,systemd可以设置启动目标,如果systemd指定了一个target作为启动目录,那么下次系统启动的时候就会启动target中的所有服务。
6.4.2 查看target
  1. 命令格式:systemctl list-units | grep target
  2. 含义:查看系统中所有的target
6.4.3 常用target
  1. multi-user.target
    1. 含义:字符界面的linux系统
    2. 命令:systemctl isolate multi-user.target,将图形界面临时切换到字符界面
  2. graphical.target
    1. 含义:图形界面的Linux系统
    2. 命令:systemctl isolate graphical.target,将字符界面临时切换到图形界面

附: 当使用上述命令从图形界面切换到字符界面后,按ctrl+alt+F7需要等待一段时间才可以切换到图形界面

6.4.4 查看下次开机启动的target
  1. 命令格式:systemctl get-default
  2. 实例:
    在这里插入图片描述
6.4.5 将target设置为下次开机启动
  1. 命令格式:systemctl set-default target_name
  2. 实例,将启动方式设置为图形界面启动:
    在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值