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

相关文章
|
2月前
|
机器学习/深度学习 人工智能 JSON
AI 术语满天飞?90% 的人只懂名词,不懂为什么!
本文不堆砌概念,只讲前因后果:从大模型底层逻辑,到 Context、RAG、Function Calling、MCP、Skills 的核心关联,拆解所有面试高频考点,让你告别 “名词解释”,吃透原理,面试直接碾压面试官!
1415 7
AI 术语满天飞?90% 的人只懂名词,不懂为什么!
|
1月前
|
存储 Linux 数据安全/隐私保护
自建私人云盘|OpenList 保姆级部署,吊打各大网盘
OpenList是开源网盘聚合工具,支持阿里云盘、百度网盘、夸克等数十种存储服务。一键Docker部署,统一管理多网盘文件,视频直链播放不耗服务器带宽,隐私安全有保障。(239字)
|
网络协议 Linux Android开发
告别无法访问的github(附解决方案)
最近一行在使用github的时候又登不上去了,挂着NPV都没用 据说是某些不可描述的有关组织机构对该网站的DNS污染或者随机丢包造成的
24662 5
告别无法访问的github(附解决方案)
|
10月前
|
编解码 网络协议 网络安全
OpenWrt x86 虚拟机VMware ESXi安装
OpenWrt x86 虚拟机VMware ESXi安装
|
2月前
|
人工智能 Linux API
保姆级OpenClaw(Clawdbot)部署手册:阿里云一键部署、本地部署、百炼API配置与避坑指南
OpenClaw(曾用名Clawdbot/Moltbot)是一款面向任务自动化与工具调用的开源AI智能体框架,支持通过自然语言完成文件处理、代码编写、数据分析、系统管理、信息检索等自动化操作,可在云端与本地环境稳定运行。2026年版本进一步优化了部署流程、模型兼容与国内网络适配,尤其完善了对阿里云轻量服务器与阿里云百炼大模型的原生支持。本文基于2026年最新版本,提供**零基础可直接复制执行**的阿里云部署、本地部署、阿里云百炼API配置流程,附带完整代码命令、服务管理指令与高频问题解决方案,不涉及其他云平台信息,满足新手快速搭建与稳定使用需求。
1324 2