磁盘分区格式说明

linux分区不同于windows

linux下分区标示:

例如:hda1

hd这两个字母表示分区所在的设备类型,hd标示IDE类型硬盘,sd表示SCSI类型硬盘

第三字母a标示硬盘在哪个接口

linux下硬盘设备名为(IDE硬盘为hdx(x为从a—d)因为IDE硬盘最多四个,SCSI,SATA,USB硬盘为sdx(x为a—z)),硬盘主分区最多为4个,不用说大家也知道…..所以主分区从sdb1开始到sdb4,逻辑分区从sdb5开始,(逻辑分区永远从sdb5开始…)设备名可以使用fdisk –l查看

Linux磁盘分区与格式化

格式化原理:

 MBR:主引导扇区
主分区表:64bytes,最多只能分四个主分区,每个主分区的记录(相关信息,比如分区大小,位置)在主分区表里占14bytes。
 
如果要建多于四个的分区,就要拿出一个主分区做为扩展分区,再在扩展分区里面进行其它的分区操作。在 建扩展分区的时候会建立一张对应的扩展分区表,它记录了在这个扩展分区里的分区的相关信息;理论上它没有分区数量的限制,在扩展分区内部的分区叫做逻辑分区,如上图中的 /dev/hda5,/dev/hda6/,/dev/hda7
 
在分好区后,分区里面是空的,没有任何东西。为了能让OS识别,就必须要向分区里写入相应格式的数据。比如windows的FAT32,NTFS;Linux的ext2,ext3,ext4(目前ext3格式的用的比较多,ext4还在实验之中,在新的Fedora上使用的就是ext4的文件系统)。
 
Windows/dos常用的分区工具:fdisk/partition magic/diskpart
Linux下常用的分区工具:
    fdisk/sfdisk:命令行工具,各种版本和环境都能使用,包含在软件包util-linux中
    diskdruid:图形化分区工具,只能在安装REDHAT系统时使用。
 
下面我们开始实验:
环境/工具:Fedora 14/256M内存卡;fdisk
第一步:fdisk
[root@novice ~]# fdisk -l /dev/sdb 
Disk /dev/sdb: 254 MB, 254017536 bytes 
8 heads, 61 sectors/track, 1016 cylinders, total 496128 sectors 
Units = sectors of 1 * 512 = 512 bytes 
Sector size (logical/physical): 512 bytes / 512 bytes 
I/O size (minimum/optimal): 512 bytes / 512 bytes 
Disk identifier: 0x00000000 
 
   Device Boot      Start         End      Blocks   Id  System 
 
[root@novice ~]# fdisk /dev/sdb 
 
Command (m for help): #在输入上面的命令后会出现左边的提示,输入m就会得到一个帮助菜单,如下:
Command (m for help): 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) 
#help虽然是英文的,可都很简单,在这里不再解释。
 
#现在,我们正式开始分区的操作:
Command (m for help): n #新建分区
Command action 
   e   extended 
   p   primary partition (1-4) 
#e/p分别对应扩展分区 /主分区;我们先分四个主分区,每个50M;然后再来增加主分区或扩展分区,看会出现怎样的状况,嘿嘿。
p  #分区类型为主分区
Partition number (1-4, default 1): 1  #分区号,在这里我们依次选择1、2、3、4
First sector (2048-496127, default 2048):  #指定分区的起始扇区,一般默认,按enter键即可。
Last sector, +sectors or +size{K,M,G} (2048-496127, default 496127): +50M  #指定分区的终止扇区,根据前面的提示我们可以做出相应的选择+sectors 或 +size{K,M,G}
Command (m for help): p  #用p打印出已建好的分区列表
 
Disk /dev/sdb: 254 MB, 254017536 bytes 
8 heads, 61 sectors/track, 1016 cylinders, total 496128 sectors 
Units = sectors of 1 * 512 = 512 bytes 
Sector size (logical/physical): 512 bytes / 512 bytes 
I/O size (minimum/optimal): 512 bytes / 512 bytes 
Disk identifier: 0x00000000 
 
   Device Boot      Start         End      Blocks   Id  System 
/dev/sdb1            2048      104447       51200   83  Linux 
 
#剩下的三个分区的建立操作同上
#分好四个主分区后的情况如下
Command (m for help): p 
 
Disk /dev/sdb: 254 MB, 254017536 bytes 
8 heads, 61 sectors/track, 1016 cylinders, total 496128 sectors 
Units = sectors of 1 * 512 = 512 bytes 
Sector size (logical/physical): 512 bytes / 512 bytes 
I/O size (minimum/optimal): 512 bytes / 512 bytes 
Disk identifier: 0x00000000 
 
   Device Boot      Start         End      Blocks   Id  System 
/dev/sdb1            2048      104447       51200   83  Linux 
/dev/sdb2          104448      206847       51200   83  Linux 
/dev/sdb3          206848      309247       51200   83  Linux 
/dev/sdb4          309248      309298          25+  83  Linux 
#已经建好四个主分区啦,现在我们来看看如果再建主分区或是扩展分区的话会出现怎样的情况:
Command (m for help): n 
You must delete some partition and add an extended partition first 
#看到了吧,不能再建分区啦!要再建分区的话必须删除some分区,再新建一个扩展分区才行。
#现在,我们删掉一个主分区,来新建扩展分区
Command (m for help): d  #删除分区
Partition number (1-4): 4   #选择要删除分区的分区号,我们选第四个
 
Command (m for help): p   #打印,如下,四个分区变成了三个!
 
Disk /dev/sdb: 254 MB, 254017536 bytes 
8 heads, 61 sectors/track, 1016 cylinders, total 496128 sectors 
Units = sectors of 1 * 512 = 512 bytes 
Sector size (logical/physical): 512 bytes / 512 bytes 
I/O size (minimum/optimal): 512 bytes / 512 bytes 
Disk identifier: 0x00000000 
 
   Device Boot      Start         End      Blocks   Id  System 
/dev/sdb1            2048      104447       51200   83  Linux 
/dev/sdb2          104448      206847       51200   83  Linux 
/dev/sdb3          206848      309247       51200   83  Linux 
 
 
 
#新建一个扩展分区
#如果在没有建满三个主分的区的情况下建立扩展分区,相关选项会有些不同。
Command (m for help): n 
Command action 
   e   extended 
   p   primary partition (1-4) 
e   
Selected partition 4 
First sector (309248-496127, default 309248): #enter,默认
Using default value 309248 
Last sector, +sectors or +size{K,M,G} (309248-496127, default 496127):   #enter,默认,使用剩余空间
Using default value 496127 
 
Command (m for help): p 
 
Disk /dev/sdb: 254 MB, 254017536 bytes 
8 heads, 61 sectors/track, 1016 cylinders, total 496128 sectors 
Units = sectors of 1 * 512 = 512 bytes 
Sector size (logical/physical): 512 bytes / 512 bytes 
I/O size (minimum/optimal): 512 bytes / 512 bytes 
Disk identifier: 0x00000000 
 
   Device Boot      Start         End      Blocks   Id  System 
/dev/sdb1            2048      104447       51200   83  Linux 
/dev/sdb2          104448      206847       51200   83  Linux 
/dev/sdb3          206848      309247       51200   83  Linux 
/dev/sdb4          309248      496127       93440    5  Extended 
 
#接下来,我们在新建的扩展分区里再新建两个逻辑分区,因为已经有了三个主分区,这里不会再显示是建立逻辑分区还是主分区的提示!
Command (m for help): n 
First sector (311296-496127, default 311296):  #enter
Using default value 311296 
Last sector, +sectors or +size{K,M,G} (311296-496127, default 496127): +50M 
 
Command (m for help): n 
First sector (415744-496127, default 415744):  #enter
Using default value 415744 
Last sector, +sectors or +size{K,M,G} (415744-496127, default 496127):  #enter
Using default value 496127 
 
Command (m for help): p 
 
Disk /dev/sdb: 254 MB, 254017536 bytes 
8 heads, 61 sectors/track, 1016 cylinders, total 496128 sectors 
Units = sectors of 1 * 512 = 512 bytes 
Sector size (logical/physical): 512 bytes / 512 bytes 
I/O size (minimum/optimal): 512 bytes / 512 bytes 
Disk identifier: 0x00000000 
 
   Device Boot      Start         End      Blocks   Id  System 
/dev/sdb1            2048      104447       51200   83  Linux 
/dev/sdb2          104448      206847       51200   83  Linux 
/dev/sdb3          206848      309247       51200   83  Linux 
/dev/sdb4          309248      496127       93440    5  Extended 
/dev/sdb5          311296      413695       51200   83  Linux 
/dev/sdb6          415744      496127       40192   83  Linux 
#上面的列表,就是我们今天分区的成果啦!接下来保存退出,重启计算机,就可以进行下一步的mkfs操作啦!如果忘记了相关的操作命令,记得按m!!!
Command (m for help): w  #保存
The partition table has been altered! 
 
Calling ioctl() to re-read partition table. 
Syncing disks. 
 
另:在建好分区后,我们还可以更改相关分区的文件系统类型
#如,我们要把第二个主分区改成Linux下的交换分区,操作如下
Command (m for help): t  #更改文件系统类型
Partition number (1-6): 2  #选择第二个分区
Hex code (type L to list codes): L #选择要更改的文件系统编码,可以按L来查看相关编码信息。
0  Empty           24  NEC DOS         81  Minix / old Lin bf  Solaris        
 1  FAT12           39  Plan 9          82  Linux swap / So c1  DRDOS/sec (FAT- 
 2  XENIX root      3c  PartitionMagic  83  Linux           c4  DRDOS/sec (FAT- 
 3  XENIX usr       40  Venix 80286     84  OS/2 hidden C:  c6  DRDOS/sec (FAT- 
 ............
16  Hidden FAT16    64  Novell Netware  af  HFS / HFS+      fb  VMware VMFS    
17  Hidden HPFS/NTF 65  Novell Netware  b7  BSDI fs         fc  VMware VMKCORE 
18  AST SmartSleep  70  DiskSecure Mult b8  BSDI swap       fd  Linux raid auto 
1b  Hidden W95 FAT3 75  PC/IX           bb  Boot Wizard hid fe  LANstep        
1c  Hidden W95 FAT3 80  Old Minix       be  Solaris boot    ff  BBT            
1e  Hidden W95 FAT1 
Hex code (type L to list codes): 82    #查找到linux swap的编码为82
Changed system type of partition 2 to 82 (Linux swap / Solaris) 
Command (m for help): p 
..............
   Device Boot      Start         End      Blocks   Id  System 
/dev/sdb1            2048      104447       51200   83  Linux 
/dev/sdb2          104448      206847       51200   82  Linux swap / Solaris 
/dev/sdb3          206848      309247       51200   83  Linux 
/dev/sdb4          309248      496127       93440    5  Extended 
/dev/sdb5          311296      413695       51200   83  Linux 
/dev/sdb6          415744      496127       40192   83  Linux 
#最后别忘了保存!如果你须要的话!
#扩展分区不能直接使用,逻辑分区只能建立在扩展分区上!
 
第二步:mkfs(mkfs时分区的格式最好与fdisk设定的分区格式一致,不然.......)
mkfs支持ext2 ext3 vfa msdos jfs reiserfs等文件系统。
用法1:mkfs -t <fstype> <partition>
例: mkfs -t ext3 /dev/sdb2
 
用法2:mkfs.<fstype> <partition>
例:mkfs,vfat /dev/sdb3
 
mke2fs支持ext2/ext3文件系统
用法:mke2fs [-j] <partition>
例:mke2fs -j /dev/sdb5
# 更多更具体的用法请参照相关命令的man手册
 
下面,接着实验:
例一
[root@novice ~]# mkfs -t ext3 /dev/sdb1 
mke2fs 1.41.12 (17-May-2010) 
Filesystem label= 
OS type: Linux 
Block size=1024 (log=0) 
Fragment size=1024 (log=0) 
Stride=0 blocks, Stripe width=0 blocks 
12824 inodes, 51200 blocks 
2560 blocks (5.00%) reserved for the super user 
First data block=1 
Maximum filesystem blocks=52428800 
7 block groups 
8192 blocks per group, 8192 fragments per group 
1832 inodes per group 
Superblock backups stored on blocks: 
8193, 24577, 40961 
 
Writing inode tables: done                            
Creating journal (4096 blocks): done 
Writing superblocks and filesystem accounting information: done 
 
This filesystem will be automatically checked every 34 mounts or 
180 days, whichever comes first.  Use tune2fs -c or -i to override. 
 
例二:
[root@novice ~]# fdisk /dev/sdb 
 
Command (m for help): t 
Partition number (1-6): 6 
Hex code (type L to list codes): L 
 
 0  Empty           24  NEC DOS         81  Minix / old Lin bf  Solaris        
 1  FAT12           39  Plan 9          82  Linux swap / So c1  DRDOS/sec (FAT- 
 2  XENIX root      3c  PartitionMagic  83  Linux           c4  DRDOS/sec (FAT- 
 3  XENIX usr       40  Venix 80286     84  OS/2 hidden C:  c6  DRDOS/sec (FAT- 
 4  FAT16 <32M      41  PPC PReP Boot   85  Linux extended  c7  Syrinx         
 5  Extended        42  SFS             86  NTFS volume set da  Non-FS data    
 6  FAT16           4d  QNX4.x          87  NTFS volume set db  CP/M / CTOS / . 
 7  HPFS/NTFS       4e  QNX4.x 2nd part 88  Linux plaintext de  Dell Utility   
.........
Hex code (type L to list codes):  
Changed system type of partition 6 to 7 (HPFS/NTFS) 
 
Command (m for help): p 
 
Disk /dev/sdb: 254 MB, 254017536 bytes 
8 heads, 61 sectors/track, 1016 cylinders, total 496128 sectors 
Units = sectors of 1 * 512 = 512 bytes 
Sector size (logical/physical): 512 bytes / 512 bytes 
I/O size (minimum/optimal): 512 bytes / 512 bytes 
Disk identifier: 0x00000000 
 
   Device Boot      Start         End      Blocks   Id  System 
/dev/sdb1            2048      104447       51200   83  Linux 
/dev/sdb2          104448      206847       51200   82  Linux swap / Solaris 
/dev/sdb3          206848      309247       51200   83  Linux 
/dev/sdb4          309248      496127       93440    5  Extended 
/dev/sdb5          311296      413695       51200   83  Linux 
/dev/sdb6          415744      496127       40192    7  HPFS/NTFS 
 
Command (m for help): w 
The partition table has been altered! 
 
Calling ioctl() to re-read partition table. 
Syncing disks. 
[root@novice ~]# mkfs.ntfs /dev/sdb6 
Cluster size has been automatically set to 4096 bytes. 
Initializing device with zeroes: 100% - Done. 
Creating NTFS volume structures. 
mkntfs completed successfully. Have a nice day. 
 
 
 第三部:挂载
挂载:mount
例:mount /dev/sdb1 /mnt /sdb1
 
卸载:umonut
例:umount /dev/sdb1
 
/etc/fstab:
可以把要挂载的分区写入/etc/fstab,这样在开机的时候就能自动挂载啦!
#关于mount/nmout具体用法请参照man手册,/etc/fstab内的挂载格式,参数等在该文件内都有相关的说明。这里只做一个简单的测试,不再累述!
 
[root@novice /]# cd /mnt 
[root@novice mnt]# mkdir sdb 
[root@novice mnt]# mount /dev/sdb1 /mnt/sdb 
[root@novice mnt]# cd /mnt/sdb 
[root@novice sdb]# echo "Hello! I am here" > test.txt 
[root@novice sdb]# cat test.txt 
Hello! I am here 
[root@novice sdb]# cd .. 
[root@novice mnt]# umount /dev/sdb1 
[root@novice mnt]# cd /mnt/sdb 
[root@novice sdb]# ls -l 
total 0 
#刚做的文件系统已经能正常使用啦!现在再来看看挂载没有经过mkfs的分区,会怎样!
[root@novice sdb]# mount /dev/sdb2 /mnt/sdb 
mount: unknown filesystem type 'LVM2_member' 
#不解释了喔!

Linux磁盘分区与格式化的更多相关文章

  1. Linux 磁盘分区、格式化、目录挂载

    实验环境: Citrix虚拟化, RHEL6.4系统环境 本文目的: 熟悉Linux的基本磁盘分区.格式化.目录挂载. 显示当前主机目录 磁盘分区 磁盘格式化 挂载目录 1. 显示当前主机目录 命令d ...

  2. Linux磁盘分区、格式化和挂载

    一.查看磁盘使用 [root@iZ88rvassw1Z ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/vda1 40G .3G 3 ...

  3. linux磁盘分区、格式化、挂载

    新建分区的操作步骤,如下图: 1)RAID卡: 机器有没有RAID卡可以在开机时看有没有出现配置RAID什么的提示(亲测),系统运行时有没有,不知道! 服务器大多有这个新加硬盘后不修改raid,开即f ...

  4. linux 磁盘 分区、格式化、挂载

    将容量结果易读的容量格式显示出来df -h 分区 初次接触仅分成两个分区(“/与Swap”)预留一个备用的剩余磁盘容量 磁盘分区 fdisk #df /找出磁盘文件名#fdisk /dev/hdc#m ...

  5. LINUX磁盘分区、格式化、挂载、卸载全程详解

    1.一切皆文件 Linux系统有一个理念:“一切皆文件”,所以计算机的硬件在linux中也是以“文件”的形式存在于/dev目录中.   图为CentOS 6.5系统中/dev目录的部分内容.不同的计算 ...

  6. linux磁盘分区格式化-fdisk命令工具

    本文主要讲述使用fdisk工具对磁盘进行分区和格式化的方法 首先要明确分区是针对磁盘进行的操做,磁盘分区会创建分区表,类似vda,sda的是磁盘,vda1,sda1的是分区 1.查看磁盘分区状态 1. ...

  7. 【Linux命令】磁盘分区,格式化,挂载命令,创建交换分区(fdisk,mkfs,mount,umount)

    友情链接 磁盘分区,格式化,挂载,创建交换分区:https://www.cnblogs.com/HeiDi-BoKe/p/11936998.html RAID工作级别:https://www.cnbl ...

  8. Linux运维实战之磁盘分区、格式化及挂载(一)

    在网络系统中,磁盘和文件系统管理是两个非常基本.同时也是非常重要的管理任务,特别是文件系统管理,因为它与用户权限和整个网络系统的安全息息相关.本次博文的主题是关于Linux系统中磁盘分区.格式化及挂载 ...

  9. linux磁盘分区模式

    linux磁盘分区模式 模式一:MBR 1)主分区不超过四个 2)单个分区容量最大2TB 模式二:GPT 1)主分区个数"几乎"没有限制(原因:在GPT的分区表中最多可以支持128 ...

随机推荐

  1. ubuntu 14.04 安装mysql server初级教程

    序,mysql数据库是开源的,被大多数企业所使用 目录 一.apt-get install 软件安装原理剖析二.安装mysql server三.配置和管理msyql 一.apt-get install ...

  2. iOS 工作遇到问题记录

    iOS 工作遇到问题记录 1.UITableView的scrollDelegate问题 下午遇到一个奇怪的问题,之前都没有注意过,由于A VC中要实现tableView和其他View位置的联动,所以实 ...

  3. alipay iOS SDK

    我也是醉了,进支付宝主页找都找不到,好不容易找到赶紧记下来:https://b.alipay.com/order/productDetail.htm?productId=201308060460965 ...

  4. 繁华模拟赛 Evensgn与字符矩阵

    #include<iostream> #include<cstdio> #include<string> #include<cstring> #incl ...

  5. Hello Kitty微信主题很可爱?小心财产安全!

    个性化是产品服务的一个趋势.微信很火,可为什么微信主题只有一个呢?你让那些小女生情何以堪?这时HelloKitty微信主题.大嘴猴.哆啦A梦等一大批主题在网上出现了,有些打着免费的旗号却做着盗号的勾当 ...

  6. 教你安装漂亮的Arc GTK主题

    导读 近日,我们又发现了一款深受 Linux 用户喜爱的桌面主题 — Arc GTK,Arc GTK 主题已被很多 GNU/Linux 操作系统支持和采用,其中就包括即将到来的 Linux Mint ...

  7. 【转】js onclick用法:跳转到指定URL

    使用onclick跳转到其他页面/跳转到指定url   ☆如果是本页显示可以直接用location,方法如下: ①onclick="javascript:window.location.hr ...

  8. C语言字符串处理

    一. C语言中,为什么字符串可以赋值给字符指针变量 char *p,a='5';p=&a;                     //显然是正确的,p="abcd";   ...

  9. [Linux] AWK命令详解(大全)

    转载自:http://caoyanbao.iteye.com/blog/570868 什么是awk? 你可能对UNIX比较熟悉,但你可能对awk很陌生,这一点也不奇怪,的确,与其优秀的功能相比,awk ...

  10. July 28th, Week 31st Thursday, 2016

    Time is a bird flying into eternity. 时间是一只永远在飞翔的鸟儿. Time waits for nobody. Vitality shows in not onl ...