当前位置: 首页 > news >正文

什么样的企业要做网站建筑工程自我鉴定300字

什么样的企业要做网站,建筑工程自我鉴定300字,百度竞价点击神器下载安装,阿里巴巴网站备案号简介: 这篇文章介绍了一款用于Linux系统的自动化硬件老化测试脚本。该脚本能够通过对CPU、内存、硬盘和GPU进行高强度负载测试,持续运行设定的时长(如1小时),以模拟长时间高负荷运行的环境,从而验证硬件的稳…

简介:

  这篇文章介绍了一款用于Linux系统的自动化硬件老化测试脚本。该脚本能够通过对CPU、内存、硬盘和GPU进行高强度负载测试,持续运行设定的时长(如1小时),以模拟长时间高负荷运行的环境,从而验证硬件的稳定性与可靠性。脚本还包括了系统资源监控,实时显示CPU温度、频率、内存使用情况等信息,并将测试结果记录到日志文件中。测试完成后,脚本会提供详细的反馈,并允许用户选择是否重新执行测试。通过这种方式,用户可以轻松地评估设备的性能和健康状况。

#!/bin/bash# 请设置老化时长(小时)
set_aging_time=1# 获取脚本绝对路径
SCRIPT_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
# echo "脚本所在的绝对路径是: ${SCRIPT_DIR}"# 日志存放路径
log_file=${SCRIPT_DIR}/log_file.log
stress_ng=${SCRIPT_DIR}/stress_ng.log# 安装stress-ng、figlet和glmark2-es2工具,当前环境为Ubuntu系统,根据系统替换相关安装命令
install_packages() {if command -v stress-ng > /dev/null 2>&1 && command -v figlet > /dev/null 2>&1 && command -v glmark2-es2 > /dev/null 2>&1; thenecho "All software has been installed."elsesudo apt updatesudo apt install -y stress-ngsudo apt install -y glmark2-es2sudo apt install -y figlet# 检查 stress-ng 是否缺失if ! command -v stress-ng > /dev/null 2>&1; thenecho "stress-ng is not installed"exit 1fi# 检查 figlet 是否缺失if ! command -v figlet > /dev/null 2>&1; thenecho "figlet is not installed"exit 1fi# 检查 glmark2-es2 是否缺失if ! command -v glmark2-es2 > /dev/null 2>&1; thenecho "glmark2-es2 is not installed"exit 1fifi
}# CPU stress test
run_cpu_test() {# 查看cpu信息 lscpustress-ng --cpu $(nproc) --metrics-brief --timeout ${aging_time}s >> ${stress_ng} 2>&1
}# Memory stress test
run_memory_test() {available_memory=$(free -m | grep -E 'Mem|内存' | awk '{print $7}')half_memory=$(echo "$available_memory / $(nproc)" | bc)# 运行内存分配释放模式stress-ng --vm $(nproc) --vm-bytes ${half_memory}M --metrics-brief --timeout ${aging_time}s >> ${stress_ng} 2>&1# 运行内存持续占用模式# stress-ng --vm 1 --vm-bytes ${available_memory}M --metrics-brief --vm-keep --timeout ${aging_time}s >> ${stress_ng} 2>&1
}#HDD stress test
run_disk_stress_test() {stress-ng --hdd $(nproc) -i $(nproc) --metrics-brief --timeout ${aging_time}s >> ${stress_ng} 2>&1
}# GPU stress test
run_gpu_test() {timeout ${aging_time} glmark2-es2  --run-forever --annotate > /dev/null 2>&1
}get_cpu_info() {# 当前 CPU 温度路径cpu_temp_path="/sys/class/thermal/thermal_zone1/temp"cat ${cpu_temp_path} > /dev/null 2>&1if [ $? -eq 0 ]; thencpu_temp=$(echo "scale=1; $(cat ${cpu_temp_path}) / 1000" | bc)elsecpu_temp=" ---"fi# 当前 CPU 频率路径cpu_cur_freq_path="/sys/devices/system/cpu/cpufreq/policy0/cpuinfo_cur_freq"cat ${cpu_cur_freq_path} > /dev/null 2>&1if [ $? -eq 0 ]; thencpu_cur_freq=$(echo "scale=2; $(cat ${cpu_cur_freq_path}) / 1000" | bc)elsecpu_cur_freq=" --- "fi# 获取当前CPU使用率cpu_usage=$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}')
}get_memory_info() {# 获取总内存、已用内存、缓存memory_info=$(free -m)total_mem=$(echo "$memory_info" | grep -E 'Mem|内存' | awk '{print $2}')used_mem=$(echo "$memory_info" | grep -E 'Mem|内存' | awk '{print $3}')# 计算内存使用百分比(保留一位小数)used_percent=$(echo "scale=1; $used_mem * 100 / $total_mem" | bc)
}run_test() {touch ${SCRIPT_DIR}/start_state.zzecho "Device MAC: $(ip -o link show up | awk '$2 == "eth0:" {print $17}')" >> ${log_file}aging_time=$((set_aging_time * 60 * 60))echo "Aging duration: ${aging_time}S" >> ${log_file}run_cpu_test &run_memory_test &run_disk_stress_test &run_gpu_test &echo "start time: $(date)" >> ${log_file}start_time=$(date +%s)# 清屏clear# 隐藏光标:使用 ANSI 转义序列echo -e "\e[?25l"# 循环直到老化时间结束while true; docurrent_time=$(date +%s)  # 获取当前时间elapsed_time=$((current_time - start_time))  # 计算已老化时间# 将已老化时间转换为小时、分钟和秒hours=$((elapsed_time / 3600))minutes=$(( (elapsed_time % 3600) / 60 ))seconds=$((elapsed_time % 60))tput cup 0 0echo -n "Aging time: $(printf "%02d:%02d:%02d" $hours $minutes $seconds)    "get_cpu_infotput cup 2 0echo -n "CPU Usage: ${cpu_usage}%   |  CPU Temp: ${cpu_temp} °C   |  CPU Cur Freq: ${cpu_cur_freq} MHz    "get_memory_infotput cup 4 0echo -n "Total Mem: ${total_mem}M  |  Used Mem: ${used_mem}M     |  Mem Usage: ${used_percent}%    "# 检查是否已经达到老化时间if [ "$elapsed_time" -ge "$aging_time" ]; thenecho "stop time: $(date)" >> ${log_file}breakfi# 每隔1秒更新一次显示sleep 1done# 等待所有测试完成wait# 显示光标:使用 ANSI 转义序列echo -e "\e[?25h"	echo ""printf "Aging test passed, aging duration: %02d:%02d:%02d" $hours $minutes $seconds 2>&1 | tee -a ${log_file}echo ""echo -e "\033[32m$(figlet "PASS")\033[0m"touch ${SCRIPT_DIR}/end_state.zz
}install_packagesstart_state="${SCRIPT_DIR}/start_state.zz"
end_state="${SCRIPT_DIR}/end_state.zz"
if [[ -e "$start_state" ]] && [[ ! -e "$end_state" ]]; thenecho -e "\033[31m$(figlet "FAIL")\033[0m"read -p "Aging test failed, please choose whether to re-execute aging test? (y/n):" answerif [ "$answer" = "Y" ] || [ "$answer" == "y" ]; thenrm -rf ${SCRIPT_DIR}/log_file.logrm -rf ${SCRIPT_DIR}/stress_ng.logrm -rf ${SCRIPT_DIR}/start_state.zzrun_testelseexit 0fielif [[ -e "$start_state" ]] && [[ -e "$end_state" ]]; thenecho -e "\033[32m$(figlet "PASS")\033[0m"read -p "The equipment has completed the aging test and passed. Would you like to re-execute the aging test? (y/n):" answerif [ "$answer" = "Y" ] || [ "$answer" == "y" ]; thenrm -rf ${SCRIPT_DIR}/log_file.logrm -rf ${SCRIPT_DIR}/stress_ng.logrm -rf ${SCRIPT_DIR}/start_state.zzrm -rf ${SCRIPT_DIR}/end_state.zzrun_testelseexit 0fielserun_test
fi
http://www.yayakq.cn/news/391398/

相关文章:

  • 做新媒体的小说网站wordpress 邀请
  • 北京赛车彩票网站怎么做苏州建设工程信息网
  • 自身网站的平台建设windows2008 iis 网站
  • 怎么做棋牌网站做网站成都
  • 小程序自己做网站域名能卖多少钱一个
  • 建设部注册师网站什么网站可以做兼职销售
  • 网站关键字如何选择wordpress怎么改变布局
  • 美食网站建设背景豫港大厦 做网站
  • 大连制作企业网站泰安网站建设开发公司
  • 网站上哪个做相片书好唐山网站建设拓
  • html网站设计实验报告信阳网站网站建设
  • 北京国税局网站做票种核定时学做点心的网站
  • 信阳网站优化dede网站搬家教程
  • 卖童书的网站该怎么做nas搭建网站
  • 广州红鼎网站建设有限公司怎么样成全在线观看免费高清动漫
  • 班级网站建设开题报告地产网站规划
  • 济宁有没有专门做网站的网站增加新闻功能
  • 江苏网站开发多少钱客户渠道
  • 英文网站建设优化东营工程信息网
  • 下载公众号seo都用在哪些网站
  • 基于php网站开发的参考文献海南网站建设基本流程
  • 音乐网站建设策划书杭州动漫设计公司最新招聘
  • 网站百度排名查询在拼多多开网店的流程
  • 免费建立一个网站怎么提高网站曝光
  • 网站分析 工具长尾关键词是什么
  • 网站设计研究方法北京设计网站建设
  • 可以做内容的网站wordpress短链接关键字
  • 网站域名注册时间查询无锡网站建设xinysu
  • 英文公司网站制作网站建设定做
  • ppt模板免费下载的网站世界建筑设计网站