热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Centos7常用基本命令使用(进程管理类、网络状态类、系统定时类)

本文主要分享【Linux7系统中如何“更好”监控和管理Linux系统上运行的进程】,技术文章【Centos7常用基本命令使用(进程管理类、网络状态类、系统定时类)】为【Bulut0907】投稿,如果

本文主要分享【Linux 7系统中如何“更好”监控和管理Linux系统上运行的进程】,技术文章【Centos7常用基本命令使用(进程管理类、网络状态类、系统定时类)】为【Bulut0907】投稿,如果你遇到Linux相关问题,本文相关知识或能到你。

Linux 7系统中如何“更好”监控和管理Linux系统上运行的进程

目录 1. 进程管理类1.1 ps1.2 kill1.3 pstree1.4 top 2. 网络状态类2.1 netstat 3. 系统定时类3.1 crontab

1. 进程管理类 1.1 ps

process status,默认只显示和当前用户、当前终端相关联的进程

语法:ps 选项

选项功能a列出带有终端(非后台)的所有用户的进程x列出当前用户的所有进程,再列出没有终端(非后台)的进程u面向用户友好的显示风格-e列出所有进程-u 用户名列出某个用户关联的所有进程-f显示完整格式的进程列表

示例:

查看系统中所有进程(BSD风格)
[root@bigdata001 ~]# ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0 199352  3220 ?        Ss   4月30  30:15 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root         2  0.0  0.0      0     0 ?        S    4月30   0:03 [kthreadd]
......省略部分......
[root@bigdata001 ~]#

各字段解析如下:

USER:该进程是由哪个用户产生的PID:进程的ID%CPU:该进程占用CPU资源的百分比%MEM:该进程占用物理内存的百分比VSZ:该进程占用虚拟内存的大小,单位KB。一些长时间未使用的会放到虚拟内存RSS:该进程占用实际物理内存的大小,单位KBTTY:该进程是在哪个终端中运行的。对于CentOS来说,tty1是图形化终端, tty2-tty6 是本地的字符界面终端。pts/0-255代表虚拟终端STAT:进程状态。常见的状态有:R-运行状态、S-睡眠状态、T-暂停状态、 Z-僵尸状态(未清理干净的)、s-包含子进程、l-多线程、±前台显示、-:进程优先级很高、N-进程优先级很高START:该进程的启动时间TIME:该进程占用CPU的运算时间,注意不是系统时间COMMAND:产生此进程的命令。kthreadd负责内核所有线程的管理 查看父子进程之间的关系(Unix标准风格)
[root@bigdata001 ~]# ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
root     18911 18908  0 22:13 pts/0    00:00:00 -bash
[root@bigdata001 ~]#

各字段解析如下:

UID:用户IDPID:进程IDPPID:父进程IDC:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算, 执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高STIME:进程启动的时间TTY:完整的终端名称TIME:CPU时间CMD:启动进程所用的命令和参数 1.2 kill

通过进程号杀死进程:kill -9 PID
通过指定进程名称杀死多个进程,会将包含指定进程名称的所有进程都杀死:killall 进程名称

可以通过kill -l查看所有支持的kill -数字参数 PID

1.3 pstree

查看进程树

安装依赖包

[root@bigdata001 ~]# yum install -y psmisc

使用

[root@bigdata001 ~]# pstree -p -u
systemd(1)─┬─NetworkManager(678)─┬─{NetworkManager}(691)
           │                     └─{NetworkManager}(693)
           ├─agetty(919)
           ├─auditd(638)───{auditd}(639)
           ├─chronyd(671,chrony)
           ├─crond(687)
           ├─dbus-daemon(666,dbus)───{dbus-daemon}(673)
           ├─lvmetad(501)
           ├─master(1082)─┬─pickup(1089,postfix)
           │              └─qmgr(1090,postfix)
           ├─polkitd(662,polkitd)─┬─{polkitd}(675)
           │                      ├─{polkitd}(681)
           │                      ├─{polkitd}(684)
           │                      ├─{polkitd}(685)
           │                      ├─{polkitd}(686)
           │                      └─{polkitd}(689)
           ├─rsyslogd(911)─┬─{rsyslogd}(921)
           │               └─{rsyslogd}(923)
           ├─sshd(908)───sshd(971)───bash(1135)───pstree(1198)
           ├─systemd-hostnam(695)
           ├─systemd-journal(480)
           ├─systemd-logind(679)
           ├─systemd-udevd(511)
           └─tuned(907)─┬─{tuned}(1189)
                        ├─{tuned}(1190)
                        ├─{tuned}(1192)
                        └─{tuned}(1194)
[root@bigdata001 ~]# 
-p:显示进程的PID-u:显示进程所属的用户,如果用户和父进程一样,则不会显示 1.4 top

执行top命令,会持续(默认3秒,可通过-d参数指定)的监控系统的进程状态

top - 21:51:11 up 79 days,  4:15,  2 users,  load average: 0.42, 0.31, 0.31
Tasks: 418 total,   2 running, 416 sleeping,   0 stopped,   0 zombie
%Cpu(s):  2.1 us,  2.2 sy,  0.0 ni, 95.6 id,  0.0 wa,  0.0 hi,  0.1 si,  0.0 st
KiB Mem : 16266480 total,   911960 free,  7466176 used,  7888344 buff/cache
KiB Swap:  8257532 total,  5658620 free,  2598912 used.  7422656 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                                   
 5256 root      20   0    9.9g 863088 608848 S  13.2  5.3   5912:53 clickhouse-serv
 ......省略部分......

各部分含义如下:

第一行:当前时间 系统启动了多久 当前多少个用户在使用 过去1分钟、5分钟、10分钟的平均负载(小于0.7负载小,大于1负载大)第二行:当前正在运行的进程数 运行进程数 睡眠进程数 停止进程数 僵尸进程数第三行:用户进程(没有更改用户优先级的用户进程)占用CPU时间 系统进程占用CPU时间 nice命令(给进程指定优先级,值越低优先级越高)设定用户优先级的用户进程占用CPU时间 CPU空闲率 等待I/O操作的时间占比 硬件中断请求的时间占比 软件中断请求的时间占比 被虚拟机占用的时间占比第四行:内存占用情况第五行:swap内存占用情况第六行字段说明:PID 用户 任务调度的优先级 用户指定的nice值 虚拟内存占用大小 物理内存占用大小 共享内存占用大小 进程状态 CPU运行时间占比 内存占比 运行占CPU总时间 生成当前进程的命令

默认按CPU运行时间占比(P)降序排列,可以按M按内存占比降序排序,按N按PID降序排列。按u再输入用户,只查看指定用户的进程。按k再输入进程PID,再输入9,杀死进程

按上下键进行滚动,按Page Up和Page Down进行翻译,按q退出

选项:

-i:使top不显示任何闲置或僵尸进程-p:指定进程PID进行监控 2. 网络状态类 2.1 netstat

netstat 选项

-a:显示所有正在监听(listen)和未监听的套接字(socket)-n:拒绝显示别名,能显示数字的全部转化成数字-l:仅列出在监听的服务状态-p:表示显示哪个进程在调用

示例:
查看该进程网络信息:netstat -anp | grep 进程号
查看网络端口号占用情况:netstat -nlp | grep 端口号

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1110/sshd 
......省略部分......

各字段含义如下:

Proto:网络协议Recv-Q:已经接收但还未拷贝的字节数Send-Q:已经发送,但远程主机还未确认收到的字节数Local Address:本地地址。0.0.0.0表示服务器所有地址。端口范围为0~65535Foreign Address:远程地址State:状态 3. 系统定时类 3.1 crontab

crontab命令由crond服务提供

crontab -r:删除当前用户所有的crontab任务

crontab编辑定时语法:* * * * * 执行的任务
注意:几号和星期几最好不要同时出现,会混乱

项目含义范围第一个“*”一小时当中的第几分钟0-59第二个“*”一天当中的第几小时0-23第三个“*”一个月当中的第几天1-31第四个“*”一年当中的第几月1-12第五个“*”一周当中的星期几0-7(0和7都代表星期日)

特殊符号:

特殊符号含义*代表任何时间,代表不连续的时间-代表连续的时间范围*/n代表每隔多久执行一次

本文《Centos7常用基本命令使用(进程管理类、网络状态类、系统定时类)》版权归Bulut0907所有,引用Centos7常用基本命令使用(进程管理类、网络状态类、系统定时类)需遵循CC 4.0 BY-SA版权协议。


推荐阅读
  • 本文介绍了如何使用Python的Paramiko库批量更新多台服务器的登录密码。通过示例代码展示了具体实现方法,确保了操作的高效性和安全性。Paramiko库提供了强大的SSH2协议支持,使得远程服务器管理变得更加便捷。此外,文章还详细说明了代码的各个部分,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 在Windows系统中安装TensorFlow GPU版的详细指南与常见问题解决
    在Windows系统中安装TensorFlow GPU版是许多深度学习初学者面临的挑战。本文详细介绍了安装过程中的每一个步骤,并针对常见的问题提供了有效的解决方案。通过本文的指导,读者可以顺利地完成安装并避免常见的陷阱。 ... [详细]
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • Python多线程编程技巧与实战应用详解 ... [详细]
  • PHP预处理常量详解:如何定义与使用常量 ... [详细]
  • 本文介绍了如何利用 Delphi 中的 IdTCPServer 和 IdTCPClient 控件实现高效的文件传输。这些控件在默认情况下采用阻塞模式,并且服务器端已经集成了多线程处理,能够支持任意大小的文件传输,无需担心数据包大小的限制。与传统的 ClientSocket 相比,Indy 控件提供了更为简洁和可靠的解决方案,特别适用于开发高性能的网络文件传输应用程序。 ... [详细]
  • Python全局解释器锁(GIL)机制详解
    在Python中,线程是操作系统级别的原生线程。为了确保多线程环境下的内存安全,Python虚拟机引入了全局解释器锁(Global Interpreter Lock,简称GIL)。GIL是一种互斥锁,用于保护对解释器状态的访问,防止多个线程同时执行字节码。尽管GIL有助于简化内存管理,但它也限制了多核处理器上多线程程序的并行性能。本文将深入探讨GIL的工作原理及其对Python多线程编程的影响。 ... [详细]
  • CentOS 7环境下Jenkins的安装与前后端应用部署详解
    CentOS 7环境下Jenkins的安装与前后端应用部署详解 ... [详细]
  • 基址获取与驱动开发:内核中提取ntoskrnl模块的基地址方法解析
    基址获取与驱动开发:内核中提取ntoskrnl模块的基地址方法解析 ... [详细]
  • 【Linux】CentOS 7 远程连接指南:高效安全的远程管理方法
    在 CentOS 7 中实现高效且安全的远程管理,本文详细介绍了如何检查和安装配置 OpenSSH。首先,通过 `yum list installed` 命令检查系统是否已安装 OpenSSH,若未安装,则使用 `yum install openssh-server` 进行安装。随后,配置 SSH 服务以确保其安全性和稳定性,包括修改默认端口、禁用 root 登录等关键步骤。此外,还提供了常见问题的解决方案,帮助用户顺利进行远程连接。 ... [详细]
  • 技术日志:Ansible的安装及模块管理详解 ... [详细]
  • 解决针织难题:R语言编程技巧与常见错误分析 ... [详细]
  • 在 Linux 环境下,多线程编程是实现高效并发处理的重要技术。本文通过具体的实战案例,详细分析了多线程编程的关键技术和常见问题。文章首先介绍了多线程的基本概念和创建方法,然后通过实例代码展示了如何使用 pthreads 库进行线程同步和通信。此外,还探讨了多线程程序中的性能优化技巧和调试方法,为开发者提供了宝贵的实践经验。 ... [详细]
  • 在CICS应用环境中,众多客户端通过网络与CICS服务器进行连接。系统管理员可以通过CICS系统交易CEMT查询当前连接的客户端信息。然而,在非客户端模式下,识别用户连接并解决信息获取错误的问题变得更为复杂。本文将探讨如何在CICS服务器端准确识别非客户端模式的用户连接,并提供有效的解决方案,以确保系统的稳定性和数据的准确性。此外,还将介绍一些常用的诊断工具和技术,帮助管理员快速定位和解决问题。 ... [详细]
author-avatar
小小号号--
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有