百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

如何快速迁移服务器?整个Linux打包成ISO镜像,实现快速本地部署

wxin55 2024-11-16 01:34 12 浏览 0 评论

公司业务发展的需要,现需要将我们整个Linux系统整个项目环境打包成ISO镜像

一台可以正常跑项目的服务器

一台新的空的服务器

一款神奇的开源免费故障恢复和备份工具 —— Mondo Rescue

什么是 Mondo Rescue?(这段是网站搜索的)

Mondo Rescue(简称 Mondo):是一款开源免费的故障恢复和备份工具,可以说是 Linux 操作系统下的 Ghost ,你可以轻松地创建系统(Linux 或 Windows)克隆或备份的 ISO 镜像,可以将这些镜像存放在 CD、DVD、磁带、USB 设备、硬盘和 NFS 上。

万一数据丢失了,你将能够可以从备份介质还原系统所有数据或根据实际需求还原所有数据。除此之外,Mondo Rescue 还可用来快速恢复或者重新部署工作镜像到其他系统中。

Mondo 支持 LVM 1/2、RAID、ext 2/3/4、JFS、XFS、ReiserFS、VFAT 等,并且可以轻松支持其他文件系统,支持软件 RAID 和大多数硬件 RAID 控制器,支持磁盘几何形状的调整,包括从非 RAID 到 RAID 的迁移。支持 BIOS 和 UEFI 引导模式。

Mondo 在所有主要的 Linux 发行版(Fedora、RHEL、OpenSUSE、SLES、Mageia、Debian、Ubuntu、Gentoo)上运行,可使用它来备份非 Linux 分区,例如:NTFS。

接下来我们开始上车操作

安装mondorescue

1、下载安装包

你可以根据你的实际系统类型自行去官网下载,由于会有很多依赖关系,也可以通过 yum 的形式安装。

通过这个 http://ftp.mondorescue.org/rhel/ 找到跟自己系统类型一致的下载

命令1: wget ftp://ftp.mondorescue.org/rhel/7/x86_64/mondorescue.repo

进入/etc/yum.repos.d/

命令2:yum install -y mondo

yum 安装过程中,可能会出现如下问题。

"warning: rpmts_HdrFromFdno: Header V3 RSA/SHA256 Signature, key ID fd431d351: NOKEY

解决办法:

# cd /etc/pki/rpm-gpg/

# wget http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7

# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

使用 CentOS 时,会出现如下错误:

warning: rpmts_HdrFromFdno: Header V4 DSA/SHA1 Signature, key ID XXXXXX: NOKEY

解决方案 加上参数--nogpgcheck

yum install -y mondo --nogpgcheck

安装完mondo 开始制作镜像

以 root 为身份用户,在终端下输入mondoarchive,即可进入图形操作界面。

备份到什么介质

选择Hard disk备份ISO镜像到硬盘

备份位置选择

输入备份ISO镜像所在目录的完整路径名或默认。

压缩类型选择

建议选择 gzip ,压缩率大。

压缩率选择

压缩选项选择 Maximum(9)

选择每个镜像大小

输入你所想要的每个 ISO 镜像的大小,并以MB(兆字节)为单位。

该数值应当小于等于 CD-R(W)(700)或 DVD(4480)的容量。这里默认即可。

制定镜像名称

制定 ISO 镜像文件名,例如默认的 mondorescue,也可自定义或默认。

选择要备份的目录

输入你所要备份的文件目录,默认为根目录要备份全系统(默认即可)。

排除不需要备份的目录

排除不备份的文件系统并以|分隔。

一般来说有一些文件是不需要的,是可以排除掉的,而如果想要完整地备份你的操作系统,直接默认回车。

选择临时目录路径

输入临时目录路径,选择默认路径即可。

选择暂存目录路径

输入暂存目录路径,选择默认路径即可。

选择是否备份扩展的属性

选择备份扩展的属性,选择 yes。

备份机器的内核

默认直接选择 OK 回车即可。

验证备份文件

如要验证你的备份文件,在 Mondo 创建备份文件之后,选择 “Yes” 即可。

到这步骤之后软件会自动去备份(创建“/”文件系统目录、文件列表划分为集合、调用 MINDI、创建 boot+data 磁盘、备份文件系统、备份大文件、运行 mkisofs、创建 ISO 镜像文件、验证 ISO 镜像的压缩包、验证 ISO 镜像的大文件等)执行过程中无需人工交互操作。这个大概要15分钟

最后,mondo archive 已经结束了它的运行,归档完成,选择 OK 回车键返回到shell 提示符界面中。


这时我们回到/var/cache/mondo/目录下验证是否有一个 ISO 镜像文件。

到这步后,你就可以拷到U盘,制作成系统盘,或者你就可以将备份镜像刻录到 CD/DVD 中了,便于以后恢复系统使用,可以用 Mondo 生成的 ISO 镜像引导操作系统,在引导提示符界面中选择“(手动输入)nuke”类型,恢复文件。

到新的机子上安装

ISO镜像制作成系统盘这边就跳过了,在安装的时候选择我们的ISO镜像即可进入到安装界面 输入nuke

自动安装

整个流程大概5分钟即可完成,非常非常非常快



有问题欢迎评论留言点赞,必回。

相关推荐

ES6中 Promise的使用场景?(es6promise用法例子)

一、介绍Promise,译为承诺,是异步编程的一种解决方案,比传统的解决方案(回调函数)更加合理和更加强大在以往我们如果处理多层异步操作,我们往往会像下面那样编写我们的代码doSomething(f...

JavaScript 对 Promise 并发的处理方法

Promise对象代表一个未来的值,它有三种状态:pending待定,这是Promise的初始状态,它可能成功,也可能失败,前途未卜fulfilled已完成,这是一种成功的状态,此时可以获取...

Promise的九大方法(promise的实例方法)

1、promise.resolv静态方法Promise.resolve(value)可以认为是newPromise方法的语法糖,比如Promise.resolve(42)可以认为是以下代码的语...

360前端一面~面试题解析(360前端开发面试题)

1.组件库按需加载怎么做的,具体打包配了什么-按需加载实现:借助打包工具(如Webpack的require.context或ES模块动态导入),在使用组件时才引入对应的代码。例如在V...

前端面试-Promise 的 finally 怎么实现的?如何在工作中使用?

Promise的finally方法是一个非常有用的工具,它无论Promise是成功(fulfilled)还是失败(rejected)都会执行,且不改变Promise的最终结果。它的实现原...

最简单手写Promise,30行代码理解Promise核心原理和发布订阅模式

看了全网手写Promise的,大部分对于新手还是比较难理解的,其中几个比较难的点:状态还未改变时通过发布订阅模式去收集事件实例化的时候通过调用构造函数里传出来的方法去修改类里面的状态,这个叫Re...

前端分享-Promise可以中途取消啦(promise可以取消吗)

传统Promise就像一台需要手动组装的设备,每次使用都要重新接线。而Promise.withResolvers的出现,相当于给开发者发了一个智能遥控器,可以随时随地控制异步操作。它解决了三大...

手写 Promise(手写输入法 中文)

前言都2020年了,Promise大家肯定都在用了,但是估计很多人对其原理还是一知半解,今天就让我们一起实现一个符合PromiseA+规范的Promise。附PromiseA+规范地址...

什么是 Promise.allSettled()!新手老手都要会?

Promise.allSettled()方法返回一个在所有给定的promise都已经fulfilled或rejected后的promise,并带有一个对象数组,每个对象表示对应的pr...

前端面试-关于Promise解析与高频面试题示范

Promise是啥,直接上图:Promise就是处理异步函数的API,它可以包裹一个异步函数,在异步函数完成时抛出完成状态,让代码结束远古时无限回掉的窘境。配合async/await语法糖,可...

宇宙厂:为什么前端离不开 Promise.withResolvers() ?

大家好,很高兴又见面了,我是"高级前端进阶",由我带着大家一起关注前端前沿、深入前端底层技术,大家一起进步,也欢迎大家关注、点赞、收藏、转发。1.为什么需要Promise.with...

Promise 新增了一个超实用的 API!

在JavaScript的世界里,Promise一直是处理异步操作的神器。而现在,随着ES2025的发布,Promise又迎来了一个超实用的新成员——Promise.try()!这个新方法简...

一次搞懂 Promise 异步处理(promise 异步顺序执行)

PromisePromise就像这个词的表面意识一样,表示一种承诺、许诺,会在后面给出一个结果,成功或者失败。现在已经成为了主流的异步编程的操作方式,写进了标准里面。状态Promise有且仅有...

Promise 核心机制详解(promise机制的实现原理)

一、Promise的核心状态机Promise本质上是一个状态机,其行为由内部状态严格管控。每个Promise实例在创建时处于Pending(等待)状态,此时异步操作尚未完成。当异步操作成功...

javascript——Promise(js实现promise)

1.PromiseES6开始支持,Promise对象用于一个异步操作的最终完成(包括成功和失败)及结果值的表示。简单说就是处理异步请求的。之所以叫Promise,就是我承诺,如果成功则怎么处理,失败怎...

取消回复欢迎 发表评论: