随身wifi刷超频版Debian系统教程-随身wifi折腾入门

news2024/11/25 0:44:14

本人折腾Debian的一些记录,有需要的可以参考一下。本文所用到的命令,请先确保已获得root权限执行。

1.更新和升级系统中已安装的软件包
apt-get update && apt-get upgrade &&; apt-get update --fix-missing

•apt-get update:更新可用软件包的列表。这个命令会检查软件源中是否有新的软件包或更新,并下载它们的信息,以便后续的安装和升级操作可以使用最新的软件包列表。
•apt-get upgrade:升级已安装的软件包。这个命令会根据最新的软件包列表,将已安装的软件包升级到最新版本。
•apt-get update --fix-missing:修复可能由于软件源列表信息不完整而导致的问题。如果在第一步中更新软件包列表时出现错误,这个命令可以尝试修复这些错误。
• 注:如果用的不是国内源建议更换为国内源,更换源脚本太长我就不提供了,搜索一下Debian怎么换源即可。如果用的是Zy143L大佬的抖音9.9 GT106 Debian固件的话要先执行一下apt-mark hold systemd && apt-mark hold libsystemd0将这俩自动更新关闭,不然会导致按键双击关机失效。

2.安装一些常用的软件包
apt-get install curl wget nano vim busybox iptables iproute2 cpufrequtils

• curl:用于在命令行中传输数据的工具。
• wget:用于下载文件的命令行工具。
• nano:一个简单易用的文本编辑器。
• vim:一个强大的文本编辑器,常用于程序开发和系统配置。
• busybox:一个适用于嵌入式系统和单片机的工具集,包含了大部分基本的Linux工具。
• iptables:用于配置Linux防火墙的工具。
• iproute2:用于管理网络连接和路由的工具。
• cpufrequtils:用于管理CPU频率的工具。

3.清理系统中不需要的软件包和日志文件
apt-get autoremove && apt-get clean && apt-get autoclean && journalctl --vacuum-size=5M

• apt-get autoremove:卸载已经不再需要的软件包。这个命令会移除已经安装但是没有被其他软件所依赖的软件包。
• apt-get clean:清理已经下载的软件包文件。这个命令会删除已经下载并安装的软件包的本地缓存文件,以释放磁盘空间。
• apt-get autoclean:清理过期的软件包。这个命令会删除已经过期的软件包,但是保留最新的软件包版本的本地缓存文件,以便以后重新安装。
• journalctl --vacuum-size=5M:缩减系统日志文件。这个命令会删除旧的系统日志文件,只保留最近的5M大小的日志文件。

4.创建swap/zram虚拟内存
# 创建swap虚拟内存
dd if=/dev/zero of=/root/swapfile bs=1M count=512
mkswap /root/swapfile
swapon /root/swapfile

• 创建一个大小为512MB虚拟内存其命名为swapfile,保存在/root目录下。然后格式化为交换分区文件和启用交换分区文件。

# 创建zram虚拟内存
modprobe zram num_devices=1
zramctl --find --size 512M --algorithm lz4 --streams 4
mkswap /dev/zram1
swapon -p 0 /dev/zram1

• 加载zram内核模块,并指定设备数量为1。创建一个512MB大小的zram设备,并使用lz4算法进行压缩,同时将数据分成4个流。将zram设备格式化为swap分区,启用zram设备,并设置优先级。

• swapon -a:启用所有swap分区。
• swapoff -a:禁用所有swap分区。
• swapon --show或swapon -s:显示当前系统中已启用的swap分区。
• swapon -p 或swapon --priority:将指定的swap分区设置为指定的优先级。优先级越高的swap分区,系统越倾向于将内存数据转移到该分区中。

5.修改cpu频率
#先安装cpufrequtils工具
apt-get install cpufrequtils
# 设置cpu模式
cpufreq-set -g conservative
# 调整cpu频率上下限
cpufreq-set -d 200000
cpufreq-set -u 800000

#查看CPU频率和调度信息
cpufreq-info -o

#查看cpu当前频率
cpufreq-info -c 0 -f -m
cpufreq-info -c 1 -f -m
cpufreq-info -c 2 -f -m
cpufreq-info -c 3 -f -m

#查看当前cpu支持模式
cpufreq-info -g

• powersave 是无论如何都只会保持最低频率的所谓“省电”模式;
• userspace 是自定义频率时的模式,这个是当你设定特定频率时自动转变的;
• ondemand 默认模式。一有cpu计算量的任务,就会立即达到最大频率运行,等执行完毕就立即回到最低频率;
• conservative 保守模式,会自动在频率上下限调整,和ondemand的区别在于它会按需分配频率,而不是一味追求最高频率;
• performance 顾名思义只注重效率,无论如何一直保持以最大频率运行。
• schedutil 可以动态地调整CPU的频率和电压来平衡性能和功耗,会根据负载情况动态调整。

6.TRIM优化
fstrim -v /

• fstrim是一个用于在Linux系统中进行TRIM操作的命令行工具,可以用来清理SSD硬盘上的闲置块,提高SSD硬盘的性能和寿命。

7.关闭 LED
echo none > /sys/class/leds/red:os/trigger
echo none > /sys/class/leds/blue:wifi/trigger
echo none > /sys/class/leds/green:internet/trigger

8.可将相应命令加入到rc.local文件开机自启
• 确保rc.local文件拥有可执行权限:sudo chmod +x /etc/rc.local
• 编辑:nano /etc/rc.local
sleep 5
# 启用交换分区文件:
mkswap /root/swapfile
swapon /root/swapfile
modprobe zram num_devices=1
zramctl --find --size 512M --algorithm lz4 --streams 4
mkswap /dev/zram1
swapon -p 0 /dev/zram1
sysctl -w vm.swappiness=100
sync && echo 3 > /proc/sys/vm/drop_caches
sysctl -w vm.drop_caches=3
# 关闭 LED
sleep 35
echo none > /sys/class/leds/red:os/trigger
echo none > /sys/class/leds/blue:wifi/trigger
# echo none > /sys/class/leds/green:internet/trigger
# 设置cpu模式
sudo cpufreq-set -g conservative
# 调整cpu频率上下限
sudo cpufreq-set -d 200000
sudo cpufreq-set -u 800000
# TRIM优化
fstrim -v /
# 清理日志
journalctl --vacuum-size=5M

9.修改系统登录SSH时显示信息
#编辑文件:nano /etc/motd
欢迎登录 Debian 服务器!

#编辑文件:nano /etc/update-motd.d/10-uname
#!/bin/sh
# uname -snrvm
echo "-------------------------- 系统信息 --------------------------"
echo "操作系统: $(echo "$(sed 's/\\n//g;s/\\l//g' /etc/issue)")" || echo "操作系统: $(uname -o)"
echo "主机名称: $(hostname)"
echo "内核版本: $(uname -r)"
echo "软件包数量: $(dpkg --list | wc -l)"
echo "CPU架构: $(lscpu| awk '/Architecture:/ {print $NF}')"
echo "CPU核心数: $(lscpu| awk '/^CPU\(s\)/ {print $2}')"
echo "核心线程数: $(lscpu| awk '/Thread\(s\) per core:/ {print $NF}')"
echo "CPU温度: $(cat /sys/class/thermal/thermal_zone0/temp 2>/dev/null | awk '{print int($1/1000)}')°C"

if output=$(mmcli -m 0 2>&1) && [ -n "$output" ]; then
get_modem() { mmcli -m 0 2>/dev/null | grep -oiP "(?<=$1\s).*" | awk 'NR==1{print}'; };
echo "-------------------------- Modem信息 --------------------------"
[ -n "$(get_modem "own:")" ] && echo "SIM号码: $(get_modem "own:" | sed 's/^86//')"
[ -n "$(get_modem "operator name:")" ] && echo "运营商: $(get_modem "operator name:" | sed 's/CHN-UNICOM/中国联通/g; s/UNICOM/中国联通/g; s/CMCC/中国移动/g; s/CT/中国电信/g')"
[ -n "$(get_modem "state:")" ] && echo "SIM状态: $(get_modem "state:")"
[ -n "$(get_modem "power state:")" ] && echo "数据开关: $(get_modem "power state:")"
[ -n "$(get_modem "access tech:")" ] && echo "访问类型: $(get_modem "access tech:")"
[ -n "$(get_modem "signal quality:")" ] && echo "信号强度: $(get_modem "signal quality:")"
[ -n "$(get_modem "equipment id:")" ] && echo "设备ID: $(get_modem "equipment id:")"
fi

ip_address=$(ip addr show | grep -w inet | awk '{print $2}' | cut -d/ -f1)
if [ -n "$ip_address" ]; then
echo "-------------------------- 网络信息 --------------------------"
echo "内网IP:"
echo "$ip_address"
curl_output=$(curl -s -m 6 cip.cc 2>&1 | sed '/^$/d') && [ -n "$curl_output" ] && {
echo "公网IP:"
echo "$curl_output"; };
fi

interfaces=$(ifconfig | awk '/^[^ ]/ && !/lo/ {gsub(/:/,"");print $1}')
if [ -n "$interfaces" ]; then
echo "-------------------------- 接口信息 --------------------------"
echo "网络接口: "$interfaces""
convert_unit() { size=$1; awk 'BEGIN{ printf "%.2f %s", ('$size'/1024/1024), "MB" }'; }
for interface in $interfaces; do
get_bytes() { ifconfig $interface | grep -E "$1 .*bytes|$1 bytes" | sed -E "s/.*$1 bytes:([0-9]+).*/\1/;s/.*bytes ([0-9]+) .*/\1/"; }
rx=$(get_bytes RX)
tx=$(get_bytes TX)
[ $rx -gt 0 -o $tx -gt 0 ] && echo "$interface 接收: $(convert_unit $rx) 发送: $(convert_unit $tx)"
done;fi

echo "-------------------------- 内存信息 --------------------------"
mmc_info=$(cat /sys/class/mmc_host/mmc0/mmc0\:0001/life_time)
[ -n "$mmc_info" ] && echo "内存寿命: $mmc_info"
echo "硬件内存: $(free -m | awk 'NR==2{printf "%s/%sMiB (%.2f%%)\n", $3,$2,$3*100/$2 }')"
swap_info=$(free -m | awk 'NR==3{printf "%s/%sMiB (%.2f%%)\n", $3,$2,$3*100/$2}')
[ ! -z "$swap_info" ] && echo "虚拟内存: $swap_info" && sudo swapon --show

echo "-------------------------- 磁盘信息 --------------------------"
df -h

echo "-------------------------- 运行信息 --------------------------"
uptime=$(uptime | sed 's/up/已运行:/g; s/mins/分钟/g; s/min/分钟/g; s/days/天/g; s/day/天/g; s/users/个登录用户/g; s/user/个登录用户/g; s/load average/平均负载/g')
echo "本地时间: $uptime"
echo ""

• 注:如果用其他软件复制粘贴进去,编码不一样可能会出错!

10.一些配置内核参数的正or负优化
# 编辑nano /etc/sysctl.conf
vm.swappiness=100
vm.vfs_cache_pressure=50
vm.panic_on_oom=0
vm.dirty_ratio=50
vm.dirty_background_ratio=30
vm.min_free_kbytes=10240
vm.max_map_count=262144
vm.dirty_expire_centisecs=3000
vm.dirty_writeback_centisecs=15000

net.ipv6.conf.all.forwarding=1
net.ipv6.conf.all.proxy_ndp=1
net.ipv6.conf.all.accept_ra=2
net.ipv4.ip_forward=1
net.core.somaxconn=2048
net.ipv4.tcp_max_syn_backlog=8192
net.core.netdev_max_backlog=32768
net.ipv4.tcp_keepalive_time=600
net.ipv4.icmp_echo_ignore_all=0
net.ipv4.tcp_abort_on_overflow=0
net.ipv4.tcp_fack=1
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_sack=1
net.ipv4.tcp_window_scaling=1
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_fastopen=3
net.ipv4.tcp_slow_start_after_idle=0
net.ipv4.tcp_fin_timeout=30
net.ipv4.tcp_keepalive_intvl=30
net.ipv4.tcp_keepalive_probes=3
net.ipv4.ip_default_ttl=128
net.core.message_burst=10
net.core.busy_read=50
net.core.optmem_max=20480
net.ipv4.tcp_challenge_ack_limit=9999
net.ipv4.tcp_max_orphans=32768
net.ipv4.tcp_max_tw_buckets=32768
net.ipv4.udp_rmem_min=8192
net.ipv4.udp_wmem_min=8192
net.ipv4.ip_local_port_range=1024 65000
net.ipv4.tcp_mem=131072 262144 524288
net.ipv4.udp_mem=262144 524288 1048576
net.ipv4.tcp_wmem=8760 256960 4088000
net.ipv4.tcp_rmem=8760 256960 4088000
net.core.rmem_default=524288
net.core.rmem_max=8388608
net.core.wmem_default=524288
net.core.wmem_max=8388608

在修改 /etc/sysctl.conf 文件后,需要运行以下命令使其生效:
sysctl -p 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/913022.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

解锁人工智能项目开发的关键:Python 基础库详解与进阶学习

“ Python 是一种通用的编程语言&#xff0c;广泛用于人工智能项目开发。它有很多可用的库&#xff0c;可以帮助开发人员构建各种人工智能应用程序&#xff0c;如自然语言处理和机器学习。在本文中&#xff0c;我们将介绍一些最流行的 Python 库&#xff0c;以及它们在人工智能…

【机密计算实践】支持 Intel SGX 的 LibOS 项目介绍(二)

续上一篇 【机密计算实践】支持 Intel SGX 的 LibOS 项目介绍(一) 四、Mystikos Mystikos 是一个运行库和一组工具,用于在硬件可信执行环境(TEE)中运行 Linux 应用程序。当前版本支持英特尔 SGX,而未来版本可能支持其他 TEE。 4.1 目标 通过使用硬件 TEE,在…

校园后勤如何实现数字化管理?的修报修系统有哪些产品优势?

数字化时代背景下&#xff0c;校园后勤管理同样需要向智能化方向迈进。随着科技的飞速发展&#xff0c;我们应该充分利用数字化技术和智能化设备来提升校园后勤管理的效率和质量。通过引入可视化、数字化的流程管控系统&#xff0c;我们可以实现在线报修、快速响应处理、全流程…

4G语音胸牌,如何实现在门店接待过程管理的智能化管理?

一个完整的客户销售过程&#xff0c;一般包括线索获取-电话沟通-邀约到店-门店接待-回访-成交。这个过程中我们会发现&#xff0c;销售和客户大量的互动过程都在线下门店&#xff0c;而这个环节是客户最直观感受企业服务和产品的过程&#xff0c;很大程度上直接决定后续的成交与…

精准、高效的RFID资产管理新时代

当谈及高效、精细的企业资产管理时&#xff0c;RFID固定资产管理系统绝对是一项令人振奋的技术。这项引人注目的射频识别技术为企业管理带来了前所未有的革命性变革&#xff0c;以其精准性和高效性赋予了资产管理全新的维度。 想象一下&#xff0c;您无需耗费宝贵的时间和精力…

MinIO线上扩容实战

硬件投入肯定是随着业务的增长而增长&#xff0c;这就要求中间件平台必须提供水平伸缩机制&#xff0c;MinIO对象存储服务也不例外&#xff0c;本文就详细介绍MinIO的扩容。 Minio支持通过增加新的Server Pool来扩容老的集群。每个Server Pool都是一个相对独立的故障域&#x…

安防视频能力平台EasyNVR视频汇聚平台关闭匿名登陆的问题的解决步骤

EasyNVR是基于RTSP/Onvif协议的安防视频能力平台&#xff0c;它可实现设备接入、实时直播、录像、检索与回放、存储、视频分发等视频能力服务&#xff0c;可覆盖全终端平台&#xff08;pc、手机、平板等终端&#xff09;&#xff0c;在智慧工厂、智慧工地、智慧社区、智慧校园等…

YOLOv8教程系列:三、K折交叉验证——让你的每一份标注数据都物尽其用(yolov8目标检测+k折交叉验证法)

YOLOv8教程系列&#xff1a;三、K折交叉验证——让你的每一份标注数据都物尽其用&#xff08;yolov8目标检测k折交叉验证法&#xff09; 0.引言 k折交叉验证&#xff08;K-Fold Cross-Validation&#xff09;是一种在机器学习中常用的模型评估技术&#xff0c;用于估计模型的性…

华星时空展锐芯片5g随身WiFi改串教程

前段时间入手了一个华正易尚&#xff0c;发现插手机卡可以用&#xff0c;插微闯移植卡直接没网&#xff0c;于是研究出展锐改串的教程分享给大家 ⭐注意:理论上所有的展锐芯片棒子都可以用&#xff0c;至于电池机请自行测试 话不多说&#xff0c;教程开始: 1.下载展锐AT改串驱…

服务器数据恢复-EVA存储磁盘故障导致存储崩溃的数据恢复案例

EVA系列存储是一款以虚拟化存储为实现目的的中高端存储设备。EVA存储中的数据在EVA存储设备工作过程中会不断进行迁移&#xff0c;如果运行的任务比较复杂&#xff0c;EVA存储磁盘负载加重&#xff0c;很容易出现故障的。EVA存储通过大量磁盘的冗余空间和故障后rss冗余磁盘动态…

JAVA开发环境接口swagger-ui使用总结

一、前言 swagger-ui是java开发中生产api说明文档的插件&#xff0c;这是后端工程师和前端工程师联调接口的桥梁。生成的文档就减少了很多没必要的沟通提高开发和测试效率。 二、 swagger-ui的使用 1、引入maven依赖 <dependency><groupId>io.springfox</grou…

如何做好流量经营?数字化系统如何加速流量增长

​在用户转化策略上&#xff0c;从“公域流量”到“私域流量”的来源转变&#xff0c;充分说明企业已经意识到公域流量存在成本高、粘度差、稳定性差等问题&#xff0c;开始寻求拥有更低成本、更容易培养忠实度、更容易精准触达的私域流量。但由于企业缺少整体、系统化的私域经…

(AcWing) 900. 整数划分 (计数DP)

一个正整数 n 可以表示成若干个正整数之和&#xff0c;形如&#xff1a;nn1n2…nk&#xff0c;其中 n1≥n2≥…≥nk,k≥1。 我们将这样的一种表示称为正整数 n 的一种划分。 现在给定一个正整数 n&#xff0c;请你求出 n 共有多少种不同的划分方法。 输入格式 共一行&#…

问题:fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached

问题&#xff1a;fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached 解决办法&#xff1a; 1. 新建一个文本文档并命名为XXX.json 2. 打开这个文本文档&#xff0c;复制下面内容保存 {"browsers": {"chrome": ["Mozill…

2023 年如何将您的应用提交到 App Store

您夜以继日地工作来创建您的梦想应用程序。最后&#xff0c;是时候向全世界宣布您的应用程序了。但不知道如何将您的应用提交到 App Store&#xff1f; 为您的商店获取现成的移动应用程序 将应用程序提交到 App Store 可能是一项复杂的任务。但在本指南的帮助下&#xff0c;事…

Monitor.Analog高温老化箱系统操作指南

高温老化室参数设置通常包括以下几个方面&#xff1a; 1.客户信息设置&#xff1a;每个柜子可能老化的产品不 同&#xff0c;客户信息也不一样&#xff0c;通过设置客户信息来标识。 2. 产品设置&#xff1a;根据老化物品的需求&#xff0c;设置老化房的产品类型。通常情况下&…

ElasticSearch常用方法

ElasticSearch:是一个储存、检索、数据分析引擎。 在互联网项目中我们经常会按一定的条件去索引我们指定的数据&#xff0c;但是在大量的数据中我们如果直接查询数据库效率是非常低的&#xff0c;ElasticSearch就可以很好的帮我们完成检索。 es封装了api提供给我我们直接操作…

建筑行业,工地管理有多简单?教你一招

智慧工地的出现&#xff0c;让我们能够实时洞察工地内的各个细节&#xff0c;无论是设备运转状态、工人位置&#xff0c;还是材料运输情况&#xff0c;一切都能通过传感器和互联技术汇聚到中央控制系统。这意味着管理人员可以更加高效地监督和调整工作流程&#xff0c;从而提升…

如何批量在图片名称前加相同的数字?

如何批量在图片名称前加相同的数字&#xff1f;如果平时喜欢拍摄美景&#xff0c;那么将拍摄的照片转移到电脑上保存是最好的选择&#xff0c;因为我们的手机或者相机的存储能力都是有限的&#xff0c;而电脑保存照片会更加的安全。因此时间久了我们的电脑中就会有很多的图片&a…

LAMP架构详解+构建LAMP平台之Discuz论坛

L A M P 一、LAMP架构简介1.1 LAMP架构的组成1.2 LAMP各组件的主要作用1.3 LAMP工作过程1.4 CGI和fastcgi 二、搭建Discuz论坛的思路三、编译安装Apache httpd3.1 前置准备3.2 移动apr包 apr-util包到安装目录中&#xff0c;并切换到 httpd-2.4.29目录中3.3 编译安装3.4 建立软…