百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

开发者管理服务器必备技能之Linux进程管理

bigegpt 2024-09-06 17:49 36 浏览


基于国产深度操作系统学习。

一、概述

1. 进程与程序

Linux 系统中触发任何一个事件时,系统都会将它定义为一个进程,并给这个进程一个ID(PID),同时根据触发这个进程的用户与相关属性关系,给予这个PID一组有效的权限设置。可以与程序简单地进行划分:

  • 程序:物理形式存在媒介中
  • 进程:存在内存中
    在深度系统的系统监视器查看进程:

2. 子进程与父进程

进程之间可以有父子关系,即有一个进程启动另一个进程。

上面通过ps -l可以看到,当在一个bash里启动另一个bash时,新进程的PPID 是前一个bash的PID。

二、常见的进程操作

1. 启动进程

可以直接启动命令的方式启动一个新进程,如使用: vim

2. 后台启动任务 &

使用 &可以将新启动的一个任务放到后台执行如果只使用&,当程序有标准输出、标准错误时,仍会输出一前台。这时可以使用数据流的重定向,把输出数据传送至某个文件中,如:

tar -zpcvf /tmp/aaa.tar.gz /etc > /tmp/log.txt 2>&1 &

这时输出的信息都进入到log.txt里了。

3. 快捷键ctrl+z

可以把正在运行的vim任务放到后台:

vim a
CTRL+Z

在深度系统上有一个系统监视器,可以对硬件负载、程序运行和系统服务运行监测、查看和管理,还支持对进程的搜索、强制结束进程。

jobs -l

查看后台任务。也可以在深度系统的系统监视器看到:

4. 使用fg 任务号 把后台任务恢复

# 百分号可以省略
fg %1   

5. 使用bg 让后台任务的状态变成运行中

这个在深度系统没测试成功。

6. 杀进程kill

杀进程失败时, -9进行强制杀进程。kill的参数默认是PID,%的形式杀bash的任务。系统监视器界面可以简单的右键选择结束进程进行杀进程。

7. killall

根据名称杀任务。

三、脱机任务

1. at

定时到指定时间运行任务,放到系统后台运行。

2. nohup

在脱机或注销后,程序仍在运行。

四、查看任务

上面用了深度系统的系统监视器查看任务,命令行可以使用ps命令。

# 查看系统所有进程
ps aux
ps -lA
# 显示进程和进程树状态
ps axjf
# 只看与自己bash相关的任务
ps -l

五、top命令

六、iftop

这个与本章内容并不强关联

1. 作用

查看实时的网络流量,可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等。

2. 安装

yum install -y gcc flex byacc libpcap ncurses ncurses-devel libpcap-devel tcpdump

cd /usr/local/src
wget http://www.ex-parrot.com/pdw/iftop/download/iftop-0.17.tar.gz
tar xvf iftop-0.17.tar.gz
cd iftop-0.17
./configure --prefix=/usr/local/iftop
make
make install
chmod 700 /usr/local/iftop/sbin/iftop  #修改IFTOP权限

参数

语法: iftop -h | [-npblNBP] [-i interface] [-f filter code] [-F net/mask] [-G net6/mask6]

  • -h 显示本帮助(Help)信息
  • -n 不进行主机名(hostName)查找
  • -N 不将端口号(port Number)转换成对应的服务 to services
  • -p 混合(Promiscuous)模式(显示网络相关的其他主机信息)
  • -b 不显示流量图形条(Bar)
  • -B 以字节(Byte)为单位,显示带宽(Bandwidth);默认以比特(bit)显示的
  • -i interface 监控的网卡接口(interface)
  • -f filter code 包统计时,使用过滤码;默认:无,只统计IP包
  • -F net/mask 显示特定IPv4网段的进出流量(Flow);如# iftop -F 10.10.1.0/24
  • -G net6/mask6 显示特定IPv6网段的进出流量(Flow)
  • -l 显示并统计IPv6本地(Local)链接的流量(默认:关)
  • -P 显示端口(Port)
  • -m limit 设置显示界面上侧的带宽刻度(liMit)
  • -c config file 指定配置(Config)文件
  • -t 使用不带窗口菜单的文本(text)接口

排序:

  • -o 2s Sort by first column (2s traffic average)
  • -o 10s Sort by second column (10s traffic average) [default]
  • -o 40s Sort by third column (40s traffic average)
  • -o source Sort by source address
  • -o destination Sort by destination address

运行

/usr/local/iftop/sbin/iftop
/usr/local/iftop/sbin/iftop -i eth0 -n  就可以看到eth0网卡的流量状况

运行界面

说明

  • TX 发送流量
  • RX 接收流量
  • TOTAL 总流量
  • Cumm 运行iftop以来的总流量
  • peak 流量峰值
  • rates 过去2s 10s 40s 的平均流量

3. 界面命令

主机显示

  • n - DNS主机解析的开关
  • s - 源(Source)主机显示的开关
  • d - 目标(Dest)主机显示的开关
  • t - 循环切换行显示模式

端口显示

  • N - toggle service resolution
  • S - toggle show source port
  • D - toggle show destination port
  • p - toggle port display

排序

  • 1/2/3 - sort by 1st/2nd/3rd column
  • < - sort by source name
  • > - sort by dest name
  • o - freeze current order

普通

  • P - 暂停(Pause)显示
  • h - 本帮助(Help)的显示或隐藏
  • b - 图形条(Bar)的显示或隐藏
  • B - cycle bar graph average
  • T - toggle cumulative line totals
  • j/k - scroll display
  • f - edit filter code
  • l - set screen filter
  • L - lin/log scales
  • ! - shell command
  • q - quit

七、特殊文件/proc/*

进程映射到的虚拟文件系统。

  1. /proc/cmdline
    给出了内核启动的命令行。
xundh@xundh-PC:~$ cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-5.3.0-3-amd64 root=UUID=80770366-767a-4583-9ca7-6dccc188aa2e ro splash quiet DEEPIN_GFXMODE=1,1152x864,1600x1200,1280x1024,1024x768
  1. /proc/cpuinfoCPU信息
  2. /proc/devices列出字符和块设备的主设备号,及分配到这些设备的设备名称。
  3. /proc/dma列出由驱动程序保留的DMA通道和保留它们的驱动程序名称。
  4. /proc/filesystems列出可供使用的文件系统类型。
  5. /proc/interrupts每一行都有一个保留的中断。
  6. /proc/ioports列出了硬盘、网卡、声卡等外设的I/O端口范围。
  7. /proc/kcore物理内存镜像,二进制格式,可以使用GDB来考察内核的数据结构。
  8. /proc/kmsg用于检索用printk生成的内核消息。
  9. /proc/ksyms列出已经登记的内核符号。
  10. /proc/loadavg列出不同的时间间隔计算的系统平均负载。
  11. /proc/locks包含在打开的文件上的加锁信息。
  12. /proc/mdstat由md设备驱动程序控制的RAID设备信息
  13. /proc/meminfo内存状态信息。
  14. /proc/misc用内核函数misc_register登记的设备驱动程序。
  15. /proc/modules加载内核模块的信息。可使用lsmod命令显示简要信息。
  16. /proc/mounts给出当前操作系统安装的文件系统信息。
  17. /proc/pciPCI设备信息。
  18. /proc/statCPU、磁盘、内存等信息。
  19. /proc/uptime系统上次自举以来的秒数,和累计空闲秒数。
  20. /proc/version内核版本。
  21. /proc/net联网协议情况。
  22. /proc/scsiSCSI设备信息。
  23. /proc/sys信息非常多,用来调整系统性能。

相关推荐

Linux gron 命令使用详解(linux gminer)

简介gron是一个独特的命令行工具,用于将JSON数据转换为离散的、易于grep处理的赋值语句格式。它的名字来源于"grepableon"或"grepable...

【Linux】——从0到1的学习,让你熟练掌握,带你玩转Linu

学习Linux并掌握Java环境配置及SpringBoot项目部署是一个系统化的过程,以下是从零开始的详细指南,帮助你逐步掌握这些技能。一、Linux基础入门1.安装Linux系统选择发行版:推荐...

Linux常用的shell命令汇总(linux中shell的作用)

本文介绍Linux系统下常用的系统级命令,包括软硬件查看、修改命令,有CPU、内存、硬盘、网络、系统管理等命令。说明命令是在Centos6.464位的虚拟机系统进行测试的。本文介绍的命令都会在此C...

零成本搭建个人加密文件保险柜(适用于 Win11 和 Linux)

不依赖收费软件操作简单,小白也能跟着做支持双系统,跨平台使用实现数据加密、防删除、防泄露内容通俗无技术门槛,秒懂秒用使用工具简介我们将使用两个核心工具:工具名用途系统支持Veracrypt创建加密虚...

如何在 Linux 中使用 Gzip 命令?(linux怎么用gzip命令)

gzip(GNUzip)是Linux系统中一个开源的压缩工具,用于压缩和解压缩文件。它基于DEFLATE算法,广泛应用于文件压缩、备份和数据传输。gzip生成的文件通常带有.gz后缀,压缩效率...

Linux 必备的20个核心知识点(linux内核知识点)

学习和使用Linux所必备的20个核心知识点。这些知识点涵盖了从基础操作到系统管理和网络概念,是构建扎实Linux技能的基础。Linux必备的20个知识点1.Linux文件系统层级标...

谷歌 ChromeOS 已支持 7z、iso、tar 文件格式

IT之家6月21日消息,谷歌ChromeOS在管理文件方面进行了改进,新增了对7z、iso和tar等格式的支持。从5月的ChromeOS101更新开始,ChromeOS...

如何在 Linux 中提取 Tar Bz2 文件?

在深入解压方法之前,我们先来了解.tar.bz2文件的本质。.tar.bz2是一种组合文件格式,包含两个步骤:Tar(TapeArchive):tar是一种归档工具,用于将多个文件或目录打包...

如何在 CentOS 7/8 上安装 Kitematic Docker 管理器

Kitematic是一款流行的Docker图形界面管理平台,适用于Ubuntu、macOS和Windows操作系统。然而,其他发行版(如CentOS、OpenSUSE、Fedora、R...

Nacos3.0重磅来袭!全面拥抱AI,单机及集群模式安装详细教程!

之前和大家分享过JDK17的多版本管理及详细安装过程,然后在项目升级完jdk17后又发现之前的注册和配置中心nacos又用不了,原因是之前的nacos1.3版本的,版本太老了,已经无法适配当前新的JD...

爬虫搞崩网站后,程序员自制“Zip炸弹”反击,6刀服务器成功扛住4.6万请求

在这个爬虫横行的时代,越来越多开发者深受其害:有人怒斥OpenAI的爬虫疯狂“偷”数据,7人团队十年心血的网站一夜崩溃;也有人被爬虫逼到极限,最后只好封掉整个巴西的访问才勉强止血。但本文作者却走...

Ubuntu 操作系统常用命令详解(ubuntu必学的60个命令)

UbuntuLinux是一款流行的开源操作系统,广泛应用于服务器、开发、学习等场景。命令行是Ubuntu的灵魂,也是高效、稳定管理系统的利器。本文按照各大常用领域,详细总结Ubuntu必学...

Linux面板8.0.54 测试版-已上线(linux主机面板)

Linux面板8.0.54测试版【增加】[网站]Java项目新增刷新列表按钮【增加】[网站]PHP项目-Apache-服务新增守护进程功能【增加】[网站]Python项目创建/删除网站时新增同时创建...

开源三剑客——构建私有云世界的基石

公共云原生的浪潮正在席卷这个世界,亚马逊AWS、谷歌GCP和微软的Azure年收入增长超过了30%,越来越多的公司和个人开始将自己的服务部署到云环境中,大型数据中心的规模经济带来了成本的降低,可以在保...

2.2k star,一款业界领先的私有云+在线文档管理系统

简介kodbox可道云(原KodExplorer)是业内领先的企业私有云和在线文档管理系统,为个人网站、企业私有云部署、网络存储、在线文档管理、在线办公等提供安全可控,简便易用、可高度定制的私有云产品...