Linux磁盘分区

本文测试环境为Centos6.4 + Oracle VM VirtualBox

Linux磁盘分区概述:

     一、主分区、扩展分区和逻辑分区

        硬盘分区主要分为:

        主分区(primary partition):可以马上被使用但不能再分区。

        扩展分区(extension partition):必须再进行分区后才能被使用。

        逻辑分区(logical partition):由扩展分区建立起来的分区。

    主分区和扩展分区的数目之和不能大于4,逻辑分区数量上没有限制,扩展分区其实是逻辑分区的集合。


    二、Linux下硬盘分区的标识

        硬盘分区的标识一般使用/dev/hd[a-z]X或者/dev/sd[a-z]X来标识,其中[a-z]代表硬盘号,X代表硬盘内的分区号。

        整块硬盘分区的块号标识:Linux下用hda、hdb、sda、sdb 等来标识不同的硬盘;其中:

        IDE接口硬盘:表示为/dev/hda1、/dev/hdb ...;

        SCSI 接口的硬盘、SATA接口的硬盘表示为/dev/sda、/dev/sdb ... ... ;

        硬盘内的分区:

             如果X的值是1到4,表示硬盘的主分区(包含扩展分区);

                  逻辑分区从是从5开始的,比如/dev/hda5肯定是逻辑分区了;

        例如:

        用hda1、hda2、 hda5、hda6 来标识不同的分区。

        字母a 代表第一块硬盘。

        b代表第二块硬盘,依次类推。

        而数字1 代表一块硬盘的第一个分区、2 代表第二个分区,依次类推。

        1 到4 对应的是主分区(Primary Partition)或扩展分区(Extension Partition)。

        从5开始,对应的都是硬盘的逻辑分区(Logical Partition)。

        一块硬盘即使只有一个主分区,逻辑分区也是从5开始编号的,这点应特别注意。   

二、Linux磁盘分区实操:  

    fdisk介绍

        fdisk - Patition table manipulator for Linux

        

[root@owenz /]# fdisk -h

Usage:
 fdisk [options] <disk>    change partition table
 fdisk [options] -l <disk> list partition table(s)
 fdisk -s <partition>      give partition size(s) in blocks

Options:
 -b <size>                 sector size (512, 1024, 2048 or 4096)
 -c                        switch off DOS-compatible mode
 -h                        print help
 -u <size>                 give sizes in sectors instead of cylinders
 -v                        print version
 -C <number>               specify the number of cylinders
 -H <number>               specify the number of heads
 -S <number>               specify the number of sectors per track

    对硬盘进行分区操作

        1、查看系统硬盘详细信息
[root@owenz ~]# fdisk -l
Disk /dev/sda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00073632
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        1306    10484736   83  Linux
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x26bd48cd
   Device Boot      Start         End      Blocks   Id  System
     我们先详细看下sdb这块硬盘的信息,255 heads说明此硬盘包含255个磁头,63 sectors/track说明每个磁道中包含63个扇区,1305 cylinder说明有1305个柱面,Units = heads * sectors * sectorsize即
每个柱面可存放数据的大小。磁盘的总容量计算为heads * sectors * sectorsize * cylinder = 10737418240 bytes,相关知识请参考:
http://blog.csdn.net/cupid1102/article/details/50128623
    2、对磁盘进行分区
[root@owenz ~]# fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').
Command (m for help): m                     --m输出命令帮助信息
Command action
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)
Command (m for help): n               --添加一个分区
Command action
   e   extended
   p   primary partition (1-4)
p                                   --选择添加的为扩展分区还是主分区
Partition number (1-4): 1               --输入主分区的number(1-4)
First cylinder (1-1305, default 1):         --开始的柱面
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-1305, default 1305): 200       --结束的柱面,这两个参数决定了分区的大小,Units * (Last cylinder - First cylinder + 1),个人认为这样分配的好处为让一个分区的数据可以分散到各个head上。
Command (m for help): p               --查看分区
Disk /dev/sdb: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x26bd48cd
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         200     1606468+  83  Linux
Command (m for help): w              --保存退出
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.










你可能感兴趣的:(linux)