自制一个简易linux

虚拟机添加一块新的硬盘(大小自定义)

在磁盘上创建一个基本分区作为/boot分区(大小200M足够)

再创建一个基本分区作为基本根分区(这里我指定给了5G大小)

然后给分区创建文件系统(注;swap分区要使用mkswap命令

blob.png

blob.png

]# mkdir /mnt/boot 创建挂载点(因为grub只识别/boot目录,所以要创建boot目录)

blob.png

]# mount /dev/sd1 /mnt/boot/ (将刚才创建的第一个分区挂载至/mnt/boot/目录下)

blob.png

]# grub-install –root-directory=/mnt /dev/sde (安装grub并且指明grub根在/mnt/下的boot,boot不指明,它会自己去找)

blob.png

可看到/mnt/boot/生成了grub,grub下生成了stage1,1.5,2等文件

自制一个简易linuxblob.png

]# 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文件

自制一个简易linuxblob.png

]# 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

blob.png

为根创建一级目录

[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} 创建目录

blob.png编辑自动挂载配置文件

vim /mnt/sysroot/etc/fstab

/dev/sda1 /boot ext4 defaults 1 1

/dev/sda2  /    ext4 defaults 1 2

blob.png

复制bash和相关库文件

cp /bin/bash /mnt/sysroot/bin/

复制相关命令及相关库文件

如:ls,cat,vim,reboot,hostname等

blob.png

]# sync 同步磁盘数据

新建虚拟机使用现有磁盘

blob.png

blob.png

开机可运行



原创文章,作者:M20-1马星,如若转载,请注明出处:http://www.178linux.com/46164

(0)
M20-1马星M20-1马星
上一篇 2016-09-21 01:52
下一篇 2016-09-21 08:11

相关推荐

  • raid各级别特性

      简介 RAID是一个我们经常能见到的名词。但却因为很少能在实际环境中体验,所以很难对其原理 能有很清楚的认识和掌握。本文将对RAID技术进行介绍和总结,以期能尽量阐明其概念。 RAID全称为独立磁盘冗余阵列(Rdeundant Array of Independent Disks),基本思想就是把 多个相对便宜的硬盘组合起来,成为一个硬盘阵列组…

    Linux干货 2016-01-19
  • shell脚本的一点补充

    脚本内容补充 数组 变量:存储单个元素的内存空间数组:存储多个元素的连续的内存空间,相当于多个变量的集合。 数组名和索引 索引:编号从0开始,属于数值索引注意:索引可支持使用自定义的格式,而不仅是数值格式,即为关联索引,bash4.0版本之后开始支持。bash的数组支持稀疏格式(索引不连续) 数组的使用 声明数组: declare -a ARRAY_NAME…

    Linux干货 2016-08-24
  • 马哥linux第一周学习笔记

    计算机组成 Linux基本命令

    Linux干货 2017-12-17
  • 马哥教育网络21期+第一周练习博客

    一、描述计算机的组成及其功能。   计算机设备是由运算器、控制器、存储器、输入设备和输出设备组成。它们的功能和对应设备分别如下: 运算器(arithmetic unit):在计算机中执行各种算术和逻辑运算操作的部件。运算器包括寄存器、执行部件和控制电路3个部      &nbsp…

    Linux干货 2016-07-12
  • 正则表达式grep,sed

    HTTP 一个简单的网页文件 service iptables stop echo “<h1>I  LOVE YOU</h1>” > /var/www/html/index.html 文本排序sort sort 1.txt   排序规则先数字后字母,小写字母在前。 sort -t “:&#82…

    Linux干货 2018-03-13
  • Linux任务计划

    Linux任务计划主要分为分为两种分别是一次性任务计划和周期性任务计划实现工具主要是at和crontab下面将详细介绍任务计划工具的使用。 1、at命令一次性任务计划 at命令是由atd服务提供的其主程序包是atd在CentOS6上可以使用service atd start命令来启动在CentOS7上需要使用systemctl start atd.servi…

    Linux干货 2016-09-11