内核参数、top命令、脚本练习、initrd简介
发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,内核参数、top命令、脚本练习、initrd简介列举常见的内核参数以及参数的意义(1)net.ipv4.ip_forward:数据包的路由转发开关,设置为1表示开启,0表示关闭(2)net.ipv4.
千家信息网最后更新 2025年01月24日内核参数、top命令、脚本练习、initrd简介
内核参数、top命令、脚本练习、initrd简介
- 列举常见的内核参数以及参数的意义
(1)net.ipv4.ip_forward:数据包的路由转发开关,设置为1表示开启,0表示关闭(2)net.ipv4.conf.default.rp_filter对从默认网卡进来的数据包进行反向路径校验,设置为1表示开启,0表示关闭(3)net.ipv4.conf.default.accept_source_route是否接受含有源路由信息的ip包,设置为1表示开启,0表示关闭(4)net.ipv4.icmp_echo_ignore_all:忽略所有外部来的ping请求,但不影响自己对外外的ping操作。设置为1表示关闭ICMP回应功能,设置0表示开启ICMP回应功能。(5)kernel.hostname:主机名的内核参数(6)net.ipv4.tcp_max_tw_buckets:设置TCP最大的timewait数量。默认是180000(7)net.ipv4.ip_local_port_range :允许系统打开的端口范围,值为两个数字,中间以空格隔开,分别表示最小端口号和最大端口号。(8)net.ipv4.tcp_tw_recycle:启用timewait快速回收。设置为1表示启用功能。
补充:
(1)以上所有的参数分别在 /proc/sys/#/* 每个对应的目录下:例如: net.ipv4.ip_forward = /proc/sys/net/ipv4/ip_forward
(2)修改参数的值,专用命令sysctl ,或者可以使用echo重定向的方式例如:~]# echo "test.localhost " > /proc/sys/kernel/hostname ~]#sysctl -w net.ipv4.ip_forward=1
注意:以上修改方式都只对当前有效,如果想永久有效需要修改配置文件:
/etc/sysctl.conf 或者/etc/sysctl.d/*.conf 立即生效的方式:sysctl -p /PATH/TO/CONFIG.FILE
- 通过/proc查看top中展示的进程状态
top命令参数及意义:
参数名 | 对应/proc路径 | 说明 |
---|---|---|
PID列 | 为/proc目录下的数字目录 | 进程ID,每个进程的PID数字做为目录名称 |
USER | 为/proc/PID/status文件中的以Uid开头行的第一列数字 | 进程的所属用户 |
PR | 在/proc/PID/stat文件中第18列数值 | 任务的调度优先级 |
NI | 在/proc/PID/stat文件中第19列数值 | 表示任务的NICE值 |
VIRT | 在/proc/PID/statm文件中第1列数值(单位为页) | 虚拟内存大小(KiB),任务使用的虚拟内存总量。 它包括所有代码,数据和共享库以及已换出的页面和已映射但未使用的页面 |
RES | 在/proc/PID/statm文件中第2列数值(单位为页) | 表示驻留内存大小(KiB) ,任务正在使用的非交换物理内存 |
SHR | 在/proc/PID/statm文件中第3列数值(单位为页) | 表示共享内存大小(KiB),可能与其他进程共享的内存 |
S | 这行显示的进程状态 | 为/proc/PID/status文件中State |
%CPU | CPU使用率,自上一次屏幕刷新以来占用的CPU时间与总CPU时间的百分比。(通过计算得到) | |
%MEM | 内存使用(RES)任务当前使用的可用物理内存份额。(通过计算RES与总内存比率得到) | |
TIME+ | 在/proc/PID/stat文件中体现为两个时间之和 :第14列该任务在用户态运行的时间 和第15列该任务在核心态运行的时间 | 任务自启动以来使用的总CPU时间,显示百分之一秒的精度 |
COMMAND | /proc/#/status文件中以Name开头的行 | 进程名 |
3.分别用while、for循环检测10.0.0.1/24网段存活的IP地址:
(1)for:
#!/bin/bash#declare -i uphosts=0declare -i downhosts=0for i in {1..254};do if ping -W 1 -c 1 10.0.0.${i} %> /dev/null; then echo " 10.0.0.$i is ip." let uphosts+=1 else echo "10.0.0.$i is down." let downhosts+=1 fidoneecho "Up hosts: $uphosts, Down hosts: $downhosts."
(2)while
#!/bin/bashdeclare -i uphosts=0declare -i downhosts=0declare -i i=1hostping(){ if ping -W 1 -c 1 $1 &> /dev/null;then echo "$1 is up." return 0 else echo "$1 is down." return 1 fi}while [ $i -le 254 ];do hostping 10.0.0.$i [ $? -eq 0 ] && let uphosts++ || let downhosts++ let i++doneecho "Up hosts: $uphosts ,Down hosts:$downhosts"
4.说明initrd的作用:
initrd 是 boot loader initialized RAM disk的缩写,表示由 boot loader 初始化的内存盘.在 linux内核启动前, boot loader 会将磁盘等存储介质中的 initrd 文件先加载到内存.内核启动时会先访问该内存中的 initrd 文件系统然后才访问真正的根文件系统。启动过程被分为两个过程,第一过程是执行内存中的 initrd 文件系统中的初始化文件(在Linux2.4 内核是/linuxrc 文件,是由文件系统镜像生成的;在Linux2.6内核是/init文件,是使用 cpio 工具生成),负责加载内核访问根文件系统存储介质的驱动模块, 以及加载根文件系统。第二过程是执行真正的根文件系统中的 /sbin/init 进程initrd主要作用:1.内核启动时加载 initrd img, 挂载根 /2.以/linuxrc 的指令执行, 一般有扫描系统硬件,从 当前文件系统中找到驱动安装之.3.挂载系统中真正的根 /
文件
内存
系统
内核
参数
任务
进程
时间
数值
数字
目录
过程
命令
两个
功能
单位
大小
数据
方式
最大
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
通用数据库作用
网络产品服务应当符合网络安全
360做政府网络安全
阿里云查看服务器在线人数
服务器怎么进入管理
数据库技术ado.net
软件开发管理文件
天水讯捷网络技术有限公司
通化盘古网络技术
家长网络安全进社区
传统服务器缺点
数据库只显示问号
系统架构师软件开发工程师
路由器显示远端服务器没有响应
车牌检测数据库
惠普官网服务器
网络爬虫软件开发环境
中科院网络安全硕士生就业
西瓜战队vs服务器
数据库数据安全性
我的世界生化服务器
pos机用哪个服务器
安装软件时无法打开数据库
苏州市软件开发培训班
所选的服务器不接受角色转移
国家网络安全创新与人才基地
异速联服务器配置要求
实验室网络安全沙盒
sql数据库如何查看行号
我的世界服务器美国服务器