【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

相关文章

mybatis映射器配置小结

《mybatis映射器配置小结》本文详解MyBatis映射器配置,重点讲解字段映射的三种解决方案(别名、自动驼峰映射、resultMap),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定... 目录select中字段的映射问题使用SQL语句中的别名功能使用mapUnderscoreToCame

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

MySQL8 密码强度评估与配置详解

《MySQL8密码强度评估与配置详解》MySQL8默认启用密码强度插件,实施MEDIUM策略(长度8、含数字/字母/特殊字符),支持动态调整与配置文件设置,推荐使用STRONG策略并定期更新密码以提... 目录一、mysql 8 密码强度评估机制1.核心插件:validate_password2.密码策略级

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二

QT Creator配置Kit的实现示例

《QTCreator配置Kit的实现示例》本文主要介绍了使用Qt5.12.12与VS2022时,因MSVC编译器版本不匹配及WindowsSDK缺失导致配置错误的问题解决,感兴趣的可以了解一下... 目录0、背景:qt5.12.12+vs2022一、症状:二、原因:(可以跳过,直奔后面的解决方法)三、解决方