This commit is contained in:
spiritlhl 2023-06-23 13:31:25 +00:00
parent 908693ff48
commit 5153b0c035
2 changed files with 24 additions and 12 deletions

View file

@ -4,7 +4,6 @@
待开发内容:
- 部分机器ifudown2安装有问题原因在于PVE的MAC地址自动绑定错误待修复
- 创建带IPV6独立地址的VM虚拟机或CT容器
- KVM模板加载部分自定义的限制避免机器用于滥用发包
- 增加arm64架构的一键安装功能
@ -16,6 +15,7 @@
- 网关配置修改使用新结构,以便于适配大多数机器
- 调整安装的流程,升级软件包后需要重启一次系统,详见脚本的运行提示
- 解决了ifudown2的安装问题支持在更多商家的服务器上安装
[更新日志](CHANGELOG.md)

View file

@ -25,9 +25,9 @@ temp_file_apt_fix="/tmp/apt_fix.txt"
remove_duplicate_lines() {
chattr -i "$1"
# 去除重复行并跳过空行
# 去除重复行并跳过空行和注释行
if [ -f "$1" ]; then
awk '!NF || !x[$0]++' "$1" > "$1.tmp" && mv -f "$1.tmp" "$1"
awk '!/^ *#/ && NF && !x[$0]++' "$1" > "$1.tmp" && mv -f "$1.tmp" "$1"
fi
rm -rf "$1.tmp"
chattr +i "$1"
@ -88,12 +88,16 @@ rebuild_interfaces(){
if [ ! -e /run/network/interfaces.d/* ]; then
if [ -f "/etc/network/interfaces" ]; then
chattr -i /etc/network/interfaces
if ! grep -q "^#.*source-directory \/run\/network\/interfaces\.d" /etc/network/interfaces; then
sed -i '/source-directory \/run\/network\/interfaces.d/s/^/#/' /etc/network/interfaces
fi
chattr +i /etc/network/interfaces
fi
if [ -f "/etc/network/interfaces.new" ]; then
chattr -i /etc/network/interfaces.new
if ! grep -q "^#.*source-directory \/run\/network\/interfaces\.d" /etc/network/interfaces.new; then
sed -i '/source-directory \/run\/network\/interfaces.d/s/^/#/' /etc/network/interfaces.new
fi
chattr +i /etc/network/interfaces.new
fi
fi
@ -116,14 +120,22 @@ fi
# 去除引用
if [ -f "/etc/network/interfaces" ]; then
chattr -i /etc/network/interfaces
if ! grep -q '^#source \/etc\/network\/interfaces\.d\/' "/etc/network/interfaces"; then
sed -i '/^source \/etc\/network\/interfaces\.d\// { /^#/! s/^/#/ }' "/etc/network/interfaces"
fi
if ! grep -q '^#source-directory \/etc\/network\/interfaces\.d' "/etc/network/interfaces"; then
sed -i 's/^source-directory \/etc\/network\/interfaces\.d/#source-directory \/etc\/network\/interfaces.d/' "/etc/network/interfaces"
fi
chattr +i /etc/network/interfaces
fi
if [ -f "/etc/network/interfaces.new" ]; then
chattr -i /etc/network/interfaces.new
if ! grep -q '^#source \/etc\/network\/interfaces\.d\/' "/etc/network/interfaces.new"; then
sed -i '/^source \/etc\/network\/interfaces\.d\// { /^#/! s/^/#/ }' "/etc/network/interfaces.new"
fi
if ! grep -q '^#source-directory \/etc\/network\/interfaces\.d' "/etc/network/interfaces.new"; then
sed -i 's/^source-directory \/etc\/network\/interfaces\.d/#source-directory \/etc\/network\/interfaces.d/' "/etc/network/interfaces.new"
fi
chattr +i /etc/network/interfaces.new
fi
# 反加载