基于VirtualBox的Linux系统构建之grub的安装

发布于 2022-09-15 03:36:07 字数 2314 浏览 17 评论 4

本帖最后由 rouchel 于 2011-01-17 13:18 编辑

Host环境:Ubuntu 10.10 32位系统

第一步:安装VirtualBox

第二步:使用VirtualBox创建一个虚拟硬盘DISK1(默认8G大小),并安装一个Linux发行版,这里以Fedora-core 14为例

第三步:安装好Fedora之后,进入该系统,将用户的sudo权限添加上(/etc/sudoers),并安装nfs client,“sudo yum install nfs-utils”

第四步:将Fedora虚拟机关机,然后再创建一个新的硬盘DISK2(默认8G大小),此硬盘是为自己构建的Linux系统做准备

第五步:进入Fedora虚拟机,查看/dev目录下多了一个sdb,说明你的新的虚拟硬盘创建成功,然后对该硬盘进行分区,“sudo fdisk /dev/sdb”,划分成两个分区,一个分区大小为5G,一个分区大小为3G,后面会将grub2安装到第一个分区(5G),并在命令行使用"sudo mkfs.ext4 /dev/sdb1"将分区格式化成ext4格式

第六步:回到本地系统(Ubuntu),准备一个rootfs目录(先将grub工具安装在此目录里),例如:“mkdir /maxwit/rootfs”,并将此目录加入nfs共享目录(“/etc/exports”),重启nfs-server(若没有安装请先安装)

第七步:将grub安装至rootfs,先下载grub-1.98.tar.gz,然后解压->“./configure --prefix=/maxwit/rootfs/usr”->“make”->“make install”

第八步:进入Fedora虚拟机(打开虚拟机里标题栏的“Devices”,选择“Network Adapter”,在“Attached to:”选项里选择“Bridged Adepter”,点击“OK”),打开Terminal,将主机端的“/maxwit/rootfs” 用nfs方式mount到“/maxwit/rootfs”(没有该目录需自己创建),然后将虚拟机里的“/dev/sdb1”mount到“/mnt/part1”(没有该目录需自己创建)

第九步:安装grub到DISK2硬盘的第一个分区上,“/maxwit/rootfs/usr/sbin/grub-install --root-directory=/mnt/part1 /dev/sdb”,没有错误信息说明安装成功

第十步:进入“/mnt/part1/boot/grub”,创建“grub.cfg”文件,内容如下:
                set timeout=10
                menuentry `Hello LSB` {
                        set root=`(hd0, 1)`
                        linux        /boot/vmlinuz-2.6.35 root=/dev/sda1
                        initrd        /boot/initrd.img-2.6.35
                }

第十一步:将Fedora虚拟机关闭,在VirtualBox设置里将该虚拟机的“Storage”里的DISK1.vdi从Controller上去掉(注意不是将该文件删除),然后“OK”重新启动虚拟机,启动之后会进入grub界面,“GNU GRUB version 1.98”,选择栏里有“Hello LSB”一项,恭喜你的grub安装成功

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

浅浅淡淡 2022-09-19 00:16:45

本帖最后由 RoverMo 于 2011-01-17 17:03 编辑

安装 VirtualBox Guest Addtions失败

解决方法:
     查看 /var/log/vbox-install.log文件,发现: gcc : Command not found.
     说明安装VirtualBox Guest Addtins时需要用到gcc进行编译, 而gcc未安装.
     
     安装gcc方法:
     (1)从网络安装
          $sudo yum install gcc
     (2)用系统安装盘中的包安装
         1. 在/etc/yum.repos.d/目录下创建文件dvd_iso.repo,文件内容如下:
             [ded_iso]
             name = install from dvd_iso
             baseurl = file:///media/Fedora%2014%20i386%20DVD/
             enable = 1
             gpgcheck = 0
          2. mount光盘, 在我的机子,iso mount的路径是:/media/Fedora%2014%20i386%20DVD/
          3.安装gcc
             $sudo yum install gcc
             注:此命令会读取dvd_iso.repo,然后以iso为源安装软件包.

梦回梦里 2022-09-18 20:39:00

修改完/etc/exports 之后
sudo exportfs
然后重启nfs-server
sudo service nfs-kernel-server restart

大家有没有fedora的DVD,livecd装完fedora之后fedora连gcc, ld, as 等基本工具都没有。网上下载速度又太慢了。

无妨# 2022-09-18 03:55:36

第六步:回到本地系统(Ubuntu),准备一个rootfs目录(先将grub工具安装在此目录里),例如:“mkdir /maxwit/rootfs”,并将此目录加入nfs共享目录(“/etc/exports”),重启nfs-server(若没有安装请先安装)

  修改/etc/exports文件,在文件未尾加入如下内容,即可将/maxwit/rootfs作为nfs共享目录。

                     /maxwit/rootfs   *(rw,sync,no_oubtree_check,no_root_squash)

不羁少年 2022-09-16 13:21:33

第二步:将用户(假设user name 为rouchel)的sudo权限添加上(/etc/sudoers)。

          使用root仅限打开/etc/sudoers文件,在该文件未尾,添加如下一行
             rouchel ALL=(ALL)  NOPASSWD: ALL

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文