Provided by: manpages-zh_1.6.3.2-1_all bug

NAME

       fdisk - Linux分區表操作工具軟件

總覽

       fdisk [-u]設備名

       fdisk -l [-u] [設備名 ...]

       fdisk -s分區 ...

       fdisk -v

描述

       硬盤可以被分成一個或多個邏輯磁盤,稱爲 分區。 這些分區信息都存放在硬盤0扇區的 分區表 中。

       在 BSD 風格中,分區被稱爲“磁盤片”和“磁盤標籤”

       Linux          至少需要一個分區,即用做它的          root         文件系統。         Linux
       可以使用交換文件和/或交換分區,交換分區更有效。      因此,通常用戶會創建第二個      Linux
       分區供交換分區使用。    在   Intel   兼容的硬件上,啓動系統的   BIOS   往往只能訪問   1024
       柱面之前的硬盤。 因此,使用大硬盤的用戶通常創建第三個只有幾兆大小的小分區, 通常用來裝配在
       /boot                                   ,用來存放內核映象和一些其它啓動時需要的附屬文件,
       所以應確保此分區必須是在BIOS可訪問的部分。
       出於安全方面的考慮、管理方面的原因、備份的需要或爲了某些測試,
       也可以將一個硬盤分成更多的分區使用。

       fdisk (以第一種形式調用)是一個以菜單問答形式出現的用來創建和修改分區的程序。  它可以辯認
       DOS 類型的分區表和 BSD 或 SUN 類型的磁盤標籤。

       設備 通常是下列之一:
                        /dev/hda
                        /dev/hdb
                        /dev/sda
                        /dev/sdb
       (/dev/hd[a-h]   指   IDE   硬盤,/dev/sd[a-p]   指   SCSI   硬盤,  /dev/ed[a-d]  指  ESDI
       硬盤,/dev/xd[ab] 指 XT 硬盤)。 設備名指整個硬盤設備。

       分區    是在    設備名    後跟一個分區號。例如:    /dev/hda1     是指系統在第一個     IDE
       硬盤上的第一個分區。   IDE   硬盤可以最多創建   63  個分區,SCSI  可以創建  15  個。  又見
       /usr/src/linux/Documnetation/devices.txt。

       一個   BSD/SUN   風格的磁盤標籤可以描述   8   個分區,    其中第三個應該是“整個磁盤”分區。
       不要在零柱面使用那些的確使用其第一扇區的分區,(比如交換分區) 因爲這將損壞磁盤標籤。

       一個   IRIX/SGI   風格的磁盤標籤可以描述  16  個分區,  其中第十一個應該是完整“卷標”分區,
       而第九個應該被標成“卷標頭”。 卷標頭將覆蓋分區表,即,它從零塊開始並缺省時延伸  5  個柱面。
       卷標頭中餘下的空間可以用來存放頭部目錄記錄信息。            不要有任何分區與此卷標頭重疊。
       同樣,也不要改變它的類形和在其中創建任何文件系統,  因爲這樣做將丟失分區表信息。  只有當將
       Linux 安裝在 IRIX/SGI 機器上或 在 Linux 中使用 IRIX/SGI 磁盤時纔會使用這種類形的標籤。

       一個         DOS         風格的分區表可以描述無限的分區。         零扇區用來存放         4
       個分區(稱爲主分區)的描述信息。
       其中可以有一個分區是擴展分區;此擴展分區也就是存儲各邏輯分區地方,
       是一個在組成鏈表的扇區裏存放的描述符,每個描述符都是一個對應分區的開頭.
       四個主分區,不管是否存在,都用數字 1-4 編號,而邏輯分區以 5 開始。

       在    DOS    風格的分區表中,   開始地址偏移量和每個分區的大小是以兩種不同的方式來存放的:
       以扇區數的絕對值來描述(佔   32   位)    和以柱面、磁頭、扇區三個一組的形式(佔    10+8+6
       個位)來描述。 前一種描述很好 - 如果每扇區 512 個字節的情況,這種方式可描述到 2TB 的大小。
       後一種方式有兩個不同的問題。                      第一個是這種                       C/H/S
       方式必須是在磁頭數和每磁道扇區數都已知的情況下才能使用。
       第二個是就算我們已經知道了這些數字,而只用 24 位來描述這些信息也是不夠的。 DOS  只使用這種
       C/H/S 的方式,Windows 則兩個都用,Linux 則不使用 C/H/S 的方式。

       如果可能,      fdisk     會自動獲得磁盤的幾何結構。這不一定是磁盤的物理結構(當然,現在的
       磁盤沒有真正的物理結構,同樣也不能以簡單的柱面/磁頭/扇區的形式來描述),    而是    MS-DOS
       用來供分區表使用的幾何結構。

       通常,缺省時這些都將工作得很好,               而且,如果磁盤上只有一個              Linux
       操作系統時也不會有任何問題。   然而,如果磁盤上還有其它操作系統,   那麼,用其它操作系統的
       fdisk  來生成其自身使用的至少一個分區是比較好的選擇。  當Linux啓動的時侯,它會掃描分區表,
       並由此推出和其它共存操作系統友好合作所需的(僞)幾何結構。

       當打印一個分區表時,系統會對分區表進行一次一至性檢查。
       這些檢查會驗證磁盤幾何結構和物理地址的開始、結束、指向和標識,
       同時在柱面的邊界檢查分區的開始和結束。(除了第一個分區)

       一些版本的  MS-DOS   在創建第一個分區時並不是從柱面邊界的開始處,   而是從第一柱面的第   2
       扇區處開始。      從柱面      1     開始的分區不能直接從柱面邊界開始,但這未必會造成困難,
       除非你在你的機器上安裝了 OS/2 操作系統。

       當執行了對分區表的更新後退出時,    程序會運行一次    sync()    和    BLKRRPART    ioct1()
       (從磁盤上重讀分區表信息)。  以前,在使用完  fdisk 後需要重啓系統。我認爲現在不需要這樣了
       -- 太快的重起可能導致未寫入磁盤的數據丟失。 注意,內核和磁盤硬件都可能緩存數據。

DOS6.x WARNING

       DOS6.x          的           FORMAT           命令會在分區的第一扇區的數據區查找一些信息,
       並認爲這些信息比分區表中的信息更可靠。    DOS    的   FORMAT   命令認爲   DOS   的   FDISK
       命令會在分區變化時    自動清除分區數據區的前    512    字節區域。    DOS     的     FORMAT
       將查看這些額外的信息, 甚至在給出了 /U 這個參數後也是如此。 我們認爲這是 DOS FORMAT 和 DOS
       FDISK 的臭蟲。

       如果你使用   cfdisk   或   fdisk   更改了    DOS    分區表的條目,    你必須同時使用    dd
       命令將該分區的前512個字節清零,  之後,你才能使用 DOS 的 FORMAT 命令對這個分區進行格式化。
       例如:如果你使用 cfdisk 去創建一個 DOS 分區表項目, 即分區 /dev/hda1,然後 (在退出  fdisk
       或   cfdisk   後重啓   Linux   使分區表合法化)   你就有必要使用如下命令  “dd  if=/dev/ero
       of=/dev/hda1 bs=512 count=1” 來將分區的前 512 個字節清零。

       當你使用 dd 命令時請 務必萬分小心  由於任何小的打印錯誤都將造成磁盤數據的失效。

       最好你還是使用由操作系統指定的分區工具軟件。 例如,當你創建 DOS 分區時應使用  DOS  FDISK,
       而創建 Linux 分區時則使用 Linux 的 fdisk 或 cfdisk。

選項

       -v     打印 fdisk 的版本信息並退出.

       -l     列出指定設備的分區表信息並退出。  如果沒有給出設備,那麼使用那些在 /proc/partitions
              (如果存在)提到的.

       -u     以扇區數而不是以柱面數的形式顯示分區表中各分區的信息.  -s   分區   將分區的   大小
              (單位爲塊)信息輸出到標準輸出

臭蟲

       在  Linux 中有很多版本的 *fdisk 類程序。 每一個都有自己的強項和缺點。分別試着使用 cfdiskfdisksfdisk.    (特別是,    cfdisk     是一個漂亮的程序,它只接受最嚴謹的分區表,
       而且它能生成高質量的分區表。              如果可能,你最好使用這個程序。             fdisk
       是一個有很多臭蟲的分區工具軟件,
       它所做的操作是模糊不清的,通常在碰巧的情況下它纔會正常的運行。  它唯一值得使用的地方是它對
       BSD     的磁盤標籤和非     DOS      的分區表有所支持,      儘量少用這個程序。      sfdisk
       是一個專爲黑客提供的程序,它的用戶界面很不友善, 但它更精確,也比 fdisk 和 cfdisk 更有效。
       另外,它只能以非交互的方式運行。

       IRIX/SGI 風格的磁盤標籤不再被當前的內核所支持, IRIX/SGI 頭目錄同樣也不是完全支持。

       選項“dump partition table to file”不可用

[中文版維護人]

       所羅門 <solomen@email.com.cn>

[中文版最新更新]

       2000/12/04

[中國 Linux 論壇 man 手冊頁翻譯計劃]

       http://cmpp.linuxforum.net

       本頁面中文版由中文 man 手冊頁計劃提供。
       中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh