通过Linux系统将Windows系统迁移到到新的磁盘上

2016-03-31 15:20 48 1 收藏

今天图老师小编给大家精心推荐个通过Linux系统将Windows系统迁移到到新的磁盘上教程,一起来看看过程究竟如何进行吧!喜欢还请点个赞哦~

【 tulaoshi.com - 服务器 】

通过Linux系统将Windows系统迁移到到新的磁盘上

   1. 概述

  这篇文章将告诉你如何再 linux 系统下,将 安装好的windows版本 复制到新的磁盘上(新的磁盘大于等于window镜像大小)

  2. 使用到的工具

  livecd 工具,可以是CD 也可以是USB启动的 ,需要有的工具 dd, fdisk, and ntfsresize.

  此例子中,使用如下假设:

  /dev/sdc (新硬盘)

  /dev/sdb (老硬盘,安装好的window版本数据在 /dev/sdb1 分区中)

  = 格式化新盘(/dev/sdc) =

  使用root 用户,进行如下分区操作

  代码如下:

  [root@centos6 ~]# fdisk /dev/sdc

  WARNING: DOS-compatible mode is deprecated. It's strongly recommended to

  switch off the mode (command 'c') and change display units to

  sectors (command 'u').

  Command (m for help): n

  Command action

  e extended

  p primary partition (1-4)

  p

  Partition number (1-4): 1

  First cylinder (1-2088, default 1):

  Using default value 1

  Last cylinder, +cylinders or +size{K,M,G} (1-2088, default 2088):

  Using default value 2088

  Command (m for help): p

  Disk /dev/sdc: 17.2 GB, 17179869184 bytes

  255 heads, 63 sectors/track, 2088 cylinders

  Units = cylinders of 16065 * 512 = 8225280 bytes

  Sector size (logical/physical): 512 bytes / 512 bytes

  I/O size (minimum/optimal): 512 bytes / 512 bytes

  Disk identifier: 0xa1c3a1c3

  Device Boot Start End Blocks Id System

  /dev/sdc1 1 2088 16771828+ 83 Linux

  在完成之前,我们必须设置启动标志和分区系统ID,分区系统ID必须是WINDOWS的,ID值为 7.

  代码如下:

  Command (m for help): A

  Partition number (1-4): 1

  Command (m for help): t

  Selected partition 1

  Hex code (type L to list codes): 7

  Changed system type of partition 1 to 7 (HPFS/NTFS)

  Command (m for help): p

  Disk /dev/sdc: 17.2 GB, 17179869184 bytes

  255 heads, 63 sectors/track, 2088 cylinders

  Units = cylinders of 16065 * 512 = 8225280 bytes

  Sector size (logical/physical): 512 bytes / 512 bytes

  I/O size (minimum/optimal): 512 bytes / 512 bytes

  Disk identifier: 0xa1c3a1c3

  Device Boot Start End Blocks Id System

  /dev/sdc1 * 1 2088 16771828+ 7 HPFS/NTFS

  Command (m for help): w

  The partition table has been altered!

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/fuwuqi/)

  Calling ioctl() to re-read partition table.

  Syncing disks.

  = 复制MBR =

  为了让新盘能够引导, 我们必须从Master Boot Record (MBR) 复制引导代码到新的磁盘上

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/fuwuqi/)

  MBR 在磁盘的第一个扇区,由3部分组成:

  代码如下:

  Boot Code (446 bytes)

  Partition Table (64 bytes)

  Boot Code Signature = 55aa (2 bytes)

  我们只需要复制引导代码,起始的 446 bytes. 使用dd工具来复制:

     代码如下:

  # dd if=/dev/sdb of=/dev/sdc bs=446 count=1

  1+0 records in

  1+0 records out

  446 bytes transferred in 0.026312 seconds (16950 bytes/sec)

  = 复制分区 =

  下一步任务就是将文件系统从一个盘复制到另一个盘上.在这里我们使用 ntfsclone 工具来复制 NTFS 文件系统

  代码如下:

  [root@centos6 ~]# ntfsclone --overwrite /dev/sdc1 /dev/sdb1

p ntfsclone v2013.1.13 (libntfs-3g)

 

  NTFS volume version: 3.1

  Cluster size : 4096 bytes

  Current volume size: 10725732352 bytes (10726 MB)

  Current device size: 10725732864 bytes (10726 MB)

  Scanning volume ...

  100.00 percent completed

  Accounting clusters ...

  Space in use : 7565 MB (70.5%)

  Cloning NTFS ...

  100.00 percent completed

  Syncing ...

  如果在源盘上有坏的扇区,则需要添加 --rescue 选项

  代码如下:

  # ntfsclone --rescue --overwrite /dev/sdc1 /dev/sdb1

  注意: 源盘 是 最后一个参数(/dev/sdb1)

  3. 改变分区大小

  在新盘比源盘大的情况下,我们需要改变分区大小来使用所有空间,这里我们使用 ntfsresize 命令

  代码如下:

  [root@centos6 ~]# ntfsresize /dev/sdc1

p ntfsresize v2013.1.13 (libntfs-3g)

 

  Device name : /dev/sdc1

  NTFS volume version: 3.1

  Cluster size : 4096 bytes

  Current volume size: 10725732864 bytes (10726 MB)

  Current device size: 17174352384 bytes (17175 MB)

  New volume size : 17174348288 bytes (17175 MB)

  Checking filesystem consistency ...

  100.00 percent completed

  Accounting clusters ...

  Space in use : 7565 MB (70.5%)

  Collecting resizing constraints ...

  WARNING: Every sanity check passed and only the dangerous operations left.

  Make sure that important data has been backed up! Power outage or computer

  crash may result major data loss!

  Are you sure you want to proceed (y/[n])? y

  Schedule chkdsk for NTFS consistency check at Windows boot time ...

  Resetting $LogFile ... (this might take a while)

  Updating $BadClust file ...

  Updating $Bitmap file ...

  Updating Boot record ...

  Syncing device ...

  Successfully resized NTFS on device '/dev/sdc1'.

  4. 使用新盘重新启动系统

  重新启动后,windows 会自动检查文件系统如下(因为分区大小有所变化),检查完成后自动重起就能进入windows系统了

20151130115326248.png (499×333)

  5. 总结

  当然这种方式的拷贝是在同一台服务器上操作的(驱动无变化),如果将一个干净的windows裸系统通过这种方式安装到不同型号的服务器上时, 就会出现驱动问题,如何解决,请看下回分解!

来源:https://www.tulaoshi.com/n/20160331/2050380.html

延伸阅读
标签: 软件教程
分区助手是款针对于系统的工具,功能强大。分区助手能对你的磁盘进行无损的管理,下面小编就给大家分享一片分区助手怎么迁移系统的文章 步骤一:打开你的分区助手,找到向导下面的迁移OS到SSD/HDD 步骤二:点击“迁移OS到SSD/HDD”,点击下一步 步骤三:选择你要复制到的磁盘空间,点击下一步 步骤四...
现在运行Windows NT服务器确实是一件勇敢亦可能是愚蠢的事情,因为微软已经不再为NT提供技术支持。随着业务量的激增和应用程序的不断升级,Windows 2000也逐渐变成了老的产品,快要寿终正寝了。如果你工作在一家仍然在运行NT或2000的单位里(当然这样的单位在世界上是很多的),不管怎样,你将不得不迁移到另一个操作系统上去,例如,Linux系统...
标签: 电脑入门
Redhat下磁盘配额设置 配额可以使各个用户和组无法占用分区的全部空间。可以通过限定inode数而配置配额,每个inode与特定文件相关联;也可以设置绝对极限(KB数)。 默认情况下,readhat会安装和激活quota rpm包。如果不能确定,可以运行命令:rpm -q quota。 配额通常在内核中激活。 要对特定的用户使用配额,需要六个步...
标签: 服务器
Linux系统找回丢失磁盘空间的方法   一些使用Linux系统的用户经常会遇到,显示磁盘空间已满的状况,就不得不删除一些文件了。但是回头算算发现,总文件所占空间大小,和磁盘的总大小并不一致,那么那些剩余的空间都去哪儿了呢?是哪些文件隐藏在角落里占据了一部分的空间。下面小编就来教大家如何找回那些丢失的磁盘空间,彻底清理磁盘...
随着智能手机的计算能力和存储能力的提高,手机中将会存放越来越多的私有数据,这些数据的泄密可能造成严重后果。手机信息安全一直是我们的重点之一,对于一些重要的功能我们要求鉴权后才能使用,但这只能挡住初级的黑客,只能防君子不能防小人,所以我们希望把重要的数据进行加密后再保存。为此,今天花了一点时间去了解Linux 磁盘加密的方法...

经验教程

456

收藏

76
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部