阿里云香港学生机迁移注意事项
首先感谢 https://loc.xiu.ee/forum.php?mo ... =%E9%98%BF%E9%87%8C 无私分享
其次谢谢 @dole,交易很愉快
从 @dole 那儿收到了台3年的。方式为改账号的密保手机号。
由于账号实名变更需要原实名人扫脸认证,最好还是将机器push到自己的实名账号。
1. push机器需要机器开机满5天
2. push机器需要接收账号有100余额,而不是迁出账号。当然冲错了也无事,可以提现,大约5分钟左右就到账原路返回到充值渠道账号。
3. push机器需要注意接收账号的交换机(即vpc子网)的可用区需要和原机器保持一致
4. 交换机名称不要用特殊符号,例如 / . * 等,否则会引发push ecs 过户失败
5. 迁出前,解绑机器的IPV4 和IPV6 公网IP地址,并回收IP和共享带宽,避免后续产生计费。
6. 迁出后,为了避免流量超限,抄了v2ex的脚本。并修改部分逻辑。阿里云的共享带宽计费选择的是出入取大,即取单向最大值而不是双边相加。脚本如下:
[root@ aliyun-hk-1 /data/scripts]
09:59:12 # cat check_traffic.sh
#!/bin/bash
# 设置网卡名称
INTERFACE="eth0"
# 设置流量限制(单位:GB )
LIMIT=150
# 检查 vnstat 和 jq 是否已安装
if ! command -v vnstat &> /dev/null; then
echo "vnstat 未安装,请安装后重试。"
exit 1
fi
if ! command -v jq &> /dev/null; then
echo "jq 未安装,请安装后重试。"
exit 1
fi
# 检查 bc 是否已安装
if ! command -v bc &> /dev/null; then
echo "bc 未安装,请安装后重试。"
exit 1
fi
# 获取当前流量(单位:KB )
VNSTAT_JSON=$(vnstat -i $INTERFACE --json)
echo "vnstat JSON 输出: $VNSTAT_JSON"
# 使用 jq 解析 JSON 数据获取接收和发送的流量(单位:KB )
RX=$(echo $VNSTAT_JSON | jq -r '.interfaces[0].traffic.total.rx')
TX=$(echo $VNSTAT_JSON | jq -r '.interfaces[0].traffic.total.tx')
# 输出解析结果
echo "接收流量 (RX): $RX KB"
echo "发送流量 (TX): $TX KB"
# 检查 RX 和 TX 是否为有效的数字
if ! [[ $RX =~ ^[0-9]+$ ]] || ! [[ $TX =~ ^[0-9]+$ ]]; then
echo "RX 或 TX 不是有效的数字。"
exit 1
fi
# 计算总流量(单位:GB )
# 判断 RX 和 TX 中较大的值
if [ "$RX" -gt "$TX" ]; then
TOTAL=$(echo "scale=2; $RX / 1024 / 1024 /1024" | bc)
echo "总流量 (TOTAL): $TOTAL GB (基于接收流量)"
else
TOTAL=$(echo "scale=2; $TX / 1024 / 1024 /1024" | bc)
echo "总流量 (TOTAL): $TOTAL GB (基于发送流量)"
fi
# 检查是否超过流量限制
if (( $(echo "$TOTAL >= $LIMIT" | bc -l) )); then
echo "流量限制已超出,执行关机。"
#sudo ip link set $INTERFACE down
init 0
else
echo "当前流量未超出限制。"
fi
[root@ aliyun-hk-1 /data/scripts]
09:59:19 # cat reset_network.sh
#!/bin/bash
# 停止 vnStat 服务
sudo systemctl stop vnstat # 如果使用 systemd 管理服务
# 删除 vnStat 数据库文件(根据需要修改网络接口名称)
sudo rm -f /var/lib/vnstat/* # 删除所有 vnstat 数据库文件
# 重新启动 vnStat 服务
sudo systemctl start vnstat # 如果使用 systemd 管理服务
echo "vnStat 流量统计数据已重置。"
其次谢谢 @dole,交易很愉快
从 @dole 那儿收到了台3年的。方式为改账号的密保手机号。
由于账号实名变更需要原实名人扫脸认证,最好还是将机器push到自己的实名账号。
1. push机器需要机器开机满5天
2. push机器需要接收账号有100余额,而不是迁出账号。当然冲错了也无事,可以提现,大约5分钟左右就到账原路返回到充值渠道账号。
3. push机器需要注意接收账号的交换机(即vpc子网)的可用区需要和原机器保持一致
4. 交换机名称不要用特殊符号,例如 / . * 等,否则会引发push ecs 过户失败
5. 迁出前,解绑机器的IPV4 和IPV6 公网IP地址,并回收IP和共享带宽,避免后续产生计费。
6. 迁出后,为了避免流量超限,抄了v2ex的脚本。并修改部分逻辑。阿里云的共享带宽计费选择的是出入取大,即取单向最大值而不是双边相加。脚本如下:
[root@ aliyun-hk-1 /data/scripts]
09:59:12 # cat check_traffic.sh
#!/bin/bash
# 设置网卡名称
INTERFACE="eth0"
# 设置流量限制(单位:GB )
LIMIT=150
# 检查 vnstat 和 jq 是否已安装
if ! command -v vnstat &> /dev/null; then
echo "vnstat 未安装,请安装后重试。"
exit 1
fi
if ! command -v jq &> /dev/null; then
echo "jq 未安装,请安装后重试。"
exit 1
fi
# 检查 bc 是否已安装
if ! command -v bc &> /dev/null; then
echo "bc 未安装,请安装后重试。"
exit 1
fi
# 获取当前流量(单位:KB )
VNSTAT_JSON=$(vnstat -i $INTERFACE --json)
echo "vnstat JSON 输出: $VNSTAT_JSON"
# 使用 jq 解析 JSON 数据获取接收和发送的流量(单位:KB )
RX=$(echo $VNSTAT_JSON | jq -r '.interfaces[0].traffic.total.rx')
TX=$(echo $VNSTAT_JSON | jq -r '.interfaces[0].traffic.total.tx')
# 输出解析结果
echo "接收流量 (RX): $RX KB"
echo "发送流量 (TX): $TX KB"
# 检查 RX 和 TX 是否为有效的数字
if ! [[ $RX =~ ^[0-9]+$ ]] || ! [[ $TX =~ ^[0-9]+$ ]]; then
echo "RX 或 TX 不是有效的数字。"
exit 1
fi
# 计算总流量(单位:GB )
# 判断 RX 和 TX 中较大的值
if [ "$RX" -gt "$TX" ]; then
TOTAL=$(echo "scale=2; $RX / 1024 / 1024 /1024" | bc)
echo "总流量 (TOTAL): $TOTAL GB (基于接收流量)"
else
TOTAL=$(echo "scale=2; $TX / 1024 / 1024 /1024" | bc)
echo "总流量 (TOTAL): $TOTAL GB (基于发送流量)"
fi
# 检查是否超过流量限制
if (( $(echo "$TOTAL >= $LIMIT" | bc -l) )); then
echo "流量限制已超出,执行关机。"
#sudo ip link set $INTERFACE down
init 0
else
echo "当前流量未超出限制。"
fi
[root@ aliyun-hk-1 /data/scripts]
09:59:19 # cat reset_network.sh
#!/bin/bash
# 停止 vnStat 服务
sudo systemctl stop vnstat # 如果使用 systemd 管理服务
# 删除 vnStat 数据库文件(根据需要修改网络接口名称)
sudo rm -f /var/lib/vnstat/* # 删除所有 vnstat 数据库文件
# 重新启动 vnStat 服务
sudo systemctl start vnstat # 如果使用 systemd 管理服务
echo "vnStat 流量统计数据已重置。"