分享
 
 
 

Linux与FreeBSD共存

王朝system·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

By Wing

摘要:这个文档描述了如果在同一个系统上使用Linux和FreeBSD。它介绍了FreeBSD,并且讨论如果使这两个系统协同工作,比如,共享swap空间。在读些文档之前,最好有一些对于fdisk分区和Linux或FreeBSD系统的经验。这个文档使用的经验在FreeBSD 2.2.2上通过,当然对于新的版本,它依然是适用的。

这个文档描述了如果在同一个系统上使用Linux和FreeBSD。它介绍了FreeBSD,并且讨论如果使这两个系统协同工作,比如,共享swap空间。在读些文档之前,最好有一些对于fdisk分区和Linux或FreeBSD系统的经验。这个文档使用的经验在FreeBSD 2.2.2上通过,当然对于新的版本,它依然是适用的。如果有什么问题,请来信,我也希望看看别人使用NetBSD和OpenBSD与Linux共存的经验。

内容列表

什么是FreeBSD?

FreeBSD对于磁盘分区的方式

2.1 FreeBSD "slices"和"partitions"

2.2 在Linux和FreeBSD中的驱动器和分区标号

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

3.1安装Linux

3.2安装FreeBSD

3.3在Linux中设置FreeBSD的swap分区

使用LILO启动FreeBSD

挂起文件系统

5.1在Linux挂起UFS文件系统

5.2在FreeBSD中挂起ext2fs文件系统

运行外部二次制代码

6.1 在Linux下运行FreeBSD的二进制代码

6.2 在FreeBSD下运行Linux的二进制代码

信息资源

---------------------------------------------------------

1、什么是FreeBSD?

FreeBSD是一个免费的类Unix的操作系统,非常类似于Linux。这个主要的区别是,Linux的内核是拼凑出来的,FreeBSD是根据自由发布的4.4BSD(伯克利软件分部)发展而来的。这个现实可能导致了一些人提出FreeBSD比Linux更接近于“真正”的UNIX。FreeBSD只运行在Intel的PC系统上(i386体系);DEC Alpha和Sun Sparc平台上的ports也在此时一起被开发。NetBSD和OpenBSD都与FreeBSD非常相像,非常都可以运行在几个平台之上。*BSD的硬件的需要与Linux差不多。

被管理FreeBSD的开发过程与Linux的开发过程并不一样。有一个核心小组对内核代码进行裁决并且领导整个工程的开发。

如果有大的改变,则需要在电子邮件中进一步讨论。FreeBSD工程具有两个开发树(就像Linux):"-CURRENT"和"-STABLE"。"-CURRENT"开发树包括了新的特性。而"-STABLE"开发树则修证了新特性中测试出来的错误和漏洞。

FreeBSD可以被免费地使用和发布,就如同Linux一样。在其下运行的许多部件都使用了BSD的版权。

2、FreeBSD对于磁盘分区标记的方式

Linux和FreeBSD标记了硬盘驱动器和分区。对于两个系统来说,对于扇区的阐述不尽相同。实际上FreeBSD的分区方式只是BSD的分区方式在PC的fdisk分区方式上的体现。因此它非常类似于其它的类Unix系统,比如NetBSD,OpenBSD,Ultrix,Digial Unix,SunOS,和Solaris。

2.1. FreeBSD"slices"和"partitions"

FreeBSD需要在你的PC上的硬盘上的分区表中占用四个项。在FreeBSD术语中,主分区被称为一个"slice"。使用disklabel程序在这个主分区中造成8个分区。在FreeBSD术语中,这些逻辑分区被称为“partitions"。这个概念与Linuxs管理在一个扩展分区中的逻辑分区的方式非常类似。你不可以在由Linux建立的扩展分区中安装FreeBSD。注意,Linux的fdisk程序不能在其主菜单中显示出在FreeBSD的slice中的BSD分区,但是你可以通过命令“b“来显示BSD的卷标。输出如下内容:

bash# fdisk /dev/hda

Command (m for help): p

Disk /dev/hda: 64 heads, 63 sectors, 621 cylinders

Units = cylinders of 4032 * 512 bytes

Device Boot Begin Start End Blocks Id System

/dev/hda1 * 1 1 27 54400+ 83 Linux native

/dev/hda2 28 28 55 56448 83 Linux native

/dev/hda3 56 56 403 701568 83 Linux native

/dev/hda4 404 404 621 439488 a5 BSD/386

Command (m for help): b

Reading disklabel of /dev/hda4 at sector 1624897.

BSD disklabel command (m for help): p

8 partitions:

# size offset fstype [fsize bsize cpg]

a: 64512 1624896 4.2BSD 0 0 0 # (Cyl. 404 - 419)

b: 104832 1689408 swap # (Cyl. 420 - 445)

c: 878976 1624896 unused 0 0 # (Cyl. 404 - 621)

e: 64512 1794240 4.2BSD 0 0 0 # (Cyl. 446 - 461)

f: 645120 1858752 4.2BSD 0 0 0 # (Cyl. 462 - 621)

BSD disklabel command (m for help): q

bash#

注意,在第一栏中的字母"a...f"。在BSD中,有三种特别的分区。字母'a'表示是root分区,'b'表示是swap分区,c是整个slice。如果您想知道详细情况,请查阅"standard"的方式。

2.2 在Linux和FreeBSD中的驱动器和分区标号

在Linux和FreeBSD中,硬盘被标记成以下方式。

Linux FreeBSD

First IDE drive /dev/hda /dev/wd0

Second IDE drive /dev/hdb /dev/wd1

First SCSI drive /dev/sda /dev/sd0

Second SCSI drive /dev/sdb /dev/sd1

而在一个IDE驱动器的分区(FreeBSD slices)由以下方式标记:

Linux FreeBSD

First primary partition /dev/hda1 /dev/wd0s1

Second primary partition /dev/hda2 /dev/wd0s2

Third primary partition /dev/hda3 /dev/wd0s3

Fourth primary partition /dev/hda4 /dev/wd0s4

在我的FreeBSD的slice上的分区,由以下方式标记。这是默认的标记方法。如果你自定义安装FreeBSD,那么则有可能改变它。(/dev/hda4在例子中是一个FreeBSD slice)。

Linux label FreeBSD label FreeBSD mount point

/dev/hda5 /dev/wd0s4a /

/dev/hda6 /dev/wd0s4b swap

/dev/hda7 /dev/wd0s4e /var

/dev/hda8 /dev/wd0s4f /usr

如果你在Linux中运行“dmesg”,你将发现下面情况:(Linux的内核必须支持UFS文件系统)

Partition check:

hda: hda1 hda2 hda3 hda4

如果你已经在/dev/sd1s3 slice上安装了FreeBSD,并且/dev/sdb2是一个Linux的扩展分区,它包括了两个逻辑分区(/dev/sdb5和/dev/sdb6),比如:

Linux label FreeBSD label FreeBSD mount point

/dev/sdb7 /dev/sd1s3a /

/dev/sdb8 /dev/sd1s3b swap

/dev/sdb9 /dev/sd1s3e /var

/dev/sdb10 /dev/sd1s3f /usr

dmesg的输出:

Partition check:

sdb: sdb1 sdb2 sdb3

如果在你的FreeBSD slice中你有了问题之后,你有一个Linux的扩展分区,因为大多数Linux内核安装软盘被建立的时候没有包括UFS的支持,它们将不能识别FreeBSD的分区。在dmesg:(/dev/hda3是FreeBSD slice并且/dev/hda4是Linux的扩展分区)

Partition check:

hda: hda1 hda2 hda3 hda4

被看作:

Partition check:

hda: hda1 hda2 hda3 hda4

这将给出设备的错误信号,并且引起数据的丢失。我的建议是:允许在任何一个Linux扩展分区之后放入人的FreeBSD分区,并且在安装了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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有