U盘中打造属于自己的Linux (一)U盘的前期处理(下):格式化与初级BootLoader设置
接上篇: 处理U盘至usb-hdd模式;
接下来,我们要做的就是进行U盘的格式化操作,
首先,我们要选择一个BootLoader,你可能会问,为啥格式化需要先考虑BootLoader呢?这要跟BL的挑剔性说起。
我们知道,BootLoader一般安装在MBR中,用于引导,这就决定了它必须正确识别文件系统,这样才能读取存在硬盘上的配置文件
先简介一下几个比较著名的BootLoader
:LILO 比较老的BL,支持大部分文件系统。
:SysLinux 一般用于嵌入式,安装的硬盘文件系统一般为FAT
:Grub 主流的BL,支持大部分文件系统。
我们的很多工具盘的引导用的都是Grub,因为她十分的强大,因此我们打算采用它作为我们的BL。
这里对于Syslinux一笔带过,它是嵌入式中常用的一个引导程序,使用也比较方便。后文中将会对比的提出使用方法。
之后就是常见的文件系统:
:FAT家族 我们见得多了,没吃过猪肉也见过猪跑,我就不介绍了,特性和其主子Windows一样……..
FAT在嵌入式中常用,SysLinux就安装在FAT环境下。
:Linux文件系统格式
ext2 曾经辉煌的GNU默认文件系统,性能较好,缺点:掉电崩溃,数据经常丢失。
ext3 现行正在主流的文件系统,解决了掉电丢失问题。
回想我们的需求,我们希望将系统从内存中交换引导,因此我们使用ext2文件系统就可以满足我们的需要,当然是用ext3是很好的,ext2与ext3兼容性较好,可以方便的相互转换。
总结之前的内容,我们决定在ext2环境下使用Grub作为引导程序。
实现:
一、 格式化
进入宿主Linux 打开terminal(之后的工作默认都是在terminal中完成的,图形化的东西没啥用其实。。。)
在这里说明一下 之后的操作默认在root权限下进行
1
|
sudo su
|
采用cfdisk作为分区工具。
插入U盘,Linux一般会识别并自动挂载,在分区格式化之前,要先将U盘解除挂载
1
|
fdisk -l //列出所有的磁盘信息,这时候如果你的硬盘是IDE的盘,那么一般你宿主机的硬盘会识别为
|
之后就可以正常进入分区了。(不可以的话,额… 查查你U盘自身的问题吧)
之后的有“图形界面” 操作比较方便应该。
分区随便,需要的是一个起于beginning的分区,有bootflag(可启动),大小有你最后要实现的Linux规模决定,这里建议大家分一个区,不差钱儿…….
我慷慨的贡献了2G的U盘给它,type可以选择Linux (代号 83) 记住一定要执行 Write 选项,否则就白做了!
1
|
mkfs.ext2 /dev/sdb1 #格式化为ext2格式(对于syslinux格式化,基本相同,上面在type中选择FAT后 执行 mkdosfs /dev/sdb1 就可以了)
|
至此,格式化过程就全部完成了。
现在我们的U盘空的如同连上四节大课之后的胃一样…
二、 BootLoader的安装与初级设置
我们先找宿主机分析一下,一个BootLoader一般需要什么东西。BootLoader在什么地方找呢?猜对了,/boot
我在我的Linux中 /boot 下有一个名为 grub 的文件夹 起作用十分的明显,就是说,grub引导需要/boot/grub 中的文件。
其实其中起作用的文件只有那么几个,之前的分析我们知道,grub 引导服从 stage1->stage1.5->stage2 这个过程,同时还需要遵照配置文件grub.conf 中的规则,因此我们需要的文件就是:
stage1; stage2; e2fs_stage1_5(就是支持ext2的stage1.5文件,有人说没用)
- 这几个文件一般人搞不定,因为它们涉及很多底层操作,我这个菜鸟必然不敢动,直接拷贝的干活…..
grub.conf - 引导配置,可以自行设置,是我们实现引导的基础。
- 当然 我们尝鲜要紧 里面的东西先放放再说。
现在我们要正式对U盘下手了….. 首先建立一个今后一直要用的挂载点,自己方便就好,我的是/mnt/usb
1
|
mkdir /mnt/usb
|
这时候你ls下 可能只有lost+found孤零零的躺在那里(若发现一堆东西,请迅速离开,不知道咋离开的点右上角的X…)
1
|
mkdir boot
|
这样 必要的文件就准备好了 下一步是安装grub
宿主linux中,一般都会安有grub 的shell环境。
1
|
grub
|
如果上面的succeed了 那么你的BootLoader已经安装完毕了,虽然现在没有任何配置,不可能正常引导,但是启动后应该可以找到grub程序了。
插入u盘 开机,进入bios设置,选择从usb-hdd启动。
进入 出现grub的引导提示信息。
补充: vmware 中实现u盘引导的方法:
vmware的启动非常快,来不及加载u盘,依次我们绕过,将u盘模拟为虚拟硬盘使用。
随便新建一个虚拟机,删除原有的硬盘,在配置中点击ADD添加设备,选择硬盘,并“使用物理磁盘”之后选择PD1 就应该是你的u盘了,之后就可以用这个虚拟机验证启动。
posted on 2019-08-23 09:37 guanxi0808 阅读(552) 评论(0) 收藏 举报