feat: 增加交互式修改lan口ip功能

This commit is contained in:
Olia Lisa
2026-07-22 18:37:36 +08:00
parent c1e72bba9a
commit bc0c518947
5 changed files with 85 additions and 11 deletions
+20 -1
View File
@@ -72,6 +72,11 @@ build(){
# =============================================================
ROOTFS_PARTSIZE="${2:-}"
# ────────────────────────────────────────────
# lan口ip
# ────────────────────────────────────────────
LAN_IP=${3}
# =============================================================
# 插件包列表
# - 前面加 - 表示从固件中移除该包,例如 -dnsmasq
@@ -128,6 +133,15 @@ build(){
cd "$BUILDER_DIR"
# 如果存在 LAN IP 设置脚本,则修改默认 LAN 地址
LAN_SETTING_FILE="${SCRIPT_DIR}/files/etc/uci-defaults/98-network-setting"
if [ -e "$LAN_SETTING_FILE" ]; then
# 根据用户输入的 LAN_IP 修改默认 IP
sed -i \
"s/^update_lan_ip .*/update_lan_ip ${LAN_IP}/" \
"$LAN_SETTING_FILE"
fi
mkdir -p "$FILES_DIR"
# 复制 files 目录下的自定义文件到 Image Builder 的 files 目录
if [ -d "${SCRIPT_DIR}/files" ]; then
@@ -137,6 +151,7 @@ build(){
echo -e "${YELLOW}[提示] 未找到自定义 files/ 目录,跳过复制${NC}"
fi
if [ ! -f "Makefile" ]; then
echo -e "${RED}[错误] 未找到 Makefile,请在 imagebuilder 根目录下运行本脚本!${NC}"
exit 1
@@ -219,8 +234,12 @@ version=$(ask_input "请输入 ImmortalWrt 版本" "$default_version")
default_rootfs_partsize="600"
rootfs_partsize=$(ask_input "请输入根分区大小(MB)" "$default_rootfs_partsize")
# lan口ip
default_lan_ip="192.168.1.1"
lan_ip=$(ask_input "请输入lan口ip" $default_lan_ip)
install_dependencies
builder_dir="$(download_imagebuilder "$version")"
build $builder_dir $rootfs_partsize
build $builder_dir $rootfs_partsize $lan_ip