科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道一山可容二虎 让Linux与FreeBSD共存 (2)

一山可容二虎 让Linux与FreeBSD共存 (2)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

这个文档描述了如果在同一个系统上使用Linux和FreeBSD。它介绍了FreeBSD,并且讨论如果使这两个系统协同工作,比如,共享swap空间。在读些文档之前,最好有一些对于fdisk分区和Linux或FreeBSD系统的经验

作者:doorsir 来源:赛迪网技术社区 2007年10月16日

关键字: 操作系统 共存 FreeBSD Linux

  • 评论
  • 分享微博
  • 分享邮件
 

3、在Linux和FreeBSD系统上共享swap空间

这个部分描述了如何使用Linux和FreeBSD来共享一个swap空间。有几种不同的方法可以实现它。如果你愿意,你可以在Linux安装之前安装FreeBSD,只是需要注意FreeBSD slice的分区顺序。

3.1.1安装Linux

第一步是正常安装Linux。你必须在硬盘上留下一些空间作为FreeBSD的slice。你不必分出一个Linux swap分区,但是如果你需要一个,将其放在你为FreeBSD安排的空间中。这个方法可以使你在以后使用FreeBSD的空间时,删除Linuxswap分区。

当你安装了Linux后,你必须重新编译一个新的内核。如果不熟悉,请读一下Linux kernel HOWTO。你必须在内核中包入UFS文件系统支持(只读)和BSD磁盘标记(FreeBSD分区表)支持:

UFS filesystem support (read only) (CONFIG_UFS_FS) [N/y/m/?] y
 BSD disklabel (FreeBSD partition tables) 
support (CONFIG_BSD_DISKLABEL) [N/y/?]
(NEW) y

安装新内核和重新启动。如果你建立了一个Linux swap分区,则需要在/etc/fstab文件中的将任何一行包括swap的关键字的行删除。确定你一个可以以新的内核工作的启动软盘。现在你可以安装FreeBSD了。

3.2 安装FreeBSD

遵照FreeBSD的文档,安装FreeBSD。如果你已经建立了一个swap分区,则删除Linux的swap分区,(你可以使用FreeBSD的fdisk程序)注意在FreeBSD分区中的顺序。如果你使用默认方式来标记,则第二个分区将被建立为swap分区。完成安装后,使用新Linux内核的软盘,重新启动系统。

3.3在Linux中设置FreeBSD的swap分区

如果已经以Linux启动了,就运行dmesg命令。显示可能是:

Partition check:
   hda: hda1 hda2 hda3 hda4 < hda5 hda6 hda7 hda8 >

这就意味着/dev/hda4是你的FreeBSD slice,当/dev/hda5,/dev/hda6,/dev/hda7并且/dev/hda8是FreeBSD分区。如果你的swap分区是在slice中的第二个分区,它可以是/dev/hda6。

你必须在/etc/fstab文件中放入以下行内容,以使swap分区工作:

/dev/hda6       none      swap       sw       0       0

当FreeBSD可以使用任何一种类型的分区作为swap分区,Linux需要一个特别的标记在这个swap分区中。这个标记被mkswap程序所建立。FreeBSD会在其使用这个共享的swap分区时删除这个标记,所以你将必须每次进入Linux后,运行mkswap。为了使其可以自动运行,你必须在启动时运行swapon的脚本程序。在Red Hat Linux它们是/etc/rc.d/rc.sysinit。在下面一行放在这个文件的swapon -a之前:

awk -- '/swap/ && ($1 !~ /#/) { system("mkswap "$1"") }' /etc/fstab

在每次你启动时,这将会在/etc/fstab文件中的每个swap分区都被mkswap操作一次,除非被注释的行。(#是注释符号)

当你已经重新启动了Linux后,可以检查swap空间的大小。也可以启动到FreeBSD来确定一下,所有的正常。如果不,你可能使用错误的分区作为swap分区。这个问题唯一的解决方法就是重新安装FreeBSD,并且重新试一试上面所介绍的方法。经验是一位好老师。

4.使LILO启动FreeBSD

可以非常容易地使用LILO启动FreeBSD。如果你需要安装LILO,则不要安装FreeBSD的启动程序(Booteasy)。根据下列在你的/etc/lilo.conf中的内容运行lilo(假定FreeBSD slice是/dev/hda4)

other=/dev/hda4
table=/dev/hda
label=FreeBSD

如果你已经将FreeBSD安装到了第二个SCSI驱动器上,使用:(这个FreeBSD slice可能是/dev/sdb2)

other=/dev/sdb2
table=/dev/sdb
loader=/boot/chain.b
label=FreeBSD
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章