虚拟机添加一块新的硬盘(大小自定义)
在磁盘上创建一个基本分区作为/boot分区(大小200M足够)
再创建一个基本分区作为基本根分区(这里我指定给了5G大小)
然后给分区创建文件系统(注;swap分区要使用mkswap命令)
]# mkdir /mnt/boot 创建挂载点(因为grub只识别/boot目录,所以要创建boot目录)
]# mount /dev/sd1 /mnt/boot/ (将刚才创建的第一个分区挂载至/mnt/boot/目录下)
]# grub-install –root-directory=/mnt /dev/sde (安装grub并且指明grub根在/mnt/下的boot,boot不指明,它会自己去找)
可看到/mnt/boot/生成了grub,grub下生成了stage1,1.5,2等文件
]# cp /boot/vmlinuz-2.6.32-642.el6.x86_64 /mnt/boot/ 恢复内核文件
]# cp /boot/initramfs-2.6.32-642.el6.x86_64.img /mnt/boot/ 恢复initramfs文件
]# vim /mnt/boot/grub/grub.conf 编写grub配置文件,写入以下信息
defaullt=0 设定默认启动菜单项
timeout=5 菜单等待选择时间
title CentOS(minix.minix) 菜单名(以下为菜单项需要使用缩进)
root (hd0,0) 指明root为(hd0,0)
kernel /vmlinuz-2.6.32-642.el6.x86_64(指明内核文件) ro root=/dev/sda3 指明根文件系统(就是我们刚才分区出来的那块,因为要把这块硬盘放到另外一个系统上,所以刚才分区的/dev/sde3会在新系统上自动识别sda3)selinux=0 (关闭selinux) init=/bin/bash(指定系统的init为/bin/bash)
initrd /initramfs-2.6.32-642.el6.x86_64.img
为根创建一级目录
[root@localhost ~]# mkdir /mnt/sysroot 创建根分区挂载点
[root@localhost ~]# mount /dev/sdb2 /mnt/sysroot/ 将根分区挂载
[root@localhost ~]# mkdir -pv /mnt/sysroot/{etc,lib,lib64,bin,sbin,tmp,var,usr,sys,proc,opt,home,root,boot,dev,mnt,media} 创建目录
编辑自动挂载配置文件
vim /mnt/sysroot/etc/fstab
/dev/sda1 /boot ext4 defaults 1 1
/dev/sda2 / ext4 defaults 1 2
复制bash和相关库文件
cp /bin/bash /mnt/sysroot/bin/
复制相关命令及相关库文件
如:ls,cat,vim,reboot,hostname等
]# sync 同步磁盘数据
新建虚拟机使用现有磁盘
开机可运行
完
原创文章,作者:M20-1马星,如若转载,请注明出处:http://www.178linux.com/46164