OpenWrt 一键扩容

简介: 本教程提供OpenWrt x86平台根分区扩容方案,支持ext4/squashfs。含一键脚本自动执行(下载+配置+重启调整)及完整手动部署步骤,涵盖分区重调、文件系统扩展与升级持久化配置,操作安全可靠。

前言
网上扩容教程千千万,不如官方一根毛,一键脚本
前提得是 「x86」,ext4 或者 squashfs 都行
实操
自动化

安装软件包

opkg update
opkg install parted losetup resize2fs blkid

下载 expand-root.sh

wget -U "" -O expand-root.sh "https://openwrt.org/_export/code/docs/guide-user/advanced/expand_root?codeblock=0"

执行脚本(创建 /etc/uci-defaults/70-rootpt-resize 和 /etc/uci-defaults/80-rootpt-resize 文件,并将它们添加到 /etc/sysupgrade.conf 文件中,以便在系统升级后重新运行)

. ./expand-root.sh

调整根分区和文件系统大小(将调整分区大小,重启,调整文件系统大小,然后再次重启)

sh /etc/uci-defaults/70-rootpt-resize
手动
手动安装脚本(复制粘贴)

配置启动脚本

cat << "EOF" > /etc/uci-defaults/70-rootpt-resize
if [ ! -e /etc/rootpt-resize ] \
&& type parted > /dev/null \
&& lock -n /var/lock/root-resize
then
ROOT_BLK="$(readlink -f /sys/dev/block/"$(awk -e \
'$9=="/dev/root"{print $3}' /proc/self/mountinfo)")"
ROOT_DISK="/dev/$(basename "${ROOT_BLK%/}")"
ROOT_PART="${ROOT_BLK##
[^0-9]}"
parted -f -s "${ROOT_DISK}" \
resizepart "${ROOT_PART}" 100%
mount_root done
touch /etc/rootpt-resize

if [ -e /boot/cmdline.txt ]
then
NEW_UUID=blkid ${ROOT_DISK}p${ROOT_PART} | sed -n 's/.*PARTUUID="\([^"]*\)".*/\1/p'
sed -i "s/PARTUUID=[^ ]*/PARTUUID=${NEW_UUID}/" /boot/cmdline.txt
fi

reboot
fi
exit 1
EOF
cat << "EOF" > /etc/uci-defaults/80-rootfs-resize
if [ ! -e /etc/rootfs-resize ] \
&& [ -e /etc/rootpt-resize ] \
&& type losetup > /dev/null \
&& type resize2fs > /dev/null \
&& lock -n /var/lock/root-resize
then
ROOT_BLK="$(readlink -f /sys/dev/block/"$(awk -e \
'$9=="/dev/root"{print $3}' /proc/self/mountinfo)")"
ROOT_DEV="/dev/${ROOT_BLK##*/}"
LOOP_DEV="$(awk -e '$5=="/overlay"{print $9}' \
/proc/self/mountinfo)"
if [ -z "${LOOP_DEV}" ]
then
LOOP_DEV="$(losetup -f)"
losetup "${LOOP_DEV}" "${ROOT_DEV}"
fi
resize2fs -f "${LOOP_DEV}"
mount_root done
touch /etc/rootfs-resize
reboot
fi
exit 1
EOF
cat << "EOF" >> /etc/sysupgrade.conf
/etc/uci-defaults/70-rootpt-resize
/etc/uci-defaults/80-rootfs-resize
EOF
然后执行

安装软件包

opkg update
opkg install parted losetup resize2fs blkid

扩展根分区 / 文件系统

sh /etc/uci-defaults/70-rootpt-resize

相关文章
|
存储 网络协议 网络安全
OpenWrt挂载U盘安装并配置Adguard Home
随着网络生活的日益丰富,广告成为了上网过程中不可避免的一部分。然而,过多的广告不仅会影响上网体验,还可能包含恶意代码,对全构成威胁。为了解决这一问题,许多用户选择使用去广告软件,其中Adguard Home便是一个广受欢迎的选择。
2233 0
|
Shell 网络安全 数据安全/隐私保护
|
7月前
|
存储 应用服务中间件 nginx
Nginx设置只允许Cloudflare IP访问后获取真实访客IP
本方案通过Nginx `map`指令智能识别真实访客IP:优先取`X-Forwarded-For`首IP,回退至`CF-Connecting-IP`,配合Cloudflare IP白名单,精准记录源IP,日志格式可定制,安全性与准确性兼备。(239字)
491 4
|
网络协议 网络安全
openWRT软路由AdGuardHome 未运行 未重定向无法更新核心解决办法
openWRT软路由AdGuardHome 未运行 未重定向无法更新核心解决办法
18848 0
|
7月前
|
机器学习/深度学习 人工智能 JSON
AI 术语满天飞?90% 的人只懂名词,不懂为什么!
本文不堆砌概念,只讲前因后果:从大模型底层逻辑,到 Context、RAG、Function Calling、MCP、Skills 的核心关联,拆解所有面试高频考点,让你告别 “名词解释”,吃透原理,面试直接碾压面试官!
1878 7
AI 术语满天飞?90% 的人只懂名词,不懂为什么!
|
编解码 网络协议 网络安全
OpenWrt x86 虚拟机VMware ESXi安装
OpenWrt x86 虚拟机VMware ESXi安装
|
6月前
|
存储 Linux 数据安全/隐私保护
自建私人云盘|OpenList 保姆级部署,吊打各大网盘
OpenList是开源网盘聚合工具,支持阿里云盘、百度网盘、夸克等数十种存储服务。一键Docker部署,统一管理多网盘文件,视频直链播放不耗服务器带宽,隐私安全有保障。(239字)
|
监控 安全 Unix
OPNsense 25.7 - 基于 FreeBSD 的开源防火墙和路由平台
OPNsense 25.7 - 基于 FreeBSD 的开源防火墙和路由平台
1709 0
OPNsense 25.7 - 基于 FreeBSD 的开源防火墙和路由平台

热门文章

最新文章