一点建议:

为了提高系统镜像的安全性,你可以考虑在镜像中包含以下安全工具:

Firewalld:动态防火墙管理工具。
Fail2Ban:防范暴力破解攻击的工具。
ClamAV:开源的病毒扫描工具。
Snort:网络入侵检测和防御系统。

自动化创建镜像脚本

#!/bin/bash

# 确保脚本以root权限运行
if [ "$(id -u)" != "0" ]; then
   echo "该脚本必须以root权限运行" 1>&2
   exit 1
fi

# 定义镜像文件的名称和路径
IMAGE_NAME="system_image.img"
IMAGE_PATH="./$IMAGE_NAME"

# 定义系统磁盘设备,这里假设是/dev/sda
DISK_DEVICE="/dev/sda"

# 显示脚本将要执行的操作
echo "开始创建系统镜像..."
echo "镜像将被保存到: $IMAGE_PATH"

# 使用dd命令创建镜像
# 注意: bs=4M 是块大小,可以根据需要调整
# 注意: 这个操作可能需要一些时间,取决于磁盘的大小
dd if=$DISK_DEVICE of=$IMAGE_PATH bs=4M status=progress conv=noerror,sync

# 检查dd命令是否成功执行
if [ $? -eq 0 ]; then
    echo "镜像创建成功!"
else
    echo "镜像创建失败!" 1>&2
    exit 1
fi

# 镜像文件现在已经保存在当前目录下
echo "镜像文件已保存到: $IMAGE_PATH"

自动化恢复镜像脚本

#!/bin/bash

# 确保脚本以root权限运行
if [ "$(id -u)" != "0" ]; then
   echo "该脚本必须以root权限运行" 1>&2
   exit 1
fi

# 定义镜像文件的名称和路径
IMAGE_NAME="system_image.img"
IMAGE_PATH="./mnt/mmc1/$IMAGE_NAME"

# 定义目标磁盘设备,这里假设是/dev/mmcblk0
# 注意:确保这是正确的设备,因为此操作将覆盖该设备上的所有数据!
TARGET_DEVICE="/dev/mmcblk0"

# 显示脚本将要执行的操作
echo "开始恢复系统镜像..."
echo "镜像将从: $IMAGE_PATH 恢复到: $TARGET_DEVICE"

# 使用dd命令恢复镜像
# 注意: bs=4M 是块大小,与创建镜像时保持一致
# 注意: 这个操作可能需要一些时间,取决于磁盘的大小
# 使用sync选项确保数据完整写入磁盘
dd if=$IMAGE_PATH of=$TARGET_DEVICE bs=4M status=progress conv=noerror,sync

# 检查dd命令是否成功执行
if [ $? -eq 0 ]; then
    echo "镜像恢复成功!"
    # 通常情况下,恢复完成后需要重启系统以应用新的镜像
    echo "建议重启系统以应用恢复的镜像。"
else
    echo "镜像恢复失败!" 1>&2
    exit 1
fi

 

 

 

文章信息

创建时间
2024-12-06
作者
郭铭心
是否所有人可见
所有人可见
最后修改日期
2024-12-06
点击数
93
标签