Linux网络&进程管理笔记总结(三)
网络环境配置
Linux网络配置原理图
Linux网络环境配置
-
#不推荐# 第一种方法(自动获取):
-
第二种方法(指定IP):
直接修改配置文件来指定IP,并可连接到外网(推荐)
编辑 vim/etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static #IP地址 IPADDR=192.168.200.128 #网关 GATEWAY=192.168.200.2 #域名解析器 DNS1=192.168.200.2
-
ifcfg-ens33 文档说明
TYPE="Ethernet" #网卡类型(通常是Ethemet以太网) PROXY_METHOD="none" #代理方式:为关闭状态 BROWSER_ONLY="no" #只是浏览器:否 BOOTPROTO="static" #网卡的引导协议【static:静态IP dhcp:动态IP none:不指定,不指定容易出现各种各样的网络受限】 DEFROUTE="yes" #默认路由 IPV4_FAILURE_FATAL="no" #是否开启IPV4致命错误检测 IPV6INIT="yes" #IPV6是否自动初始化:是(现在还未用到IPV6,不会有任何影响) IPV6_AUTOCONF="yes" #IPV6是否自动配置:是(现在还未用到IPV6,不会有任何影响) IPV6_DEFROUTE="yes" #IPV6是否可以为默认路由:是(现在还未用到IPV6,不会有任何影响) IPV6_FAILURE_FATAL="no" #是否开启IPV6致命错误检测 IPV6_ADDR_GEN_MODE="stable-privacy" #IPV6地址生成模型 NAME="ens33" #网卡物理设备名称 UUID="ab60d501-535b-49f5-a76b-3336a4120f64"#通用唯一识别码,每一个网卡都会有,不能重复,否则两台linux机器只有一台可上网 DEVICE="ens33" #网卡设备名称,必须和‘NAME’值一样 ONBOOT="yes" #是否开机启动,要想网卡开机就启动或通过 `systemctl restart network`控制网卡,必须设置为 `yes` IPADDR=192.168.1.34 # 本机IP NETMASK=255.255.255.0 #子网掩码 GATEWAY=192.168.1.1 #默认网关 DNS1=8.8.8.8# DNS2=8.8.8.5# ZONE=public#
-
设置主机名和hosts映射
-
设置主机名:vim /etc/hostname
-
设置hosts映射
Windows
在C:\Windows\System32\drivers\etc\hosts 文件指定即可 例如:192.168.200.128 主机名
Linux
在/etc/hosts 主机名 指定 例如:192.168.200.1 主机名
主机名解析过程分析(Hosts、DNS)
-
Host
一个文本文件,用来记录IP和Hostname(主机名)的映射关系
-
DNS
dns 即是 domain name system 域名系统的缩写,将域名和 ip 的映射关系保存在一个分布式数据库中。
Linux进程管理(重点)
-
显示系统执行的进程
ps指令:ps -aux | grep xxx 查看有没有xxx服务/程序
- ps -a: 显示当前终端的所有进程信息
- ps -u: 以用户的格式显示进程信息
- ps -x: 显示后台进程运行的参数
(常用风格)System V展示风格
USER 用户名称
PID 进程号
%CPU 进程占用CPU的百分比
%MEM 进程占用物理内存的百分比
VSZ 进程占用的虚拟内存大小(单位:KB)
RSS 进程占用的物理内存大小(单位:KB)
TT 终端名称,缩写
STAT 进程状态,其中S-睡眠,s-表示该进程是会话的先导
进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运
行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等
STARTED 进程的启动时间
TIME CPU时间,即进程使用CPU的总时间
COMMAND 启动进程所用的命令和参数,如果过长会被截断显示
BSD风格
-
ps -ef 以全格式显示所有的进程,查看进程的父进程。
-
-e 显示所有进程 -f 全格式
UID 用户ID PID 进程ID PPID 父进程ID C CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低,数值越小,表明进程是I/O密集型运算,执行优先级会提高 STIME 进程启动的时间 TTY 完整的终端名称 TIME CPU时间 CMD 启动进程所用的命令或参数
终止进程kill或killall
常用选项: -9 :表示强迫进程立即停止
kill指令就像是Windows系统中的任务管理->结束任务一样
基本语法:
kill [选项] 进程号(功能描述:通过进程号杀死进程)
killall 进程名称 (功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负 载过大而变得很慢时很有用)
pstree指令:pstree -p | grep xxx 查看有没有xxx服务/程序
用于查看进程树之间的关系,即是各个进程之间父子关系,
-
pstree -p:同时列出每个进程的PID
-
pstree -u: 同时列出每个进程的所属账号名称
服务(service)管理
介绍:
服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysql , sshd 防火墙等),因此我们又称为守护进程,是 Linux 中非常重要的知识点。
service 管理指令
仅限在CentOS7之前可以使用
service 服务名 [start | stop | restart | reload | status]
service 指令管理的服务在/etc/init.d 查看
服务的运行级别(runlevel):
查看或者修改默认级别: vi /etc/inittab
Linux 系统有 7 种运行级别(runlevel):常用的是级别 3 和 5
运行级别 0:系统停机状态,系统默认运行级别不能设为 0,否则不能正常启动
运行级别 1:单用户工作状态,root 权限,用于系统维护,禁止远程登陆
运行级别 2:多用户状态(没有 NFS),不支持网络
运行级别 3:完全的多用户状态(有 NFS),登陆后进入控制台命令行模式
运行级别 4:系统未使用,保留
运行级别 5:X11 控制台,登陆后进入图形 GUI 模式
运行级别 6:系统正常关闭并重启,默认运行级别不能设为 6,否则不能正常启动
开机的流程说明
CentOS7后运行级别说明
在/etc/initab进行了简化:
$\color{red}{multi-user.target:}$analogous to runlevel 3
$\color{red}{graphical.target:}$analogous to runlevel 5
语法:
查看默认级别:
systemctl get-default
设置默认级别:
systemctl set-default TARGET.target
chkconfig指令
仅限在CentOS7之前可以使用
介绍
注意:在CentOS7后,很多服务$\color{red}{使用systemctl}$ 管理
1. 通过chkconfig 命令可以给每个服务的各个运行级别设置自启动/关闭
2. chkconfig 指令管理的服务在/etc/init.d查看
chkconfig基本语法
- 查看服务 chkconfig --list[ | grep xxx]
- chkconfig 服务名 --list
- chkconfig --level 5 服务名 on/off
systemctl管理指令
- 基本语法:systemctl [start | stop | restart | reload | status] 服务名
- systemctl指令管理的服务在/usr/lib/systemd/system 查看
systemctl设置服务的自启动状态
- systemctl list-unit-files [ | grep 服务名]
- systemctl enable 服务名 (设置服务开机启动)
- systemctl disable 服务名 (关闭服务开机启动)
- systemctl is-enabled 服务名 (查询某个服务是否自启动的)
firewall指令
- 打开端口:firewall-cmd --permanent --add-port=端口号/协议
- 关闭端口:firewall-cmd --permanent --remove-port=端口号/协议
- 重新载入,才能生效:firewall-cmd --reload
- 查询端口号是否开放:firewall-cmd --query-port=端口号/协议
动态监控进程
top 与 ps 命令很相似。它们都用来显示正在执行的进程。
Top 与 ps 最大的不同之处,在于 top 在执行一段时间可以更新正在运行的的进程。
语法: top [参数]
交互操作说明:
监控网络状态
查看系统网络情况netstat
基本语法:netstat [参数]
-an 按一定顺序排序输出
-p 显示哪个进程在调用
检查主机连接命令ping
是一种网络检测工具,它主要是用检测远程主机是否正常,或是两部主机间的网线或网卡故障。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构