⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 linux+freebsd-2.html

📁 Linux初学者最好的老师就是howto了。相当于函数man。
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">
 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.7">
 <TITLE>Linux+FreeBSD mini-HOWTO 中译版: FreeBSD 标示硬碟的方式</TITLE>
 <LINK HREF="Linux+FreeBSD-3.html" REL=next>
 <LINK HREF="Linux+FreeBSD-1.html" REL=previous>
 <LINK HREF="Linux+FreeBSD.html#toc2" REL=contents>
</HEAD>
<BODY>
<A HREF="Linux+FreeBSD-3.html">Next</A>
<A HREF="Linux+FreeBSD-1.html">Previous</A>
<A HREF="Linux+FreeBSD.html#toc2">Contents</A>
<HR>
<H2><A NAME="s2">2. FreeBSD 标示硬碟的方式</A></H2>

<P>Linux 和 FreeBSD 使用两种不同的方式来标示与切割硬碟. 
<H2><A NAME="ss2.1">2.1 FreeBSD ``slices'' 和 ``partitions''</A>
</H2>

<P>FreeBSD 只需要用硬碟上的一个主硬碟切割区.  
这个主切割区在 FreeBSD 的术语中被称为 <EM>``slice''</EM>.
然後它用 <CODE>disklabel</CODE> 这个程式在这个主硬碟切割区中制造逻辑切割区.
这些逻辑切割区在 FreeBSD 的术语中被称为<EM>``partitions''</EM>. 
这个观念与 Linux (和 DOS) 处理括充切割区中的逻辑切割区是非常相像的.
注意: Linux <CODE>fdisk</CODE> 程式的主功能表中并不会将 FreeBSD slice 中的 partitions 显示出来, 但是你可以使用命令 'b' 来显示 BSD 磁碟标签的讯息.
它的输出将如这样 : (<CODE>/dev/hda4</CODE> 是 FreeBSD 的 slice): 
<P>
<BLOCKQUOTE><CODE>
<PRE>
# 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
#
</PRE>
</CODE></BLOCKQUOTE>

在第一个栏位中的字母 `a'...`f' 与下面 FreeBSD slice 的例子中的是相同的.
字母`b'指的是 swap partition, 而`c'指的是整个 slice.
阅读 FreeBSD 文件以便获取指定这些字母给不同切割型态的``标准方法" 的更多资讯. 
<P>
<H2><A NAME="ss2.2">2.2 Linux 和 FreeBSD 中的硬碟与切割区标示.</A>
</H2>

<P>Linux 和 FreeBSD 中的硬碟是如下列方法标示的:
<BLOCKQUOTE><CODE>
<PRE>
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
</PRE>
</CODE></BLOCKQUOTE>
 
FreeBSD slice 是如下方法标示:
(<CODE>/dev/hda</CODE> 为□例):
<BLOCKQUOTE><CODE>
<PRE>
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
</PRE>
</CODE></BLOCKQUOTE>
 
FreeBSD slice 中的 partitions 如下述方法标示
(<CODE>/dev/hda4</CODE> 是例子中的 FreeBSD slice ):
<BLOCKQUOTE><CODE>
<PRE>
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
</PRE>
</CODE></BLOCKQUOTE>
 
如果你在 Linux中执行 <CODE>dmesg</CODE> 你将会看到如下 (Linux 的 kernel 必须有  <B>UFS</B> 支援才能奏效. 看 
<A HREF="Linux+FreeBSD-3.html#installlinux">安装并准备 Linux</A>) 部份:
<BLOCKQUOTE><CODE>
<PRE>
Partition check:
hda: hda1 hda2 hda3 hda4 &lt; hda5 hda6 hda7 hda8 >
</PRE>
</CODE></BLOCKQUOTE>
 
如果你在 <CODE>/dev/sdb3</CODE> slice 中安装 FreeBSD, 而且 <CODE>/dev/sdb2</CODE> 是一个含有两个逻辑切割的 Linux 扩充切割 (<CODE>/dev/sdb5</CODE> 及 <CODE>/dev/sdb6</CODE>), 之前的例子看起来将如同这样:
<BLOCKQUOTE><CODE>
<PRE>
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
</PRE>
</CODE></BLOCKQUOTE>
 
在 <CODE>dmesg</CODE> 的输出中看起来将如
<BLOCKQUOTE><CODE>
<PRE>
Partition check:
sdb: sdb1 sdb2 &lt; sdb5 sdb6 > sdb3 &lt; sdb7 sdb8 sdb9 sdb10 >
</PRE>
</CODE></BLOCKQUOTE>
 
如果你有一个 Linux 延伸磁区在 FreeBSD slice <EM>之後</EM>, 你便有了麻烦.
因为大多数的 Linux 核心安装磁片没有内含<B>UFS</B> 支援, 
它们认不得 FreeBSD slice 中的 partitions.
看到的(<CODE>/dev/hda3</CODE> 是 FreeBSD slice 而 <CODE>/dev/hda4</CODE> 是 Linux 延伸切割)
<P>
<BLOCKQUOTE><CODE>
<PRE>
Partition check:
hda: hda1 hda2 hda3 &lt; hda5 hda6 hda7 hda8 > hda4 &lt; hda9 hda10 >
</PRE>
</CODE></BLOCKQUOTE>

出现成:
<BLOCKQUOTE><CODE>
<PRE>
Partition check:
hda: hda1 hda2 hda3 hda4 &lt; hda5 hda6 >
</PRE>
</CODE></BLOCKQUOTE>
 
<P>这会导致错误的设施指定, 并会令资料遗失. 
我的建议是 <EM>永远把你的 FreeBSD slice 放在任何 Linux 延伸切割之後, 并且不要在安装 FreeBSD 後, 改变 Linux 延伸切割中的任何逻辑切割</EM>. 
<P>
<HR>
<A HREF="Linux+FreeBSD-3.html">Next</A>
<A HREF="Linux+FreeBSD-1.html">Previous</A>
<A HREF="Linux+FreeBSD.html#toc2">Contents</A>
</BODY>
</HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -