Manpages

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 [AT] email.cn>

[中 文 版 最 新 更 新 ]

2000/12/04

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

http://cmpp.linuxforum.net

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