添加新硬盘并创建文件系统(Vmware 虚拟机)

背景:

   由于原来的虚拟机磁盘空间异常,决定重新安装虚拟机,为了让我之前装的软件和我配置的用户环境变量等信息都保存下来。遂决定首先将以安装的软件目录用tar命令打包,然后在新的虚拟机里还原,这样就省去了安装的步骤。

还原的时候除了安装目录里的文件,还有另外几个目录需要拷贝:

1、u01目录下的安装文件

2、用户目录下的.bash_profile文件的里的环境变量

3、

涉及知识:

虚拟机添加物理磁盘、给物理磁盘分区、创建文件系统、tar命令、cp命令等。


步骤:

1、关闭虚拟机,添加新硬盘

此时需要你在宿主机上创建一个新的磁盘文件,然后添加到虚拟机里。

2、此时打开虚拟机,fdisk -l能看见sdb磁盘,df -h无法识别文件(因为还没有创建文件系统)


3、给新硬盘分区并添加文件系统

第一步:创建分区
    root# fdisk  /dev/had         à 进入到新添加的硬盘中
The number of cylinders for this disk is set to 10402.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)
 
Command (m for help): n            à 创建新分区
 Command action
   e   extended
   p   primary partition (1-4)
p                              à 创建主分区
Partition number (1-4): 1           à 新建的主分区序号
First cylinder (1-10402, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-10402, default 10402): +500M    à 创建主分区大小
 
Command (m for help): w        à 保存创建的主分区
第二步:使新创建的分区在系统中立即生效
 root#partprobe
 
第三步:格式化新创建的分区(这样也就有了文件系统)
[root@server ~]# mkfs.ext3 /dev/hda1
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
122400 inodes, 488848 blocks
24442 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67633152
60 block groups
8192 blocks per group, 8192 fragments per group
2040 inodes per group
Superblock backups stored on blocks:
        8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409
 
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
 
This filesystem will be automatically checked every 27 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
[root@server ~]#
 
第四步:使新创建的分区挂载/mnt/rhce01 目录下
Root#mount /dev/hda1 /mnt/rhce01
 
 
第五步:让挂载在系统重启后仍然有效
root# vim /etc/fstab        à 编辑这个文件,添加上下面的一行,使挂载在重启后有效;   
LABEL=/1                /                       ext3    defaults        1 1
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults           0 0
proc                    /proc                   proc    defaults         0 0
LABEL=SWAP-sda3         swap                    swap    defaults        0 0
/dev/hda1              /mnt/rhce01              ext3    defaults        0 0
 
 完成之后,df -h就能看见新添加的文件挂载点了。

4、用tar命令将文件打包并压缩传送到指定的磁盘:
首先了解tar命令,参照博客: http://blog.csdn.net/cymm_liu/article/details/7046177

执行:[root@lyg]# tar -cvfz /mnt/adddisk/u01bak.tar.gz  /u01                 
  ——把u01目录下的所有文件打包并拷贝到 /mnt/adddisk/u01bak.tar.gz中,这是个压缩文件,需要注意的点有两个:
1、用tar命令可以保持该目录下所有文件的读写执行属性,保持用户和组的属主不变。
2、tar在执行过程中,会在原来的磁盘(有可能是系统)产生很大的缓存文件,我没有试验是不是全部tar到原来磁盘然后再写到对应目录还是怎么回事。。反正我tar的时候原磁盘空间急剧减小。。最后因为空间不足,这操作没法做了

后来改用cp命令:
这个命令是比较熟悉的,刚开始考虑到文件的属性问题,所以没敢用,等查了一下cp的说明,发现cp也是可以保存属性什么的,只不过是不能压缩,关于cp的详细介绍,参考博客: http://blog.csdn.net/cymm_liu/article/details/7037662

cp -rhp/u01   /mnt/adddisk/u01bak  这样就可以了。。


5、删除旧的虚拟机文件,新建虚拟机,然后把磁盘挂载上,把里面的备份文件拷到虚拟机里,设置环境变量。就差不多了。



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值