歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> linux中sfdisk及parted的用法

linux中sfdisk及parted的用法

日期:2017/3/1 17:08:20   编辑:關於Linux
linux中sfdisk及parted的用法 SFDISK: sfdisk [-?Tvx][-d <硬盤>][-g <硬盤>][-l <硬盤>][-s <分區>][-V <硬盤>] sfdisk為硬盤分區工具程序,可顯示分區的設置信息,並檢查分區是否正常。 參數: www.2cto.com  -?或--help 顯示幫助。   -d<硬盤> 顯示硬盤分區的設置。   -g<硬盤>或--show-geometry<硬盤> 顯示硬盤的CHS參數。   -l<硬盤> 顯示後硬盤分區的相關設置。   -s<分區> 顯示分區的大小,單位為區塊。   -T或--list-types 顯示所有sfdisk能辨識的文件系統ID。   -v或--version 顯示版本信息。   -V<硬盤>或--verify<硬盤> 檢查硬盤分區是否正常。   -x或--show-extend 顯示擴展分區中的邏輯分區。 PARTED: 我們在工作中會發現,我們使用平時的分區工具fdisk不能創建大於2T的分區, 是linux不支持嗎?不對,現在的Linux內核中支持Large Block Device,完全可以使用大於2T的塊設備 使用parted 建立大小超過2T的分區 假設/dev/sdb大小為7T的存儲設備 parted /dev/sdb print 查看分區的情況,找到起始位置 命令行模式的選項 當你調用命令行模式時,Parted的語法是這樣的: # parted [option] device [command [argument]] 有幾個選項可以供你使用。 選項: ‘-h’ ‘--help’ 顯示幫助信息 ‘-i’ ‘--interactive’ 進入交互模式 ‘-v’ ‘--version’ 顯示軟件的版本號 Parted 交互模式下的命令 GNU Parted 提供以下命令: check(檢查) 格式:check number 檢查編號中所指定的文件系統是否有什麼錯誤.。 例: (parted) check 1 檢查分區1上的文件系統. cp(復制) 格式:cp [from-device] from-number to-number 將分區 from-number上的文件系統完整地復制到分區to-number 中。分區to-number 上的數據會被全部刪除。你可以再指定一個來源硬盤的設備名稱 from-device來指定來源分區所在的硬盤。 該命令支持以下文件系統: * ext2, ext3 (所提供的目標分區必須比源分區要大) * fat16, fat32 * linux-swap (相當於再目標分區執行mkswap 命令) * reiserfs (如果安裝了libreiserfs庫) 例: (parted) cp /dev/hdb 2 3 將/dev/hdb上的第二個分區的內容復制到第三個分區上。 help(幫助) 格式:help [command] 輸出一個命令的幫助信息 例: (parted) help resize 輸出rezize 命令的幫助信息。 mklabel(建立分區表) 格式:mklabel label-type 建 立一個 label-type 類型的磁盤分區表。新的分區表不會有任何分區。這個命令通常不會破壞你的數據,但是它有可能讓你的數據變得不可讀。這是你就需要用到rescue 命令來恢復分區。關於rescue 命令的用法請參見後文。Parted 能在各種分區表上工作。 label-type 必須是一下這些類型: * bsd * loop (raw disk access) * gpt * mac * msdos * pc98 * sun 例: (parted) mklabel msdos 建立一個MS-DOS格式的分區表。這對於PC而言是一個非常常見的操作。 mkfs(建立文件系統) 格式:mkfs number fs-type 在指定的分區上建立指定的文件系統。這個命令會破壞該分區上的所有數據。 該命令支持以下文件系統: * ext2 * fat16, fat32 * linux-swap * reiserfs (如果安裝了libreiserfs庫) 例: (parted) mkfs 2 fat32 在第二個分區上建立FAT32格式的文件系統。 mkpart(建立新分區) 格式:mkpart part-type [fs-type] start end 建 立一個新的分區。若要建立非擴展分區,就最好用fs-type來指定文件系統。start和end是新分區開始和結束的具體位置。part-type是以 下類型之一: primary(主分區), extended(擴展分區), logical(邏輯分區). 擴展分區和邏輯分區只對msdos 和dvh分區表有效。 fs-type必須是以下文件系統: * ext2 * fat16, fat32 * hfs, hfs+, hfsx * linux-swap * NTFS * reiserfs * ufs 例: (parted) mkpart logical 0.0 692.1 建立一個包含ext2文件系統的邏輯分區,其位置是從磁盤的開始位置(0.0)到692.1M之間 。 mkpartfs(建立分區及其文件系統) 格式:mkpartfs part-type fs-type start end 建 立一個新的分區,並在上面建立文件系統。與mkpart相似,分區的位置處於begin和end之間,默認的單位是MB.。請勿使用這個命令來恢復一個被 刪除了的分區(應使用mkpart)。part-type是以下類型之一: primary(主分區), extended(擴展分區), logical(邏輯分區). 擴展分區和邏輯分區只對msdos 和dvh分區表有效。 fs-type必須是以下文件系統: * ext2 * fat16, fat32 * linux-swap * reiserfs (如果安裝了libreiserfs庫) 例: (parted) mkpartfs logical ext2 440 670 建立一個a包含ex2格式文件系統的邏輯分區。其開始位置是440 MB,結束位置是670MB。 move(移動) 格式:move number start end 該 命令能將選定的分區在硬盤中移動。start 可以指定一個新的分區的起始位置。不過,你不能將一個分區移到另一個分區上。也就是說,你只能在空閒的地方中移動分區。如果你想改變分區的大小,那麼你所 需要的命令是resize 。另外,雖然分區被移動了,但它的分區編號是不會改變的。 該命令支持以下文件系統: * ext2, ext3 (所提供的目標分區必須比源分區要大) * fat16, fat32 * linux-swap * reiserfs (如果安裝了libreiserfs庫) 例: (parted) move 2 150M 500M 將編號為2的分區移動到硬盤中150M至500M的位置。 name (命名) 格式:name number name 為編號所指定的分區命名(只支持GPT, Mac, MIPS 和PC98 格式的分區)。名字可以用引號括起來。 print (輸出信息) 格式:print [number] 輸出parted正在操作的硬盤的分區表的信息,或者是某一個具體分區的信息。 quit (退出) 格式:quit 退出Parted. 只有當Parted退出後,Linux內核才會知道磁盤的設置已經被改變了。但是實際上只要你一執行一條命令,更改馬上就會寫入磁盤。不過,磁盤緩存有可能延緩寫入的操作。 rescue (恢復) 格式:rescue start end 如果你不小心用Parted的rm命令刪除了一個分區,那麼這個命令可以幫你恢復。你需要給出所誤刪的分區的大概的開始和結束的位置。Parted 就會在你給出的磁盤區域內去尋找,如果找到這個分區,那麼Parted 就會詢問你是否重新建立這個分區。 resize (調整大小) 格式:resize number start end 將編號所指定的分區調整大小。分區的開始位置和結束位置由start和end決定。resize不會改變分區的編號。注意,如果更改擴展分區的大小,那麼你必須保證新的分區大小能夠容納裡面的邏輯分區。另外,在調整大小前你無須對分區進行碎片整理。 該命令支持以下文件系統: * ext2, ext3 – 限制:新的分區開始位置必須和原來的開始位置相同。也就是說,你只能向後擴展分區的大小。 * fat16, fat32 * hfs, hfs+, hfsx – 限制:新的分區開始位置必須和原來的開始位置相同。而且新的end必須小於原來的end。也就是說,你只能夠縮小分區。 * linux-swap * reiserfs (如果安裝了libreiserfs庫) 例: www.2cto.com (parted) resize 3 200M 850M 改變編號為3的分區的大小。其新的位置是200MB至 850MB 之間。 rm (刪除分區) 格式:rm number 將 編號所指定的分區刪除。如果你誤刪了某個分區,那麼你還可以用mkpart來挽救它(而不是用mkpartds)。注意,如果你使用的是MSDOS格式的 分區表,那麼假如你刪除了一個邏輯分區,那麼該分區後面的邏輯分區的編號都會相應地向前改變。例如,你刪除了編號為6的邏輯分區,那麼後面的7、8號邏輯 分區的編號將會改變,分別變成6、7號邏輯分區。若在Linux下。這意味著你可能要改變/etc/fstab文件。 例: (parted) rm 3 將編號為3的分區刪除。 select (選擇設備) 格式:select device 選擇Parted將要編輯的磁盤設備。這個磁盤設備可以是一個Linux硬盤設備,一個軟盤、一個軟RAID磁盤陣或者是LVM邏輯卷。 例: (parted) select /dev/hdb 選擇/dev/hdb作為Parted所要編輯的設備。 set (設置標記) 格式:set number flag state 更改編號所指定的分區的標記。哪些標記可用是由你的分區表決定的。標記有兩種狀態,要麼是on(生效),要麼是off(失效)。 ‘boot’ (用於Mac, MS-DOS, PC98分區表) - 如果你想從某個分區引導,那麼你應該將這個分區的boot標記設置為on。對於MS-DOS分區表,一個硬盤上只能有一個分區是可引導的。如果你將 LILO裝到某個分區上,那麼這個分區一定是可引導的(也就是說你應該將安裝了LILO的分區的boot標記設為on)。對於PC98分區表,所有 ext3分區都必須是設置為可引導的。(Parted會對此強行操作) ‘lba’ (用於MS-DOS分區表)-這個標記可以告訴MS DOS、MS Windows 9x和 MS Windows ME等系統使用LBA(Logic Block Addressing)模式。 ‘root’ (用於Mac分區表) - 如果某分區是Linux系統的根分區,那麼就要對該分區啟用這個標記。 ‘swap’ (用於Mac分區表) - 如果某分區是Linux系統的交換分區,那麼就要對該分區啟用這個標記。 ‘hidden’ (用於MS-DOS, PC98分區表) - 啟用這個標記能使一個分區‘隱藏’起來。(僅對微軟的操作系統有效) www.2cto.com ‘raid’ (用於MS-DOS分區表)-啟用這個標記能夠告訴Linux系統這是一個軟RAID磁盤陣。 ‘LVM’(用於MS-DOS分區表)-啟用這個標記能夠告訴Linux系統這是一個LVM邏輯。 使用print命令能夠將所有能用的標記顯示出來。 例: (parted) set 1 boot on 將編號為1的分區的boot標記設定為on(生效) unit (設置單位) 格式:unit unit 為Parted選擇一個表示磁盤大小的單位。之後,凡是關於磁盤的位置(如分區的開始位置等等)的數字都是使用這個單位,你就可以不用給出單位後綴。(如:如果你選擇了MB作為單位,那麼512就代表512MB,你就不用額外打多個MB之類的東西)你可以使用下列單位: www.2cto.com ‘s’ :扇區 (通常一個扇區的大小是512個字節) ‘B’ byte ‘kB’ kilobyte (1000 bytes) ‘MB’ megabyte (1000000 bytes) ‘GB’ gigabyte (1000000000 bytes) ‘TB’ terabyte (1000000000000 bytes) ‘%’ 表示占整個磁盤設備的百分之多少(顯而易見,這個數字必須在0和100之間) ‘cyl’ 柱面(這個具體的位置和BIOS的CHS地址有關) ‘chs’ 柱面(cylinders),磁頭(heads),扇區(sectors)的地址(這個具體的位置和BIOS的CHS地址有關) ‘compact’ 這是一個比較奇怪的單位。輸入時是使用MB作為單位,輸出時的單位有可能不同,但是它確保輸出時的單位能使用戶一眼就看得出來磁盤的大小的,而不用心裡默 默地進行復雜的換算。(例如。它會使用1GB而不是使用1024MB,使用2MB而不是2048KB) 一般來說,Parted只會 使用默認的單位進行輸出,除非輸入的時候你沒有給出數字的後綴。你可以在輸入的數字後面加上一個單位來代替默認的單位(單位和數字之間是沒有空格的)。
Copyright © Linux教程網 All Rights Reserved