pve/build_backend.sh
2023-02-23 21:13:06 +08:00

77 lines
2.3 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
#from https://github.com/spiritLHLS/pve
# 打印信息
_red() { echo -e "\033[31m\033[01m$@\033[0m"; }
_green() { echo -e "\033[32m\033[01m$@\033[0m"; }
_yellow() { echo -e "\033[33m\033[01m$@\033[0m"; }
_blue() { echo -e "\033[36m\033[01m$@\033[0m"; }
# 创建资源池
_green "正在创建资源池 mypool..."
pvesh create /pools --poolid mypool
_green "资源池 mypool 已创建!"
# 创建网桥
# # 选择桥接接口的标准
# bridge_interface_pattern="eth*"
# interfaces=($(ls /sys/class/net))
# for interface in ${interfaces[@]}; do
# if [[ $interface != "lo" ]] && [[ $interface =~ $bridge_interface_pattern ]]; then
# bridge_ports="$interface"
# break
# fi
# done
# if [[ -z $bridge_ports ]]; then
# echo "错误:找不到可用网络接口"
# exit 1
# fi
# ipv4_address="192.168.1.1"
# ipv4_netmask="255.255.255.0"
# ipv6_address=$(ip -6 addr show dev $bridge_ports | awk '/inet6/{print $2;exit}' | cut -d'/' -f1)
# ipv6_netmask=$(ip -6 addr show dev $bridge_ports | awk '/inet6/{print $4;exit}' | cut -d'/' -f1)
# cat <<EOF > /etc/network/interfaces.d/vmbr1.cfg
# auto vmbr1
# iface vmbr1 inet static
# address $ipv4_address
# netmask $ipv4_netmask
# bridge_ports $bridge_ports
# bridge_stp off
# bridge_fd 0
# iface vmbr1 inet6 static
# address $ipv6_address
# netmask $ipv6_netmask
# EOF
# if grep -q "iface vmbr1" /etc/network/interfaces; then
# echo "网桥 vmbr1 已经在 Proxmox VE 配置中"
# else
# # 添加到配置文件
# cat <<EOF >> /etc/network/interfaces
# # Proxmox VE bridge vmbr1
# iface vmbr1 inet manual
# bridge-ports $bridge_ports
# bridge-stp off
# bridge-fd 0
# EOF
# fi
# systemctl restart networking.service
# echo "网桥 vmbr1 已创建!"
# 检测AppArmor模块
if ! dpkg -s apparmor > /dev/null 2>&1; then
_green "正在安装 AppArmor..."
apt-get update
apt-get install -y apparmor
fi
if ! systemctl is-active --quiet apparmor.service; then
_green "启动 AppArmor 服务..."
systemctl enable apparmor.service
systemctl start apparmor.service
fi
if ! lsmod | grep -q apparmor; then
_green "正在加载 AppArmor 内核模块..."
modprobe apparmor
fi
if ! lsmod | grep -q apparmor; then
_yellow "AppArmor 仍未加载可能需要重新启动系统加载但你可以在面板尝试创建并启动CT"
fi