








			Linux+FreeBSD mini-HOWTO 

		: Niels Kristian Bech Jensen, nkbj@image.dk

		     :  tjhuang@technologist.com

		 v1.4, 23 January 1998 : 17 March 1998



				   Abstract

     ļ;һϵͳʹ Linux  FreeBSD.  FreeBSD,
     ϵͳλӰ, һ swap ռ.
     ڶļ֮ǰ, ӦҪʹ Linux Ӳָľ.
     ƪļκε, , 뽨, 벻Ҫԥ,
     дʼ.	 Ҳϣͬʱʹ Linux  NetBSD  OpenBSD
     ˵˵.



1.  ʲ FreeBSD?

FreeBSD  Linux һǸѵ, ͬ unix ҵϵͳ.  ҪĲ, Linux
׵β·չ,  FreeBSD ǻ 4.4BSD (ؿѧ Distribution)
 redistribution һݶ.  ҲΪ 4.4BSD-lite.
ʵҲʹ: FreeBSD  Linux ''unix.	FreeBSD ֻ
Intel PC ƽ̨(i386)ִ. ֲ DEC Alpha ƽ̨İ汾Ŀǰڱ.
FreeBSD Ӳ Linux ǳ.

FreeBSD ķչ Linux ȽǱȽϷյ.
ҪľһԱŶӸ.  ĸımail-list
.  FreeBSD չ, (ͬ Linux һ) : ``-current'' 
``-stable".  ¹ܵķչ``-current"չ, ``-sta
ble"еĸıҪǼȥ bug .

FreeBSD ͬ Linuxһѵʹ(re-)ɢ.  ϵͳĴ󲿷BSD
Ȩ·,  GNU GPL  GNU LPGL .

 FreeBSD Inc.1	ҵѶϵͳ.   ``-sta
ble"İ汾 ``-current"չʽ Walnut Creek CDROM2  . (ʹ
FreeBSD ṩ web  ftp )


2.  FreeBSD ʾӲķʽ

Linux  FreeBSD ʹֲͬķʽʾиӲ.

____________________

1. <URL:http://www.freebsd.org/>

2. <URL:http://www.cdrom.com/>

Linux+FreeBSD mini-HOWTO  					      1





Linux+FreeBSD mini-HOWTO  					      2



2.1  FreeBSD ``slices''  ``partitions''

FreeBSD ֻҪӲϵһӲи.  и FreeBSD
бΪ ``slice''.  Ȼ disklabel
ʽӲи߼и.  Щ߼и FreeBSD
бΪ``partitions''.   Linux ( DOS)
ие߼иǷǳ.  ע: Linux fdisk
ʽܱвὫ FreeBSD slice е partitions ʾ,
ʹ 'b' ʾ BSD ŵǩѶϢ.   :
(/dev/hda4  FreeBSD  slice):

     # 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
     #


ڵһλеĸ `a'...`f'  FreeBSD slice еͬ.
ĸ`b'ָ swap partition, `c'ָ slice.  Ķ FreeBSD
ļԱȡָЩĸͬи̬``׼" ĸѶ.

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


FreeBSD slice ·ʾ: (/dev/hda Ϊ):











Linux+FreeBSD mini-HOWTO  					      3



     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 е partitions ʾ (/dev/hda4 е FreeBSD
slice ):

     Linux label FreeBSD label Default 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  kernel   UFS
֧ԮЧ.  װ׼ Linux (section 3.1, page 4)) :

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


 /dev/sdb3 slice аװ FreeBSD,  /dev/sdb2
һ߼и Linux и (/dev/sdb5  /dev/sdb6),
֮ǰӿͬ:

     Linux label FreeBSD label Default 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 < sdb5 sdb6 > sdb3 < sdb7 sdb8 sdb9 sdb10 >


һ Linux  FreeBSD slice ֮, 鷳.  Ϊ
Linux İװƬûںUFS ֧Ԯ, ϲ FreeBSD slice е partitions.
(/dev/hda3  FreeBSD slice  /dev/hda4  Linux и)

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


ֳ:

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









Linux+FreeBSD mini-HOWTO  					      4



ᵼ´ʩָ, ʧ.  ҵĽ Զ FreeBSD slice
κ Linux и֮, ҲҪڰװ FreeBSD , ı Linux
иеκ߼и.


3.   Linux  FreeBSD Swap ռ

һƪ Linux  FreeBSD һ Swap и.
ܻбķͬĽ.  õ Linux  Red Hat 4.1  4.2
(Linux  2.0.29  2.0.30)  FreeBSD 2.2.2.  Ը, ڰװ
Linux ֮ǰȰװ FreeBSD, Ҫע FreeBSD slice  partition ˳.

3.1  װ׼ Linux

һƽһİװ Linux. Ӳ¸ FreeBSD slice Ŀռ.
㲻 Linux  Swap и, Ҫһи, ͰҪ FreeBSD
Ŀռ.  , ɾи,  FreeBSD  .

 Linux İװ, Ҫ± kernel. ⲻ, Բο The
Linux Kernel HOWTO.     UFS ϵͳ ֧Ԯ,  BSD disklabel
(FreeBSD partition tables) ֧Ԯ.

     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.  н Linux swap и,
ɾ, (ʹ FreeBSD fdisk ʽ.)  עһ FreeBSD slice  parti
tions ˳.  ʹԤıǩ, ڶ partition swap и. 
FreeBSD İװ, ʹLinuxĿƬ ¿ 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
partition Ĺ.

     /dev/hda6 none swap sw 0 0










Linux+FreeBSD mini-HOWTO  					      5



FreeBSD κ̬и swap и,  Linux  swap
иҪرǩ.  ǩ mkswap .  FreeBSD ʹõ swap
иʱǩƻ, ÿν Linux ʱִ mkswap.
ҪԶִ, ҳִ swapon  script ڿʱִ.   Red
Hat ,  /etc/rc.d/rc.sysinit. һзŵ swapon -a ǰ:

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


⽫ÿοʱ,  /etc/fstab еκ swap иִ mkswap,
ȡ (ʹ ``#'' һеĵһԪ)

¿ Linux , ʹ free  swap ռĴС.
Ҳ¿ FreeBSD ȷһжԤڵ.	û,
ʹ˴и swap и.  ΨһĽ취, ٰװ
FreeBSD, һ. Ǻõĵʦ. :-)


4.  ʹ LILO  FreeBSD

Էǳ׵ʹ LILO  FreeBSD. Ҫʹ LILO, Ҫװ FreeBSD
 boot loader (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




5.  ܹϵͳ

5.1   Linux мܹ UFS ϵͳ

ҵ, Linux Ķ UFS ֧Ԯ. ȥܹ UFS ϵͳʱ,
ֻõһЩѶϢ(ϵͳʵѾȥ, ȴܶκζ).
 Linux 2.0.xx   (xx<30) һ (ALPHA) 汾 UFS ϵͳ֧Ԯ, 
SunSite3 .  ⱻΪ U2FS, Ŀǰİ汾 u2fs-0.4.3.tar.gz.  U2FS
еķʽװ(u2fs-0.4.3.tar.gz Ǵ/usr/src):



____________________

3. <URL:ftp://sunsite.unc.edu/pub/Linux/ALPHA/ufs/>







Linux+FreeBSD mini-HOWTO  					      6



     cd /usr/src
     tar xvzf u2fs-0.4.3.tar.gz
     patch -p0 -E < u2fs-0.4.3.patch



Linux  2.0.31 µĺ(u2fs-0.4.4.tar.gz), µ 2.1.xx õ
U2FS汾,  վ4  ҵ.  ½֧Ԯ U2FS ϵͳ  BSD
disklabel ĺ.  ο װ׼ Linux (section 3.1, page 4)
õ. ʹU2FSʱ, ԺԺĵ UFS ϵͳ ֧Ԯ.
µĺİװ, ʹеָܹ UFS ϵͳ(
FreeBSD slice еи,  swap и.

     mount -t u2fs /dev/hda8 /mnt


 UFS ֧ԮΨ. ǼUFS ϵͳжȡ,㲻ܶд.

5.2   FreeBSDϼܹ ext2fs ϵͳ

Ҫ FreeBSD мܹ ext2fs ϵͳ, ҪȽһ֧Ԯ ext2f ĺ.  
FreeBSD ļν.  ⼸

     options "EXT2FS"


ºĵ趨.  ʹµĺ, ⼸ܹ
ext2fs ϵͳ

     mount -t ext2fs /dev/wd0s3 /mnt


ע: 㲻ܰ ext2fs ϵͳܹ FreeBSD и.

 FreeBSD ĳЩ, ڹر FreeBSD ǰже ext2fs ϵͳ.
 ext2fs ϵͳδжǰ͹ر FreeBSD, FreeBSD 㲻 sync UFS
ϵͳ.  ᵼFreeBSD´ʱ fsck ִ. ݱ˵``-cur
rent" չб.


6.  ִִе

6.1   Linux ִ FreeSBD ִе

iBCS package ṩ Linux ִ FreeBSD ִе֧Ԯ;
̫Ͼûά. Ҳܳɹ.  ˵ؽ,
.

6.2   FreeBSD ִ Linux ִе

FreeBSD ִ Linux ִе,  a.out ELF ʽ.  Ҫ,

____________________

4. <URL:http://www.image.dk/~nkbj/u2fs/>







Linux+FreeBSD mini-HOWTO  					      7



Ҫȡ:

  1.  뿪 Linux ݵĻ. Ҫ (in FreeBSD 2.2.2 ---
      汾ϸڿܲͬ) Ҫ޸/etc/rc.conf , ޸

	   linux_enable="NO"


      

	   linux_enable="YES"

  2.  밲װ Linux ĳʽ.  FreeBSD 2.2.2 бΪ pack
      agelinux_lib-2.4.tgz (µİ汾Ѿ.) ִ

	   pkg_add <path_to_package>/linux_lib-2.4.tgz


      װpackage. <path_to_package> packageŵĿ¼.

  3.  װҪִе Linux ʽ. Щʽⰲװ UFS  ext2fs ϵͳ.
      ½  FreeBSD ϼܹ ext2fs ϵͳ (section 5.2, page 6) ȡ
      FreeBSD ʹ ext2fs ϵͳĸѶ.

ѳɹʹЩ FreeBSD 2.2.2 ִ Linux  Applixware 4.3 
Netscape 3.01 ( ELF ʽ), (ǵ, ֪ FreeBSD  Netscape 4.) 
FreeBSD ļ˽й.


7.  οȤļ

° mini-HOWTO ܹ ҵ homepage5  , ָʽ ( SGML 
PostScript.)  ļѱ Mr. Teruyoshi Fujiwara , Ϊ JF project6
һ.

FreeBSD ֲ FreeBSD FAQ  FreeBSD һɢ. ҲFreeBSD Inc.7
б.  վҲкܶ FreeBSD Ѷ.

Linux Kernel HOWTO ɢΪ The Linux Documentation Project8	һ.


8.  лͰȨ

л*BSD ʹȺ9 ԱĻشһλ FreeBSD ֵ, Ҳл Mr. Takeshi
Okazaki ע⵽U2FS Ĵ.

8.1  Disclaimer

ȻļṩѶϢǱȷ, ߱˽Ϊļеݸ.
ԼеʹЩɺ͡ķ.

8.2  Copyright

Copyright (c) 1997, 1998 by Niels Kristian Bech Jensen. This document may be
distributed only subject to the terms and conditions set forth in the LDP
license10 .  Ȩ Copyright (c) 1997, 1998 by Niels Kristian Bech Jensen.
ļֻ the LDP license11  ĺ±ɢ.





Linux+FreeBSD mini-HOWTO  					      8





















































____________________

10.<URL:http://sunsite.unc.edu/LDP/LICENSE.html>

11.<URL:http://sunsite.unc.edu/LDP/LICENSE.html>











				   CONTENTS



1. ʲ FreeBSD?  ......................................................... 1

2. FreeBSD ʾӲķʽ ................................................... 1
   2.1 FreeBSD ``slices''  ``partitions'' ................................. 2
   2.2 Linux  FreeBSD еӲиʾ. ............................... 2

3.  Linux  FreeBSD Swap ռ ...................................... 4
   3.1 װ׼ Linux ..................................................... 4
   3.2 װ FreeBSD ......................................................... 4
   3.3  Linux 趨 FreeBSD  swap и ................................. 4

4. ʹ LILO  FreeBSD  ................................................ 5

5. ܹϵͳ ............................................................. 5
   5.1  Linux мܹ UFS ϵͳ ......................................... 5
   5.2  FreeBSDϼܹ ext2fs ϵͳ ..................................... 6

6. ִִе ......................................................... 6
   6.1  Linux ִ FreeSBD ִе ..................................... 6
   6.2  FreeBSD ִ Linux ִе ..................................... 6

7. οȤļ ................................................. 7

8. лͰȨ ............................................................... 7
   8.1 Disclaimer ........................................................... 7
   8.2 Copyright  ........................................................... 7


























				       i


