【Linux开发 第十篇】网络配置和进程管理详细知识笔记

本文主要是介绍【Linux开发 第十篇】网络配置和进程管理详细知识笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Linux

  • 网络配置
    • linux网络环境配置
    • 设置主机名和hosts映射
    • DNS
  • 进程管理
    • 终止进程
    • 进程树
  • 服务管理
    • 服务的运行级别
    • 动态监控进程
    • 监控网络状态

网络配置

查看windows环境中VMnet8网络配置(ipconfig)
查看linux的网络配置(ifconfig)

linux网络环境配置

  • 第一种(自动获取)

登录后,通过界面的来设置自动获取ip

linux启动后自动获取ip,每次获取的ip地址可能不一样
在这里插入图片描述

  • 第二种(指定ip)

直接修改配置文件来指定ip,并可以连接到外网
在文件vi /etc/sysconfig/network-scripts/ifcfg-ens33中进行配置
将ip地址配置为静态的
步骤:

  1. 通过vim 打开上述文件
  2. 修改BOOTPROTO为static
  3. 添加新的语句IPADDR=后边给定自定义的ip地址
  4. 添加网关地址GATEWAY=后边给定网关
  5. 添加域名解析器DNSI=后边给定域名解析器的地址

配置完成后打开保存,打开虚拟网络编辑器,将子网ip修改为上述配置同一网段下,网关也许修改到同一网段下
在这里插入图片描述
配置完成之后重启网络服务或者重启系统
service network restart:重启网络服务

设置主机名和hosts映射

为了方便我们可以设置主机名
hostname:查看主机名
修改文件 /etc/hostname 指定主机名,然后重启

  • 设置hosts映射

我们如何在进行ping的时候不通过ip地址进行而通过主机名来访问,就需要设置hosts映射
在windows中:C:\Windows\System32\drivers\etc\lhosts文件中进行指定
在Linux中:etc/hosts文件中进行指定
如何指定: 在文件中添加一条:ip地址 [空格分隔符] 主机名进行配置
注意:A要访问B的主机名,需要在A中进行配置对方的映射
hosts:文本文件,用来存放ip地址与主机名之间的映射关系

DNS

域名系统,是互联网上作为域名和IP地址相互映射的一个分布式数据库

  • DNS的工作流程

浏览器先检查浏览器缓存中有没有解析好的IP地址,如果没有,就检查DNS解析器缓存,如果有返回IP地址,这两个缓存可以理解为本地解析器缓存,当电脑第一次成功访问某一网站后,在一定的时间内,浏览器或操作系统会缓存它的IP地址(DNS解析记录)
ipconfig /displaydns:DNS域名解析缓存
ipconfig /flushdns:手动清理DNS缓存

如果本地解析器缓存中没有, 检查系统的hosts文件中有没有相对应的映射
如果本地都没有的话,则到域名服务器DNS进行解析域
在这里插入图片描述
番外:黑客可以通过更改我们的hosts文件更改地址的映射,来达到DNS域名劫持的目的

进程管理

在Linux中,每个执行的程序都称为一个进程,每个进程都分配一个PID(进程号)

  • ps指令

ps指令是用来查看目前系统中,有哪些正在执行,以及他们的执行的状况(可以不加参数)
选项:
-a:显示当前终端的所有的进程信息
-u:以用户的格式显示进程信息
-x:显示后台进程运行参数

信息说明:
在这里插入图片描述
STAT:进程状态,其中S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等

  • 父进程

如何查看父子进程关系:
ps -ef:以全格式的形式显示当前所有的进程包括父子关系
在这里插入图片描述
图中表示 1262进程的父进程为1

终止进程

基本语法:
kill [选项] 进程号(通过进程号杀死进程)
killall 进程名称(通过进程名称杀死进程,也支持通配符)
选项:
-g:表示强迫进程立即停止

进程树

  • pstree指令

基本语法:
pstree[选项]
选项:
-p:显示进程的pid
-u:显示进程的所示用户

服务管理

服务(service)本质就是进程,运行在后台,通常监听某个端口,等待其他程序请求

  • service管理指令

service 服务名 [start|stop|restart|reload|status]
service 指令管理的服务在 /etc/init.d查看
如果要查看所有的服务名称输入:setup
在这里插入图片描述
前面带*号的就是开机自启动的服务程序
其其中通过上下键进行浏览,通过tab键退出

服务的运行级别

服务器的运行级别请参考博主之前的文章进行学习哦
Linux服务的开机流程:
在这里插入图片描述
BIOS:负责在操作系统接管之前提供最初的硬件初始化和启动过程,它是嵌入在计算机主板上的一块芯片,在电脑通电之后就开始检查和初始化硬件,然后加载启动操作系统

运行级别的配置信息在/etc/inittab文件下
systemctl get-default查看当前的运行级别
systemctl set-default 运行级别:设置开机默认的网络级别

  • chkconfig指令

通过chkonfig 命令可以给服务的各个运行级别设置自启动/自关闭
chkconfig指令管理的服务在 /etc/inittab文件中进行查看
chkconfig --list:查看所有服务的自启动信息
chkconfig 服务名 --list:查看指定服务的自启动信息
chkconfig --level 5 服务名 on/off:设置某给服务在某个级别的自启动
注意:chkconfig命令配置自启动之后需要将系统进行重新启动

  • systemctl管理指令

systemctl [start|stop|restart|status] 服务名
systemctl指令在文件 /usr/lib/systemd/system中进行查看
systemctl list-unit-files [|grep 服务名]:查看服务开机的自启动状态
systemctl enable 服务名:设置服务开机启动(这里设置的默认级别是3,5)
systemctl disable 服务名:关闭服务开机启动(这里设置的默认级别是3,5)
systemctl is-enabled 服务名:查询某个服务是否是自启动的
systemctl status firewalld:查看防火墙的状态
注意:这种方式只是临时设置,设置完毕立即生效,重新启动之后还是回到原来的配置状态,这个就是systemctlchkconfig指令的区别

  • firewall指令

firewall-cmd --permanent --add-port=端口号/协议:打开端口
firewall-cmd --permanent --remove-port=端口号/协议:关闭端口
firewall-cmd --reload:重新载入,才能生效
firewall-cmd --query-port=端口号/协议:查询端口是否开放

动态监控进程

top在执行一段时间可以更新正在运行的进程

top [选项]
选项:
选项
查询信息头部讲解:
在这里插入图片描述
负载值:三个值相加的结果处于3如果小于0.7就处于正常的负载情况

第二行表示任务数中有1个在运行,184在休眠,0个停止,0个僵死(僵死进程无效且占据内存)

第三行中是CPU的使用情况,用户占据cpu百分比,sy系统占据cpu百分比,id空闲占据cpu百分比

第四行显示内存使用情况,total表示一共内存,free表示空闲内存,used表示使用内存数,buff表示buff占用内存数

第五行表示交换分区的内存占有情况

  • 交互操作说明

交互操作
在进行top进入到动态监控界面的时候可以通过交互命令进行操作
K:操作符K,在输入之后按回车,再输入要结束的进程号ID号

监控网络状态

  • netstat

netstat [选项]
选项:
-an: 按一定的顺序排列输出
-p: 显示哪个进程在调用

  • 网络检测工具

是一种网络检测工具,它主要是用检测远程主机是否正常,或者两部主机间的网线或网卡故障

这篇关于【Linux开发 第十篇】网络配置和进程管理详细知识笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/926257

相关文章

gradle第三方Jar包依赖统一管理方式

《gradle第三方Jar包依赖统一管理方式》:本文主要介绍gradle第三方Jar包依赖统一管理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录背景实现1.顶层模块build.gradle添加依赖管理插件2.顶层模块build.gradle添加所有管理依赖包

基于Python打造一个智能单词管理神器

《基于Python打造一个智能单词管理神器》这篇文章主要为大家详细介绍了如何使用Python打造一个智能单词管理神器,从查询到导出的一站式解决,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 项目概述:为什么需要这个工具2. 环境搭建与快速入门2.1 环境要求2.2 首次运行配置3. 核心功能使用指

Linux之systemV共享内存方式

《Linux之systemV共享内存方式》:本文主要介绍Linux之systemV共享内存方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、工作原理二、系统调用接口1、申请共享内存(一)key的获取(二)共享内存的申请2、将共享内存段连接到进程地址空间3、将

SpringBoot3.4配置校验新特性的用法详解

《SpringBoot3.4配置校验新特性的用法详解》SpringBoot3.4对配置校验支持进行了全面升级,这篇文章为大家详细介绍了一下它们的具体使用,文中的示例代码讲解详细,感兴趣的小伙伴可以参考... 目录基本用法示例定义配置类配置 application.yml注入使用嵌套对象与集合元素深度校验开发

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

IntelliJ IDEA 中配置 Spring MVC 环境的详细步骤及问题解决

《IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决》:本文主要介绍IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决,本文分步骤结合实例给大... 目录步骤 1:创建 Maven Web 项目步骤 2:添加 Spring MVC 依赖1、保存后执行2、将新的依赖

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

一文详解Java异常处理你都了解哪些知识

《一文详解Java异常处理你都了解哪些知识》:本文主要介绍Java异常处理的相关资料,包括异常的分类、捕获和处理异常的语法、常见的异常类型以及自定义异常的实现,文中通过代码介绍的非常详细,需要的朋... 目录前言一、什么是异常二、异常的分类2.1 受检异常2.2 非受检异常三、异常处理的语法3.1 try-