Linux网络配置与进程

221 阅读3分钟

本篇文章来介绍一下Linux中的网络配置与进程

1.网络配置

在Windows中,我们可以通过ipconfig查看网关及ip信息;而在Linux中可以使用ifconfig命令查询

图片

在Linux中,默认是自动获取IP地址的,这样做的好处是每次登录后自动获取ip,但是每次获取到的ip可能不一致。而在实际开发中,推荐使用手动指定IP的方式将IP地址固定下来,以确保服务的稳定性与可靠性。这里以centos系统为例,设置方式如下:

vim /etc/sysconfig/network-scripts/ifcfg-ens33
将其中的BOOTPROTO字段修改为static,并且在下方配置IP地址、网关与DNS
修改完之后重启虚拟机或者重启网络服务(systemctl restart network)即可

图片

2.进程

在 Linux 中,进程是系统中正在运行的程序的实例。每个进程都有其唯一的进程标识符(PID),以及与之关联的一组资源,如内存、打开的文件描述符、安全凭证和网络连接等。Linux 系统管理和监视进程的能力是其强大功能之一。了解 Linux 进程的基本概念、管理和监控工具是掌握 Linux 的关键部分。

进程标识符(PID)

  • 每个进程都有一个唯一的标识符(PID),用于系统内部的进程管理。
  • 特殊进程:
    • PID 1 通常是 init 进程,在传统系统上是 init,现代系统如使用 systemd 的 Linux 发行版中是 systemd。它是系统启动后第一个启动的进程。
    • 孤儿进程(父进程已结束的进程)会被 init 进程接管。
    • 僵尸进程是已结束但仍在进程表中等待父进程读取其退出状态的进程。

进程状态

  • R(运行中):进程正在运行或在运行队列中等待。

  • S(睡眠中):进程在等待某个事件或接收到信号。

  • D(不可中断睡眠):进程在等待 I/O(如磁盘操作)。

  • Z(僵尸):进程已完成执行,但仍等待父进程读取其状态。

  • T(停止):进程已被停止,通常是通过接收到 SIGSTOP 或其他停止信号。

3.进程管理查看进程

使用ps命令查看目前系统中有哪些进程在执行。其中PID(进程识别号);TTY(终端机号);TIME(此进程所消耗的CPU时间);CMD(正在执行的命令或进程名)

ps -a :显示当前终端的所有进程
ps -u :以用户的格式显示进程
ps -x :显示后台进程运行的参数
ps -ef :以全格式显示当前所有进程,-e表示所有进程,-f表示全格式。显示文件中的PPID就是父进程

图片

输入ps -aux 显示所有进程的详细信息:

图片

图中参数的解读:

USER:用户名称
PID:进程标识符
%CPU:进程占用CPU的百分比
%MEM:进程占用物理内存的百分比
VSZ:进程占用的虚拟内存大小
RSS:进程占用的物理内存大小
TTY:终端名称,缩写.
STAT:进程状态
START:进程的启动时间
TIME:CPU时间,即进程使用CPU的总时间
COMMAND:启动进程所用的命令和参数,如果过长会被截断显示

控制进程

使用kill发送信号给进程。

kill -SIGTERM <pid>  # 优雅地终止进程
kill -9 <pid>        # 强制杀死进程

使用nicerenice调整进程优先级。

nice -n 10 command   # 以更低的优先级启动一个新进程
renice 10 -p <pid>   # 改变正在运行的进程的优先级

查看进程树

使用pstree [选项] 命令可以更加直观的查看进程信息

选项
-p :显示进程PID
-u :显示进程的所属用户

图片