一、环境准备
1.笔记本电脑
2.vmware12软件
3.CentOS 6虚拟机
4.大于5G空间的物理磁盘分区
 
二、分区并挂载文件系统

1.添加磁盘

在vmware中选中CentOS 6系统并右击鼠标选择设置,添加-->硬盘-->SCSI(推荐)-->创建新虚拟磁盘-->大小改为5G-->完成

p_w_picpath

wKiom1ff_ZayYeo2AAEShYBxxmE408.png-wh_50

2.分区并创建文件系统并挂载

fdisk /dev/sdb
分两个必要的分区/dev/sdb1对应/boot /dev/sdb2对应根/ mkfs.ext4 /dev/sdb1
mkfs.ext4 /dev/sdb2
mkdir /mnt/boot
mkdir /mnt/sysroot
mount /dev/sdb1 /mnt/boot
mount /dev/sdb2 /mnt/sysroot

p_w_picpathwKiom1ff_cDQRQpeAACt4JjYogA494.png

三、内核及grub创建

3.恢复内核和initramfs文件

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

4.grub安装与建立grub.conf文件

1)安装grub
grub-install --root-directory=/mnt /dev/sdb2)建立grub.conf文件
vim /mnt/boot/grub.conf添加如下内容:default=0timeout=3splashp_w_picpath=(hd0,0)/grub/splash.xpm.gz
title wanglinux
kernel /vmlinuz-2.6.32-642.el6.x86_64     root=/dev/sda2 selinux=0 init=/bin/bash
initrd /initramfs-2.6.32-642.el6.x86_64.img

wKiom1ff_gqSh3U9AACTJcAp93g336.png

p_w_picpath5.与grub中图片更换

yum install ImageMagick,图片转换工具
convert -resize 640x480!  -colors 14 1.jpg 1.xpm 重新设置图片大小
gzip win.xpm对图片进行压缩
vim /mnt/boot/grub/grub.conf修改grub.conf中的splash.xpm.gz为新的图片splash.xpm.gz
 
四、创建一级子目录和复制文件

1.创建一级子目录

cd /mnt/sysroot
mkdir–pv/mnt/sysroot/{etc,lib,lib64,bin,sbin,tmp,var,usr,sys,proc,opt,home,root,boot,dev,mnt,media}
其中proc目录如果忘记创建会出现/dev/sdb2即根目录已经挂载的报错

2.复制bash和相关库文件

使用之前写的库文件拷贝脚本进行复制,简单复制了bash,ls,df,pwd等命令

3.尝试切跟

chroot /mnt/sysroot

p_w_picpathwKioL1ff_jWhQc2LAABTMj13ZRo375.png

4.如果创建子目录时缺少proc子目录启动时会出现下图所示错误
 

自制linux遇到的错误.PNG

 
五、创建新虚拟机并验证自制系统

1.创建一个虚拟机先不要安装系统 2.删除新建虚拟机的磁盘文件 3.把CentOS 6中的添加的5G的磁盘文件CentOS_6-1.vmdk拷贝过来 4.把拷过来的磁盘文件作为新虚拟机的启动磁盘文件 p_w_picpathp_w_picpath

wKioL1ff_lWBL6ASAAEYEF1_QRY744.png

wKioL1ff_lbQofSgAACpP3hEp4U403.png