4、安装grub的方式

1)使用grub-install命令

  1. # grub-install [--root-directory=/path/to/somewhere] DEVICE 

2)grub交互是命令

wKiom1PQ_HiCHYTqAALwLfHE0OI236.jpg

在这里我们自制一个精简grub,当然启动的时候只启动一个bash就可以。示例是在 VMware 虚拟机下完成的。

第一步:准备好块新磁盘,分 2 个区出来

wKiom1PRAY_CbjOxAAFQGeXx0nE979.jpg

第二步:模拟启动时的boot目录,和根目录,并挂载。如下

  1. [root@server ~]# df -H | tail -n 2  
  2. /dev/sdd1              518M    11M   481M   3% /mnt/boot  
  3. /dev/sdd2              2.2G    71M   2.0G   4% /mnt/sysroot 

第三步:制作 grub,并生成 grub 的配置文件

制作grub

wKiom1PRA4njlzRSAANnZuPPwug409.jpg

拷贝内核文件和 initramfs 文件到 /mnt/boot 目录下,并生成 grub.conf 文件

  1. [root@server ~]# cp /boot/vmlinuz-2.6.32-358.el6.x86_64 /mnt/boot/vmlinuz  
  2. [root@server ~]# cp /boot/initramfs-2.6.32-358.el6.x86_64.img /mnt/boot/initramfs.img  
  3. [root@server ~]# ll /mnt/boot/  
  4. total 20106  
  5. drwxr-xr-x 2 root root     1024 Jul 24 20:58 grub  
  6. -rw-r--r-- 1 root root 16542269 Jul 24 21:06 initramfs.img  
  7. -rwxr-xr-x 1 root root  4043888 Jul 24 21:05 vmlinuz  
  8. # 生成的 grub.conf 文件  
  9. [root@server ~]# cat /mnt/boot/grub/grub.conf  
  10. default=0 
  11. timeout=10 
  12. title Mini Linux  
  13.     root (hd0,0)   
  14.     kernel /vmlinuz ro root=/dev/sda2 selinux=0 init=/bin/bash  
  15.     initrd /initramfs.img 

第四步: 生成根文件系统

wKiom1PRBtWiGC9QAAJM8RoL0uA295.jpg

第五步:拷贝使用命令和库到对应根目录下

wKioL1PRDKij5REwAAM4ghH8fUw006.jpg

将刚才的磁盘镜像作为另一个虚拟机的启动盘。

wKioL1PRD2KC4J8-AAFGpnnDVLM992.jpg

wKioL1PRD3LSg0DtAALqgLLfnXg176.jpg


相关内容