内核参数、top命令、脚本练习、initrd简介
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,内核参数、top命令、脚本练习、initrd简介列举常见的内核参数以及参数的意义(1)net.ipv4.ip_forward:数据包的路由转发开关,设置为1表示开启,0表示关闭(2)net.ipv4.
千家信息网最后更新 2025年12月02日内核参数、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安全错误
数据库的锁怎样保障安全
刺激战场轻量版哪个服务器快
组织网络安全专题讲座程序
网络安全师招聘要求
数据库追踪器怎么精确定位
服务器安全技巧
德赛西威软件开发面试
互联网数据库的技术架构
e点通网络安全保护
软件开发sa
千寻网络技术咨询有限公司
snw服务器
portfolio的服务器
网络安全是否包括非法利用
论网络安全中的数字签名
获奖的网络安全手抄报
黑龙江互联网养老软件开发哪儿好
空军的计算机网络技术
云服务器自动运行脚本
数据库中约束条件是什么意思
达梦数据库删除实例
SQL数据库查询条件
软件开发转包协议
东莞月嫂平台软件开发售价
数据库服务器代理怎么打开
成都手机网络安全检测
智慧党务系统软件开发
未来数据库的发展趋势
手机app软件开发语言
泰拉瑞亚在服务器怎么创建房子
e5处理器做服务器怎么样