iStoreOS,新增备份系统教程

一、写盘。

本文主要是x86物理机安装教程(因为物理机才能获取到温度等硬件信息),esxi下安装也很简单,跟安装任何openwrt一样,先转成vmdk文件,添加现有硬盘即可。

我们继续物理机安装教程,首先,用balenaEtcher工具将gz安装包写入U盘,必须要这么做

  • 如果用ventoy来加载,会出现在install x86时候提示root not found的错误,估计是找不到内置硬盘而报错。
  • 如果直接写入固态硬盘,则可能在启动时会加载失败。

所以,请务必写入普通的U盘。

二、接入主机。

将U盘插入小主机,同时将内置硬盘也接入小主机。

三、启动。

  1. 设置U盘启动,跑码完成后,输入quickstart,先修改lan端口为192.168.x.1(当然你也可以不设置,默认是192.168.100.1)。
  2. 然后在另一台相同网段的主机上,打开浏览器,输入前面设置的192.168.x.1(务必将网线接在工控机的eth1-3口,默认eth0是wan口),输入默认的账号密码(root/password),进入openwrt后台,记得改密码。

四、初始化设置。

进行一系列必要的初始化配置,此时的配置全部会保存在U盘上:

  • 配置WAN
  • 配置LAN
  • 配置网络-防火墙、端口转发、自定义规则等
  • 配置主机名映射(如有需要的话)
  • 配置系统-计划任务(如有需要的话)

五、克隆系统。

iStoreOS,新增备份系统教程
  1. 从U盘克隆配置好的系统到内置硬盘。ps:在克隆之前,务必到系统-备份/升级中生成一个备份,以防万一。
  2. 回到小主机的跑码界面,在quickstart菜单中,选择install x86,一路下一步即可,经过几分钟的等待,记得在黑屏重启的时候拔走u盘,此时重启后应该就会自动加载内置硬盘里克隆好的系统了,从web端检查无误后,接入wan口网线到eth0。

六、网络验证。

确保拨号、联网一切正常。

七、额外配置。

如果开机后联网正常,直接进系统后台,开始按需安装插件并配置,可以选择手动安装,也可以选择在官方的iStore里安装。这个步骤多半要联网,请确保上述配置都ok了再进行:

  • 配置动态DNS
  • 手动安装一些特殊插件
  • 到iStore里安装DDNS.to
  • 到iStore里安装全能推送pushbot
  • 手动安装VPN-openvpn server
最后,一定记得都弄好后,到系统-备份/升级中生成一个备份,以防万一。

iStoreOS经过这么久的打磨,相比于去年的时候,有着明显的进步,而且我还发现他们商店里还有一个新手ui插件,这新手后台简直就是主流路由器的后台,太友好了,不过不适合我,哈哈。

iStoreOS,新增备份系统教程
iStoreOS,新增备份系统教程

共享smb给其他设备访问

1、首页上查看需要共享的分区的路径,拷贝待用。

iStoreOS,新增备份系统教程

2、进入服务-网络共享-共享目录,将刚才复制的路径添加,切记勾选强制root。

iStoreOS,新增备份系统教程

3、保存并应用后,在windows或者mac上用smb方式访问即可,选择访客。


备份系统

1、先到软件包里安装一个dd进度条插件:coreutils-dd,安装之前记得点击更新列表

iStoreOS,新增备份系统教程

2、运行fdisk -l查看下目前分区情况,一般系统就在sda1、sda2、sda3这三个分区,观察下面红框内部分。

iStoreOS,新增备份系统教程

3、运行备份指令,其中,

  • if是要备份的分区名称
  • of是备份后的文件路径,如我这里备份到/mnt/sda4/backups/下,文件名为J3455-iStoreOS_时间戳.img,建议文件名带上当前备份的时间方便查看。
  • bs是要备份的分区的起点,也就是上面截图里的红框部分;count是终点,记得要+1,对比红框部分与下面代码部分
  • status=progress就是加载进度条,也就是用到最开始安装的那个coreutils-dd插件。
dd if=/dev/sda of=/mnt/sda4/backups/J3455-iStoreOS_$(date +%Y%m%d).img bs=512 count=4982272 status=progress

4、进度条结束后就能看到在/mnt/sda4/backups有了J3455-iStoreOS_20221016.img文件,可以对文件进行压缩,输入:

gzip -k J3455-iStoreOS_20221016.img
iStoreOS,新增备份系统教程
smb访问可见两个备份文件

这里也可以直接执行备份并压缩:

dd if=/dev/sda bs=512 count=4982272 status=progress | gzip >/mnt/sda4/backups/J3455-iStoreOS_$(date +%Y%m%d).img.gz

5、未来就可以直接用这个img文件按照最开始部署的方式写盘,完美还原整个系统。

6、同时,可以远程备份到其他服务器以留存,带端口的加上 -P ,P大写。

scp -P [远程服务器端口号] J3455-iStoreOS_20221016.img.gz [远程服务器用户名]@[远程服务器ip:[远程服务器目录]

进阶玩法:直接在定时任务里添加任务,实现定时自动备份、打包、压缩并上传到远程服务器留存。sh脚本文件如下,可复制内容保存为backup_scp_j3455.sh文件:

# 当前时间变量
DATE=`date +%Y%m%d`
# 文件夹路径
bakDir=/mnt/sda4/backups
# 远程服务器用户名
remoteUser=[远程服务器用户名]
# 远程服务器存储路径
remoteDir=[远程服务器目录]

# 日志文件
logFile=${bakDir}/${DATE}.log
# 压缩文件
gzFile=${bakDir}/j3455-iStoreOS_${DATE}.img.gz

# 创建备份文件夹目录
mkdir -p ${bakDir}

echo "================================================" >> ${logFile}
echo "==========  开始执行任务 begin:$(date +"%Y-%m-%d %H:%M:%S")  ==========" >> ${logFile}
echo "================================================" >> ${logFile}

echo "" >> ${logFile}

# 执行备份并写入日志
echo ">>>>>>>>  开始备份 begin:$(date +"%Y-%m-%d %H:%M:%S")  >>>>>>>>" >> ${logFile}
# 打开当前日期的备份目录
cd ${bakDir}
echo "1.打开${bakDir}:$(date +"%Y-%m-%d %H:%M:%S")" >> ${logFile}
# 备份、打包并压缩,同时写入日志
echo "2.备份、打包并压缩,同时写入日志:$(date +"%Y-%m-%d %H:%M:%S")" >> ${logFile}
dd if=/dev/sda bs=512 count=4982272 | gzip >${gzFile} 2>>${logFile}
echo "<<<<<<<  结束备份并打包压缩 end:$(date +"%Y-%m-%d %H:%M:%S")  <<<<<<<" >> ${logFile}

echo "" >> ${logFile}

# 上传备份文件
echo ">>>>>>>>  开始scp上传文件 begin:$(date +"%Y-%m-%d %H:%M:%S")  >>>>>>>>" >> ${logFile}
sshpass -p [远程服务器密码] scp -P 222 ${gzFile} ${remoteUser}@192.168.31.40:${remoteDir}
echo "<<<<<<<  结束scp上传文件 end:$(date +"%Y-%m-%d %H:%M:%S")  <<<<<<<" >> ${logFile}

echo "" >> ${logFile}
echo "删除本地备份文件:$(date +"%Y-%m-%d %H:%M:%S")" >> ${logFile}
rm -fr ${gzFile}

echo "" >> ${logFile}
echo "================================================" >> ${logFile}
echo "==========  结束所有任务 end:$(date +"%Y-%m-%d %H:%M:%S")  ==========" >> ${logFile}
echo "================================================" >> ${logFile}

到iStoreOS后台,进入计划任务,加上指令,保存即可。(例如我这里是每周二6点执行一次)

0 6 * * 2 [shell脚本所在目录]/backup_scp_j3455.sh

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/7862

(0)
杰斯的头像杰斯
上一篇 2023年4月4日 下午3:53
下一篇 2023年4月6日 下午3:55

相关推荐

  • Prometheus 通过 consul 实现自动服务发现

    1、Consul 安装配置 Consul 安装很方便,官网 提供各个系统版本二进制安装包,解压安装即可,同时也可以通过 Docker 来快速安装。 1.1、源码安装 以 Linux 系统为例,源码安装并以开发模式启动一个单节点,下载最新版二进制安装包,解压启动即可。 启动完毕后,浏览器访问 http://127.0.0.1:8500 地址,即可打开 Cons…

    2023年8月7日
    21300
  • 交换机密码忘了,肿么办?

    作为网络工程师,还要记住网络设备的密码。举个栗子,交换机有 BOOT 密码、Console 口密码、Telnet 密码、SSH 密码和 Web 登录密码。假如忘记了交换机的某个密码,该肿么办呢? 1、忘记 Web 登录密码 如果忘记了 Web 登录密码,可以通过 Console 口、Telnet 或 SSH 登录交换机,设置新的 Web 登录密码。比如:We…

    2023年12月14日
    22500
  • iptables与firewalld的区别

    iptables与firewalld的区别 firewalld可以动态修改单条规则,动态管理规则集,允许更新规则而不破坏现有会话和连接。而iptables,在修改了规则后必须得全部刷新才可以生效; firewalld使用区域和服务而不是链式规则; firewalld默认是拒绝的,需要设置以后才能放行。而iptables默认是允许的,需要拒绝的才去限制; fi…

    2022年8月9日
    51200
  • 一分钟解决打不开网页的故障

    做IT外包N多年了,每天就是面对各种大大小小的报修,有些小事,也算值得一记,分享给各位。 本文讲述的是一个非常多见的问题——微信和QQ能正常收发消息,但是所有网页都打不开,这个问题具有一定的普遍性和高发性,所以,我也是再一次地发文讲述 客户报修给技术小伙,他当时正开车,就直接转发给我了,我一看这种问题,大概率就是DNS的问题,与其我再安排别的技术小伙,还不如…

    6天前
    4300
  • Traceroute(路由追踪)的原理及实现

    现实世界中的网络是由无数的计算机和路由器组成的一张的大网,应用的数据包在发送到服务器之前都要经过层层的路由转发。而Traceroute是一种常规的网络分析工具,用来定位到目标主机之间的所有路由器 原理 在介绍Traceroute的原理之前,需要了解几个技术名词: 具体到traceroute的实现细节上,有两种不同的方案: 基于UDP实现 在基于UDP的实现中…

    2023年4月12日
    28500

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信