本文主要是介绍【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地址配置为静态的
步骤:
- 通过vim 打开上述文件
- 修改
BOOTPROTO
为static - 添加新的语句
IPADDR=
后边给定自定义的ip地址 - 添加网关地址
GATEWAY=
后边给定网关 - 添加域名解析器
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
:查看防火墙的状态
注意:这种方式只是临时设置,设置完毕立即生效,重新启动之后还是回到原来的配置状态,这个就是systemctl
与chkconfig
指令的区别
- 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开发 第十篇】网络配置和进程管理详细知识笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!