7 Commits

2 changed files with 44 additions and 2 deletions
+31
View File
@@ -0,0 +1,31 @@
#!/bin/sh
# 仅在首次启动时执行(/etc/uci-defaults机制)
SSHD_CONF="/etc/ssh/sshd_config"
# 如果 sshd 配置文件存在,则修改配置
if [ -f "$SSHD_CONF" ]; then
# 允许 root 远程登录
if grep -q "^#*PermitRootLogin" "$SSHD_CONF"; then
sed -i 's/^#*PermitRootLogin.*/PermitRootLogin yes/' "$SSHD_CONF"
else
echo "PermitRootLogin yes" >> "$SSHD_CONF"
fi
# 允许密码登录
if grep -q "^#*PasswordAuthentication" "$SSHD_CONF"; then
sed -i 's/^#*PasswordAuthentication.*/PasswordAuthentication yes/' "$SSHD_CONF"
else
echo "PasswordAuthentication yes" >> "$SSHD_CONF"
fi
fi
# 重启 OpenSSH 服务(如果已安装)
if [ -x /etc/init.d/sshd ]; then
/etc/init.d/sshd enable
/etc/init.d/sshd restart
fi
exit 0
+13 -2
View File
@@ -66,6 +66,11 @@ build(){
# ────────────────────────────────────────────
EXTRA_IMAGE_NAME=""
# ────────────────────────────────────────────
# 根分区大小(单位:MB),留空则使用 imagebuilder 默认值
# ────────────────────────────────────────────
ROOTFS_PARTSIZE="${2:-}"
# =============================================================
# 插件包列表
# - 前面加 - 表示从固件中移除该包,例如 -dnsmasq
@@ -77,6 +82,8 @@ build(){
openssh-sftp-server
vim-full
nano-plus
bash
shadow-chsh
luci-i18n-vlmcsd-zh-cn
luci-i18n-argon-config-zh-cn
luci-i18n-package-manager-zh-cn
@@ -127,6 +134,9 @@ build(){
# 切换到 Image Builder 目录
cd "$BUILDER_DIR"
# 复制 files 目录下的自定义文件到 Image Builder 的 files 目录
cp ${SCRIPT_DIR}/files/* $BUILDER_DIR/files/ -rf
# 修改.config文件, 不构建以下格式固件
sed -i \
-e 's/^CONFIG_ISO_IMAGES=y/# CONFIG_ISO_IMAGES is not set/' \
@@ -157,7 +167,8 @@ build(){
PACKAGES="$PACKAGES" \
FILES="$FILES_DIR" \
BIN_DIR="$OUTPUT_DIR" \
EXTRA_IMAGE_NAME="$EXTRA_IMAGE_NAME"
EXTRA_IMAGE_NAME="$EXTRA_IMAGE_NAME" \
${ROOTFS_PARTSIZE:+ROOTFS_PARTSIZE="$ROOTFS_PARTSIZE"} # ROOTFS_PARTSIZE 参数不为空才添加
# 构建结果判断
if [ $? -eq 0 ]; then
@@ -212,4 +223,4 @@ install_dependencies
builder_dir="$(download_imagebuilder "$version")"
# 构建固件
build $builder_dir
build $builder_dir 500 # 500 表示根分区大小为 500MB