亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

UNIX硬盤分區(qū)簡介

瀏覽:113日期:2024-07-04 11:05:35
寫這份文檔的初衷是在網(wǎng)絡(luò)上和一些朋友聊天的時(shí)候,常常會(huì)被問到這個(gè)問題,回答了很多次。為了一勞永逸的解決這個(gè)問題,決定寫一份文檔,方便以后再次被問到的時(shí)候copy,呵呵。同時(shí),也是為了幫助自己不斷鞏固這些知識(shí),算是一份粗糙的筆記吧。 “Unix硬盤分區(qū)簡介”這個(gè)標(biāo)題有些大,本來只是為了介紹一下Solaris和Linux的分區(qū),但是也希望對(duì)其他UNIX熟悉的朋友們分享你們的知識(shí),將你們所熟悉的UNIX,例如FreeBSD,ScoUNIX,HpUNIX等的硬盤分區(qū)知識(shí),share出來。如果發(fā)現(xiàn)了文章之中的錯(cuò)誤,請(qǐng)聯(lián)系我(E-Mail:cqwlyh@263.net;MSN:cqwlyh@263.net),如果對(duì)文章進(jìn)行了修改,請(qǐng)留下您的名字和聯(lián)系方式。 ok,閑話少說,讓我們進(jìn)入正題吧: 1.Solaris硬盤分區(qū)簡介 Solaris下,一個(gè)磁盤包含8個(gè)分區(qū),標(biāo)記為0-7。此信息可以通過format命令,然后選擇一個(gè)硬盤來看到,例如,在我自己的系統(tǒng)中(Solaris 9,Ultra 60),顯示出來的信息如下: # format Searching for disks...done AVAILABLE DISK SELECTIONS: 0. c0t0d0 <SUN18G cyl 7506 alt 2 hd 19 sec 248> /pci@1f,4000/scsi@3/sd@0,0 Specify disk (enter its number): 0 selecting c0t0d0 [disk formatted] Warning: Current Disk has mounted partitions. FORMAT MENU: disk - select a disk type - select (define) a disk type partition - select (define) a partition table current - describe the current disk format - format and analyze the disk repair - repair a defective sector label - write label to the disk analyze - surface analysis defect - defect list management backup - search for backup labels verify - read and display labels save - save new disk/partition definitions inquiry - show vendor, product and revision volname - set 8-character volume name !<cmd> - execute <cmd>, then return quit format> p PARTITION MENU: 0 - change `0' partition 1 - change `1' partition 2 - change `2' partition 3 - change `3' partition 4 - change `4' partition 5 - change `5' partition 6 - change `6' partition 7 - change `7' partition select - select a predefined table modify - modify a predefined partition table name - name the current table print - display the current table label - write partition map and label to the disk !<cmd> - execute <cmd>, then return quit partition> 不要看到內(nèi)容這么多,就被嚇住了,其實(shí),format命令之后0. c0t0d0 <SUN18G cyl 7506 alt 2 hd 19 sec 248>/pci@1f,4000/scsi@3/sd@0,0所顯示出來的含義很簡單,0. c0t0d0就代表這臺(tái)Ultra 60里面只裝了一個(gè)硬盤(至于c0t0d0的具體含義,稍后會(huì)介紹),<SUN18G cyl 7506 alt 2 hd 19 sec 248>代表的是這個(gè)硬盤的大小和柱面信息,/pci@1f,4000/scsi@3/sd@0,0所代表的,就是這個(gè)硬盤的實(shí)際物理地址。這些信息看起來很復(fù)雜,其實(shí)一般都只需要看看format命令抓出來的硬盤數(shù)量,是不是我們裝在系統(tǒng)上的數(shù)量,例如你裝了兩個(gè)硬盤,但是這里只有一個(gè)硬盤的信息,就需要認(rèn)真面對(duì)了。 FORMAT MENU: disk - select a disk type - select (define) a disk type partition - select (define) a partition table current - describe the current disk format - format and analyze the disk repair - repair a defective sector label - write label to the disk analyze - surface analysis defect - defect list management backup - search for backup labels verify - read and display labels save - save new disk/partition definitions inquiry - show vendor, product and revision volname - set 8-character volume name !<cmd> - execute <cmd>, then return quit format> p 這里所列出來的,是可以使用的命令,比如我在最下面format>,就是用了p這個(gè)命令(慢點(diǎn),上面沒有p這個(gè)命令啊?其實(shí),這里p就是partition的簡寫),然后,列出了以下內(nèi)容: PARTITION MENU: 0 - change `0' partition 1 - change `1' partition 2 - change `2' partition 3 - change `3' partition 4 - change `4' partition 5 - change `5' partition 6 - change `6' partition 7 - change `7' partition select - select a predefined table modify - modify a predefined partition table name - name the current table print - display the current table label - write partition map and label to the disk !<cmd> - execute <cmd>, then return quit partition> OK,到這里,我們的目的也達(dá)到了,這些信息應(yīng)該很清楚的證明了:Solaris下,一個(gè)磁盤包含8個(gè)分區(qū),標(biāo)記為0-7。后面的仍然是一些可以用到的命令,這些命令的具體含義,大家可以看命令后面的英文介紹,至于怎么使用,以后再說。下面我們將進(jìn)入今天的重點(diǎn)。 向一塊硬盤寫入數(shù)據(jù)之前,首先需要將其分區(qū)和格式化,這個(gè)過程一般可以分為3個(gè)步驟: 1. 物理格式化,也就是通常所說的低級(jí)格式化(Low-Level Formatting,LLF); 2. 分區(qū); 3. 邏輯格式化,也就是通常所說的高級(jí)格式化(High-Level Formatting,HLF) 低級(jí)格式化的時(shí)候,硬盤被分成若干個(gè)磁道,這些磁道又被分成若干個(gè)扇區(qū),每個(gè)扇區(qū)填充了隨機(jī)數(shù)據(jù)。幾乎所有的硬盤在出廠前都已經(jīng)被低級(jí)格式化過,所以,用戶只要對(duì)硬盤進(jìn)行下面兩個(gè)步驟(分區(qū)和邏輯格式化)就可以了。 分區(qū)的動(dòng)作將硬盤分成幾個(gè)部分,成為分區(qū)或者是分片(注意:前面的“分區(qū)”是動(dòng)詞,后面的是名詞哦)。每個(gè)分區(qū)/分片由若干個(gè)柱面組成。絕大多數(shù)下,Solaris中的一個(gè)硬盤分區(qū)對(duì)應(yīng)一個(gè)文件系統(tǒng)。一個(gè)分區(qū)不能包含多個(gè)文件系統(tǒng);同樣,一個(gè)文件系統(tǒng)也不能跨越多個(gè)分區(qū)。Solaris中,對(duì)硬盤進(jìn)行分區(qū),就是使用我們開始的時(shí)候使用過的format命令。 當(dāng)Solaris進(jìn)行高級(jí)格式化的時(shí)候,將每個(gè)分區(qū)分成許多柱面組,每個(gè)柱面組包括了幾個(gè)連續(xù)的柱面。文件系統(tǒng)在這些柱面組中建立文件和目錄,并盡量將同一個(gè)文件的數(shù)據(jù)保存在同一個(gè)柱面組中。這樣的機(jī)制能夠保證磁頭讀取數(shù)據(jù)的時(shí)候移動(dòng)最少,從而加快數(shù)據(jù)的讀取速度。Solaris中使用newfs命令來實(shí)現(xiàn)高級(jí)格式化,默認(rèn)的文件系統(tǒng)是UNIX文件系統(tǒng)(UFS:Unix File System),它使用下列類型的塊: 1. 引導(dǎo)塊:存儲(chǔ)系統(tǒng)啟動(dòng)時(shí)所需的信息 2. 超級(jí)塊:存儲(chǔ)文件系統(tǒng)信息 3. 索引節(jié)點(diǎn)(i節(jié)點(diǎn)):存儲(chǔ)文件系統(tǒng)中的單個(gè)文件信息 4. 存儲(chǔ)塊/數(shù)據(jù)塊:存儲(chǔ)文件數(shù)據(jù) 下面來詳細(xì)介紹一下這幾種類型的塊。 引導(dǎo)塊: 引導(dǎo)塊存儲(chǔ)系統(tǒng)啟動(dòng)時(shí)所需的信息。引導(dǎo)塊總是位于硬盤的第一個(gè)柱面組,占用分區(qū)的前8KB。 超級(jí)塊: 超級(jí)塊存儲(chǔ)文件系統(tǒng)信息,它包含了下列信息: 1. 文件系統(tǒng)中總塊數(shù)(文件系統(tǒng)大小) 2. 文件系統(tǒng)中數(shù)據(jù)塊的數(shù)目 3. 索引節(jié)點(diǎn)的數(shù)目 4. 柱面組的數(shù)目 5. 塊的大小 6. 磁盤碎片的大小 7. 空閑塊的個(gè)數(shù) 8. 空閑的索引節(jié)點(diǎn)的個(gè)數(shù) 超級(jí)塊對(duì)文件系統(tǒng)及其重要,所以Solairs系統(tǒng)采用多個(gè)備份來確保它的安全。偶爾,當(dāng)沒有正常關(guān)閉系統(tǒng)或硬盤出現(xiàn)故障的時(shí)候,會(huì)造成默認(rèn)超級(jí)塊不能正確讀取或者是和其備份的超級(jí)塊不一致。這時(shí),就需要進(jìn)行修復(fù)工作。通常在重新啟動(dòng)系統(tǒng)的時(shí)候,系統(tǒng)會(huì)調(diào)用fsck命令來自動(dòng)完成。當(dāng)fsck發(fā)現(xiàn)默認(rèn)的超級(jí)塊已經(jīng)損壞而且無法自動(dòng)修復(fù)的時(shí)候,會(huì)提示用戶手動(dòng)進(jìn)行修復(fù)。 手動(dòng)進(jìn)行修復(fù)的時(shí)候,可以根據(jù)以下幾個(gè)步驟進(jìn)行: 1. 以單用戶的身份進(jìn)入系統(tǒng),例如在PROM的模式下(即ok狀態(tài)下)用命令boot -s可進(jìn)入單用戶模式,或者在系統(tǒng)中sync;sync;sync;init 0也可進(jìn)入單用戶模式(至于什么是單用戶模式,以后會(huì)詳細(xì)介紹) 2. 如果損壞的文件已經(jīng)安裝到文件樹中,可以進(jìn)入另一個(gè)目錄,然后將損壞的文件系統(tǒng)卸載,例如: #cd / #umount /var 3. 使用newfs -N命令顯示超級(jí)塊的值,此命令會(huì)列出備用的超級(jí)塊在文件系統(tǒng)中的位置: # newfs -N /dev/dsk/c0t0d0s1 /dev/rdsk/c0t0d0s1: 961248 sectors in 204 cylinders of 19 tracks, 248 sectors 469.4MB in 13 cyl groups (16 c/g, 36.81MB/g, 17664 i/g) super-block backups (for fsck -F ufs -o b=#) at: 32, 75680, 151328, 226976, 302624, 378272, 453920, 529568, 605216, 680864, 756512, 832160, 907808, 4. 從newfs -N命令列出的備用超級(jí)塊中選擇一個(gè)作為fsck命令的一個(gè)選項(xiàng)進(jìn)行修復(fù): #fsck -F ufs -o b=453920 /dev/rdsk/c0t0d0s1 索引節(jié)點(diǎn) 索引節(jié)點(diǎn)包含了一個(gè)文件除去文件名以外的所有信息。一個(gè)索引節(jié)點(diǎn)占用128字節(jié)的磁盤空間,它包含了下列信息: 1. 文件類型:普通文件、目錄、塊設(shè)備文件、字符設(shè)備文件、鏈接等 2. 文件權(quán)限:讀、寫、執(zhí)行權(quán)限的組合 3. 文件的硬鏈接數(shù) 4. 文件所有者的用戶ID 5. 文件所屬的組ID 6. 文件大小(字節(jié)數(shù)) 7. 一個(gè)包含15個(gè)磁盤塊地址的數(shù)組 8. 文件最近的訪問日期和時(shí)間 9. 文件最后一次修改的日期和時(shí)間 10. 文件創(chuàng)建的日期和時(shí)間 硬盤上的每個(gè)文件,都有一個(gè)描述它的信息的索引節(jié)點(diǎn)。文件系統(tǒng)創(chuàng)建的時(shí)候,一定數(shù)目的索引節(jié)點(diǎn)在硬盤柱面組中被同時(shí)創(chuàng)建。有時(shí)候,這些索引節(jié)點(diǎn)或許會(huì)不夠用,例如當(dāng)一個(gè)程序產(chǎn)生大量小文件的時(shí)候,此時(shí)文件系統(tǒng)就需要增加索引節(jié)點(diǎn)。同樣,如果我們事先知道此文件系統(tǒng)只用來存放少數(shù)大文件,我們就可以通過減少索引節(jié)點(diǎn)的數(shù)目來達(dá)到節(jié)省磁盤空間的目的——畢竟每個(gè)索引節(jié)點(diǎn)占用128字節(jié)。創(chuàng)建文件系統(tǒng)的時(shí)候,可以使用newfs命令的-i選項(xiàng)來增加或者減少索引節(jié)點(diǎn)的數(shù)目。/usr/ucb目錄下的df命令可以查看文件系統(tǒng)中所引節(jié)點(diǎn)的狀況。例如: # usr/ucb/df -i Filesystem iused ifree %iused Mounted on /dev/dsk/c0t0d0s0 131672 1929384 6% / 注意:文件系統(tǒng)一旦創(chuàng)建,就無法改變它的索引節(jié)點(diǎn)數(shù)目,因此,當(dāng)索引節(jié)點(diǎn)不夠用的時(shí)候,首先應(yīng)當(dāng)備份此文件系統(tǒng)數(shù)據(jù),然后創(chuàng)建一個(gè)包含更多索引節(jié)點(diǎn)的新的文件系統(tǒng),然后將備份的數(shù)據(jù)恢復(fù)到新的文件系統(tǒng)就可以了。 存儲(chǔ)塊/數(shù)據(jù)塊 存儲(chǔ)塊,也叫做數(shù)據(jù)塊,它占用了文件系統(tǒng)的其他所有空間。這些塊包含了存放在磁盤上的數(shù)據(jù)文件。每個(gè)存儲(chǔ)塊的大小在創(chuàng)建文件系統(tǒng)的時(shí)候被確定。對(duì)一個(gè)普通文件來說,存儲(chǔ)塊存放了文件的內(nèi)容,對(duì)一個(gè)目錄來說,存儲(chǔ)塊中存放了此目錄中所有文件的索引節(jié)點(diǎn)號(hào)和文件名的信息。 好了,上面說了這么多內(nèi)容,是不是看累了啊?反正我的手早酸了,讓我去喝杯茶,然后繼續(xù)剩下的內(nèi)容:磁盤命名。 磁盤命名 這里主要是詳細(xì)解釋我們最開始使用format命令的時(shí)候,看到的c0t0d0這個(gè)表示的詳細(xì)含義。 在Solaris系統(tǒng)中用設(shè)備名來代表磁盤。磁盤設(shè)備名是類似cXtXdX格式的一系列字母和數(shù)字,比如我們看到的c0t0d0。設(shè)備名中的字母(c,t,d)都是一樣的,但X代表的數(shù)字表示特定的磁盤或者系統(tǒng)。例如c0t0d0表示0號(hào)控制器,0號(hào)磁盤,0號(hào)LUN,這通常指代系統(tǒng)中的第一個(gè)硬盤,往往也是系統(tǒng)的啟動(dòng)磁盤(boot disk)。 Sun使用下列命名方式定義邏輯設(shè)備名: /dev/[r]dsk/cXtXdXsX c:邏輯控制器號(hào)(邏輯控制器) t:物理總線目標(biāo)號(hào) d:磁盤或邏輯單元號(hào)(LUN) s:分區(qū)號(hào) cX : X指磁盤控制器。當(dāng)SUN系統(tǒng)搜集安裝在系統(tǒng)中的磁盤控制器信息時(shí),它給每個(gè)磁盤控制器一個(gè)數(shù)值,數(shù)值取決于系統(tǒng)監(jiān)測(cè)控制器的先后順序。第一個(gè)被檢測(cè)到的控制器分配的數(shù)值是0,第二個(gè)控制器是1,依次類推。對(duì)IDE系統(tǒng)來說,第一個(gè)IDE通道為0,第二個(gè)(如果存在的話)通道為1。 tX : X指磁盤的目標(biāo)號(hào)。這個(gè)數(shù)字有時(shí)候被稱為SCSI標(biāo)識(shí)符,磁盤控制器上的每一個(gè)磁盤都有一個(gè)唯一的目標(biāo)號(hào)。控制器通過這個(gè)目標(biāo)號(hào)可以對(duì)每個(gè)磁盤獨(dú)立尋址。對(duì)IDE磁盤而言,主盤的目標(biāo)號(hào)是0,從盤的目標(biāo)號(hào)是1。 dX : X指磁盤的邏輯單元號(hào)(LUN)。在有些磁盤陣列中,LUN被用來區(qū)分系統(tǒng)中的各個(gè)磁盤。一個(gè)陣列可以用一個(gè)目標(biāo)號(hào)來表示一組磁盤,然后用LUN來表示這個(gè)磁盤組中的單個(gè)磁盤。這種方式被廣泛應(yīng)用于SCSI磁盤陣列和光盤轉(zhuǎn)換設(shè)備中。對(duì)單個(gè)磁盤或IDE磁盤,這個(gè)數(shù)字總是設(shè)定為0。 sX : X指磁盤上的分區(qū)號(hào)。它和磁盤的分區(qū)對(duì)應(yīng)。就如我們前面所說的“Solaris下,一個(gè)磁盤包含8個(gè)分區(qū),標(biāo)記為0-7”,因?yàn)檫@里X的數(shù)值只能是0——7。 以上的內(nèi)容,就可以詳細(xì)說明出c0t0d0s0的含義了。 作者 : 陳求文 MSN : cqwlyh@263.net E-Mail : cqwlyh@263.net Date : 2004-8-12 19:33 2.Linux硬盤分區(qū)簡介 磁盤命名 相對(duì)Solaris來說,Linux磁盤命名的概念就簡單多了,而且和我們平常使用的Windows系統(tǒng)多少有些瓜葛。和Solaris一樣,在Linux中,每個(gè)硬件設(shè)備都有一個(gè)稱為設(shè)備名稱的特別名字,例如,接在IDE1的第一個(gè)硬盤(master主硬盤),其設(shè)備名稱為/dev/hda,也就是說我們可以用“/dev/hda”來代表此硬盤,下面的信息相信大家看了以后會(huì)有“一目了然”的感覺: 磁盤 設(shè)備名稱 IDE1的第1個(gè)硬盤(master) /dev/hda IDE1的第2個(gè)硬盤(slave) /dev/hdb IDE2的第1個(gè)硬盤(master) /dev/hdc IDE2的第2個(gè)硬盤(slave) /dev/hdd SCSI的第1個(gè)硬盤 /dev/sda SCSI的第2個(gè)硬盤 /dev/sdb 這么看來,是不是比Solaris的硬盤命名容易理解多了? 分區(qū)命名 分區(qū)的目的,是為了讓數(shù)據(jù)能夠分類存放。每一個(gè)分割出來的區(qū)域,就稱為一個(gè)“分區(qū)”(partition),在Solaris中,也常常用“slice”(片)的概念,例如我們前面所講過的c0t0d0s0中的s0,就是指代第一個(gè)分區(qū)。在Linux中,分區(qū)的概念和Windows得更加接近,硬盤分區(qū)按照功能的不同,可以分為以下幾類: 1. 主分區(qū)(primary) 2. 擴(kuò)展分區(qū)(extended) 3. 邏輯分區(qū)(logical) 主分區(qū)(primary) 通常在劃分硬盤的第1個(gè)分區(qū)時(shí),會(huì)指定為主分區(qū)。但是和Windows不同的是,windows中一個(gè)硬盤最多只允許有1個(gè)主分區(qū),而Linux最多可以讓用戶創(chuàng)建4個(gè)主分區(qū)。 擴(kuò)展分區(qū)(extended) 由于Linux中一個(gè)硬盤最多只允許有4個(gè)主分區(qū),如果想要?jiǎng)?chuàng)建更多的分區(qū),怎么辦?于是就有了擴(kuò)展分區(qū)的概念。用戶可以創(chuàng)建一個(gè)擴(kuò)展分區(qū),然后在擴(kuò)展分區(qū)上創(chuàng)建多個(gè)邏輯分區(qū)。從理論上來說,邏輯分區(qū)沒有數(shù)量上的限制。 需要注意的是,創(chuàng)建擴(kuò)展分區(qū)的時(shí)候,會(huì)占用一個(gè)主分區(qū)的位置,因此,如果創(chuàng)建了擴(kuò)展分區(qū),一個(gè)硬盤上便最多只能創(chuàng)建3個(gè)主分區(qū)和一個(gè)擴(kuò)展分區(qū)。而且,擴(kuò)展分區(qū)不是用來存放數(shù)據(jù)的,它的主要功能是為了創(chuàng)建邏輯分區(qū)。這個(gè)概念,和Windows可說是一模一樣。 邏輯分區(qū)(logical) 邏輯分區(qū)不能夠直接創(chuàng)建,它必須依附在擴(kuò)展分區(qū)下,容量受到擴(kuò)展分區(qū)大小的限制。通常邏輯分區(qū)是存放文件和數(shù)據(jù)的地方。 有了磁盤命名和分區(qū)命名的概念,理解諸如/dev/hda1之類的分區(qū)名稱,應(yīng)該就不是難事了。具體的,可以看下面的表示: 分區(qū) 分區(qū)名稱 IDE1的第1個(gè)硬盤(master)的第1個(gè)主分區(qū) /dev/hda1 IDE1的第1個(gè)硬盤(master)的第2個(gè)主分區(qū) /dev/hda2 IDE1的第1個(gè)硬盤(master)的第3個(gè)主分區(qū) /dev/hda3 IDE1的第1個(gè)硬盤(master)的第4個(gè)主分區(qū) /dev/hda4 IDE1的第1個(gè)硬盤(master)的第1個(gè)邏輯分區(qū) /dev/hda5 IDE1的第1個(gè)硬盤(master)的第2個(gè)邏輯分區(qū) /dev/hda6 ...... ...... IDE1的第2個(gè)硬盤(slave)的第1個(gè)主分區(qū) /dev/hdb1 IDE1的第2個(gè)硬盤(slave)的第2個(gè)主分區(qū) /dev/hdb2 ...... ...... SCSI的第1個(gè)硬盤的第1個(gè)主分區(qū) /dev/sda1 SCSI的第1個(gè)硬盤的第2個(gè)主分區(qū) /dev/sda2 ...... ...... 作者 : 陳求文 MSN : cqwlyh@263.net E-Mail : cqwlyh@263.net Date : 2004-8-13 11:00 雖然手很累,但是看到自己的“成果”,真是開心啊!
標(biāo)簽: Unix系統(tǒng)
主站蜘蛛池模板: 国产亚洲精品热视频在线观看 | 国产情侣酒店自拍 | 一区二区免费 | 国产三及 | 国语精品视频在线观看不卡 | 九九精品视频一区在线 | 国产精品欧美亚洲区 | 一本一本久久a久久精品综合麻豆 | 成年人免费黄色片 | 成人社区网站 | kk4kk免费毛片| 欧美一级毛片欧美毛片视频 | 韩国一级特黄毛片大 | 韩国深夜福利视频19禁在线观看 | 又粗又硬的aaaaaaa毛片 | 男女晚上激烈的拍拍拍免费看 | 鲁大师在线观看免费播放 | 国产成人综合久久综合 | 青青青国产在线手机免费观看 | 午夜视频黄色 | 蕾丝视频www在线观看 | 成人18xxxx网站 | 日本三级a做爰视频东爱 | 欧美黑人在线观看 | 国产精品无码久久久久 | 91网站桃色 | 婷婷伊人 | 国产欧美日韩精品在线 | 日本丝袜一区 | 国产黑色丝袜在线播放 | 成人亲子乱子伦视频 | 国产黄网站在线观看 | 日本高清精品 | 亚洲欧洲在线视频 | 国产性高清在线观看 | 国产a久久精品一区二区三区 | 亚洲国产精品美女 | 精品在线免费视频 | 日本黄色二级片 | 国产级a爱做片免费观看 | 日韩精品久久不卡中文字幕 |