✿ 四舍一居 头像

消息来源频道

✿ 四舍一居

@tanuki_project

频道608 位成员公开可见0 人在线

活在当下 交流群:@tanuki_group 图频道:@tanuki_photos

成员规模608 位成员
在线情况0 人在线
消息总数15,383 条消息
浏览量总数238,488 次浏览

在这个频道里搜索消息……

t.me/tanuki_project


# 获取操作信息
TIMESTAMP=$(date '+%Y-%m-%d %H:%M:%S')
OPERATOR_IP="${SSH_CLIENT%% *}"
[ -z "$OPERATOR_IP" ] && OPERATOR_IP="localhost"
SESSION_ID=$(date +%s%N)
# 获取操作人信息
LOGIN_TYPE="unknown"
if [ -n "$SSH_TTY" ]; then
AUTH_LOG=$(grep "Accepted" /var/log/secure | tail -n 1)
if [[ $AUTH_LOG == "Accepted publickey" ]]; then
LOGIN_TYPE="key_login"
KEY_COMMENT=$(who am i | awk '{print $1}')
OPERATOR="${USER}(${KEY_COMMENT})"
else
LOGIN_TYPE="password_login"
OPERATOR="${USER}"
fi
else
OPERATOR="${USER}"
fi
# 记录恢复信息的函数
log_restore_info() {
local action=$1
local details=$2
echo "${TIMESTAMP}|restore_${action}|${SESSION_ID}|${OPERATOR}|${OPERATOR_IP}|${details}" >> "$RESTORE_LOG"
}
# 检查参数
if [ -z "$BACKUP_FILE" ]; then
echo "请指定备份文件路径"
echo "用法: $0 /path/to/backup_20241230.tar.gz"
exit 1
fi
# 记录开始信息
log_restore_info "init" "Backup file: ${BACKUP_FILE}"
# 第一次确认
read -p "是否确认要执行恢复操作?(输入 'yes' 继续): " confirm1
if [ "$confirm1" != "yes" ]; then
log_restore_info "cancelled" "First confirmation failed"
exit 1
fi
log_restore_info "confirm1" "Confirmed"
# 第二次确认
read -p "再次确认是否要继续?(输入 'confirm' 继续): " confirm2
if [ "$confirm2" != "confirm" ]; then
log_restore_info "cancelled" "Second confirmation failed"
exit 1
fi
log_restore_info "confirm2" "Confirmed"
# 第三次确认
read -p "最后一次确认,是否要执行恢复?(输入 'I understand' 继续): " confirm3
if [ "$confirm3" != "I understand" ]; then
log_restore_info "cancelled" "Third confirmation failed"
exit 1
fi
log_restore_info "confirm3" "Confirmed"
# 开始恢复过程
log_restore_info "start" "Starting restoration process"
让我看看究竟是哪个大聪明搁这乱触发脚本。