硬盤分區的基本概念

##硬盤類型:SATA##

通常狀況下,經常使用的我的計算機的硬盤(disk)能夠根據其接口類型的不一樣分爲SATA硬盤和IDE硬盤。在Linux中SATA硬盤表示爲sda, sdb等,而IDE硬盤表示爲hda, hdb等,以下列表所示:html

  • /dev/hd~ ==> IDE
  • /dev/sd~ ==> SAS, SCSI, SATA, USB
  • /dev/md~ ==> RAID

注:RAID表示磁盤陣列(Redundant Arrays of Independent Disks,RAID),有「獨立磁盤構成的具備冗餘能力的陣列」之意。服務器

如今的我的計算機通常採用的都是SATA接口類型的硬盤。下圖展現了硬盤接口類型:ide

硬盤接口類型

說明以下:工具

  1. IDE與SATA接口:不論是IDE或是SATA,其實質上是一種電腦總線,主要功能是用做主板和大量存儲設備(如硬盤及光盤驅動器)之間的數據傳輸之用。IDE是「Integrated Drive Electronics」的縮寫,即「電子集成驅動器」,它的本意是指把「硬盤控制器」與「盤體」集成在一塊兒的硬盤驅動器。把盤體與控制器集成在一塊兒的作法減小了硬盤接口的電纜數目與長度,數據傳輸的可靠性獲得了加強,硬盤製造起來變得更容易,所以硬盤生產廠商不須要再擔憂本身的硬盤是否與其它廠商生產的控制器兼容。對用戶而言,硬盤安裝起來也更爲方便。IDE接口也稱爲ATA(Advanced Technology Attachment)接口,採用並行接口技術,目前幾乎徹底被串行方式取代,即SATA(Serial ATA)。
  2. SCSI與SAS:SCSI(Small Computer System Interface),是一種用於計算機和智能設備之間(硬盤、軟驅、光驅、打印機、掃描儀等)系統級接口的獨立處理器標準,一般應用與服務器上。SAS表示串行SCSI(Serial Attached SCSI),一樣在我的電腦上應用較少。

簡單參數對比ui

接口 技術規格
IDE ATA66 66MBps; ATA100 100MBps; ATA133 133MBps
SATA 1.5Gbps, 3Gbps
SCSI Ultra160 SCSI 160MBps; Ultra320 SCSI 320MBps; Ultra640 SCSI 640MBps
SAS 3Gbps

###Linux下查看硬盤的硬件相關信息### (1) 查看接口類型
可使用 lspci ( list all PCI devices,列出主板上全部硬件槽的信息) 命令查看硬盤的接口是SATA仍是其餘。操作系統

$sudo lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller (rev 06)
......
00:1f.0 ISA bridge: Intel Corporation HM87 Express LPC Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] (rev 05)
00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 05)
......

命令列表中有SATA硬盤控制器,能夠說明接口類型爲SATA。.net

(2) 查看硬盤其餘技術規格
可使用 haparmsamrtctl 命令獲得硬盤的更詳細技術信息。設計

hdparm - get/set SATA/IDE device parameters. hdparm provides a command line interface to various kernel interfaces supported by the Linux SATA/PATA/SAS "libata" subsystem and the older IDE driver subsystem. Many newer (2008 and later) USB drive enclosures now also support "SAT" (SCSI-ATA Command Translation) and therefore may also work with hdparm.unix

smartctl - Control and Monitor Utility for SMART Diskscode

使用示例以下:

$sudo hdparm -i /dev/sdb
/dev/sdb:

 Model=SAMSUNG MZMTE128HMGR-000H1, FwRev=EXT43H0Q, SerialNo=S1ENNSAF307079
 Config={ Fixed }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0
 BuffType=unknown, BuffSize=unknown, MaxMultSect=16, MultSect=16
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=250069680
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4 
 DMA modes:  mdma0 mdma1 mdma2 
 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 
 AdvancedPM=no WriteCache=enabled
 Drive conforms to: unknown:  ATA/ATAPI-2,3,4,5,6,7

 * signifies the current active mode

$sudo smartctl -a /dev/sda
    === START OF INFORMATION SECTION ===
Model Family:     HGST Travelstar 7K1000
Device Model:     HGST HTS721010A9E630
Serial Number:    JR10046P2T809N
LU WWN Device Id: 5 000cca 7dce735fb
Firmware Version: JB0OA3J0
User Capacity:    1,000,204,886,016 bytes [1.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    7200 rpm
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ATA8-ACS T13/1699-D revision 6
SATA Version is:  SATA 3.0, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Thu Dec 29 22:55:28 2016 CST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
......

從以上輸出能夠看到,硬盤的接口具體類型,扇區數,轉數及數據傳輸速率(設計上)等均可以找到。

##硬盤分區##

當咱們拿到一塊嶄新的硬盤時,須要在上面建立分區。分區類型有主分區(Primary Partition)和擴展分區(Extension Partition)。在Linux中(對於Windows,狀況並不相同),對於一塊硬盤來講,主分區和擴展分區的總數最多隻能有4個。擴展分區並不能直接使用,還要在其下面劃分邏輯分區(Logical Partition)。邏輯分區的數量並無限制,但操做系統要安裝在主分區上。

一種Linux下的分區狀況:
/dev/sda --- 表示第一塊scsi硬盤
/dev/sda1 --- 表示第一塊scsi硬盤的第一個主分區
/dev/sda2 --- 表示第一塊scsi硬盤的擴展分區

###Linux下查看硬盤分區信息### 在Linux下可使用簡單的lsblk查看,也可使用fdisk詳細查看或設置。

lsblk - list block devices. It prints all block devices (except RAM disks) in a tree-like format by default.

fdisk - manipulate disk partition table

查看示例:

$lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 931.5G  0 disk 
├─sda1   8:1    0   300G  0 part /home
├─sda2   8:2    0   200G  0 part /var
└─sda3   8:3    0     1K  0 part 
sdb      8:16   0 119.2G  0 disk 
├─sdb1   8:17   0   108G  0 part /
└─sdb2   8:18   0  11.2G  0 part [SWAP]
# fdisk工具可使用`sudo fdisk -l`查看,在此省略

##Linux分區##

能夠在安裝Linux系統時詳細地設置分區,也能夠在安裝好系統後使用fdisk工具進行設置。 通常須要爲Linux根目錄設置一個分區用於掛載/根節點,此外還須要設置swap分區。swap分區的通常設置爲物理內存大小便可,詳細內容可參考 Linux Swap交換分區介紹總結

##Linux文件系統##

傳統的Linux系統是ext系列,從ext2/3發展而來的ext4值得一試。而談到選擇文件系統,問題就變得比較複雜:文件系統的選擇要根據需求來肯定。如今新的文件系統例如btrfs, XFS等在某些方面有很高的效率,詳細內容可參考文章 Linux文件系統選擇,配合搜索某一具體內容來進一步決策是否合適。

參考資料


1 Linux硬盤分區詳解
2 Linux查看系統硬件信息

相關文章
相關標籤/搜索