简单的磁盘介绍 我们要想在磁盘上存放文件,首先要对磁盘进行分区和格式化。格式化也就是将分区格式化成系统能够识别的文件系统。对硬盘操作时有以下规则需要注意: (1)主分区和扩展分区最多可以有4个(硬盘限制)。(2)扩展分区最多只能有一个(操作系统限制)(3)逻辑分区是由扩展分区持续分出来的分区。(4)能够被格式化后作为数据访问的分区为主要分区与逻辑分区,扩展分区无法格式化。(5)逻辑分区的数量依操作系统而不同,在linux系统中,IDE硬盘最多有59个逻辑分区(5号到63号),SATA硬盘则有11个逻辑分区(5号到15号)。 使用Centos分区工具fdisk来分区 在centos系统中,fdisk工具默认是安装过的。使用fdisk分区工具,有一个缺点就是,fdisk没有办法处理大于2TB以上的磁盘分区。这个需要特别注意。当然大于2TB以上的可以使用parted工具。 创建分区 fdisk [-l] 设备名成 //该命令是现实出磁盘的所有分区内容,若只适用fdisk –l时系统会把整个系统内能够找到的设备的分区均列出来。 [root@bogon ~]# fdisk /dev/sda //注意所使用的命令,没有加数字哦! 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 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 ///不存储,离开fdisk程序 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): 使用fdisk工具时,不需要去记命令,只要是用m就能看到所有的操作。使用fdisk不管你进行了什么操作,只要离开fdisk时按下“q”,那么所有的操作都不会生效!相反,按下“w”就是操作生效的意思。所以可以随便玩fdisk,记得离开时要是用“q”哦。 好了就在我的linux主机上对磁盘进行一下操作吧!做个例子: Command (m for help): p Disk /dev/sda: 33.8 GB, 33802977280 bytes 255 heads, 63 sectors/track, 4109 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: 0x000d2ed8 Device Boot Start End Blocks Id System /dev/sda1 * 1 26 204800 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 26 1301 10240000 83 Linux /dev/sda3 1301 1938 5120000 83 Linux /dev/sda4 1938 4110 17444864 5 Extended /dev/sda5 1939 2066 1024000 82 Linux swap / Solaris /dev/sda6 2067 2198 1060290 83 Linux 首先从上面可以看到,我的磁盘/dev/sda还有空间可以新建分区哦! Command (m for help): n ///新建一个分区 First cylinder (1938-4110, default 1938): 2199 ///起始柱面号 Last cylinder, +cylinders or +size{K,M,G} (2199-4110, default 4110): +512M ///新建一个512M大小的分区 Command (m for help): p ///显示当前磁盘分区信息 Disk /dev/sda: 33.8 GB, 33802977280 bytes 255 heads, 63 sectors/track, 4109 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: 0x000d2ed8 Device Boot Start End Blocks Id System /dev/sda1 * 1 26 204800 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 26 1301 10240000 83 Linux /dev/sda3 1301 1938 5120000 83 Linux /dev/sda4 1938 4110 17444864 5 Extended /dev/sda5 1939 2066 1024000 82 Linux swap / Solaris /dev/sda6 2067 2198 1060290 83 Linux /dev/sda7 2199 2264 530113+ 83 Linux 这样磁盘就新建了一个分区/dev/sda7这个分区,记得离开fdisk的时候别忘是保存哦!要想使用分区/dev/sda7还需要对它进行格式化,使其变为系统能够识别的文件系统。 [root@bogon ~]# mkfs -t ext4 /dev/sda7 ///格式化磁盘 mke2fs 1.41.12 (17-May-2010) 无法对 /dev/sda7 进行 stat 调用 — 没有那个文件或目录 The device apparently does not exist; did you specify it correctly? 啊!这个是什么东东,我在推出fdisk的时候已经保存过了,怎么还会出现这个呢!!! 注意:当你格式化的时候,提示没有找到文件什么的,就需要重启电脑了哦!若不想重启电脑就可以使用partprobe这个命令,来强制让内核重新找一次分区表。如果使用了这个命令,还提示要重启电脑的话,那就只有乖乖的重启了。 [root@bogon ~]# mkfs -t ext4 /dev/sda7 mke2fs 1.41.12 (17-May-2010) 文件系统标签= 操作系统:Linux 块大小=4096 (log=2) 分块大小=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 33200 inodes, 132528 blocks 6626 blocks (5.00%) reserved for the super user 第一个数据块=0 Maximum filesystem blocks=138412032 5 block groups 32768 blocks per group, 32768 fragments per group 6640 inodes per group Superblock backups stored on blocks: 32768, 98304 正在写入inode表: 完成 Creating journal (4096 blocks): 完成 Writing superblocks and filesystem accounting information: 完成 This filesystem will be automatically checked every 20 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. OK!好了,格式化成功了,下面直接挂载到目录下面就可以使用了哦! 删除分区 Command (m for help): p Disk /dev/sda: 33.8 GB, 33802977280 bytes 255 heads, 63 sectors/track, 4109 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: 0x000d2ed8 Device Boot Start End Blocks Id System /dev/sda1 * 1 26 204800 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 26 1301 10240000 83 Linux /dev/sda3 1301 1938 5120000 83 Linux /dev/sda4 1938 4110 17444864 5 Extended /dev/sda5 1939 2066 1024000 82 Linux swap / Solaris /dev/sda6 2067 2198 1060290 83 Linux /dev/sda7 2199 2264 530113+ 83 Linux Command (m for help): d ///删除分区 Partition number (1-7): 7 ///选择删除哪一个 Command (m for help): p Disk /dev/sda: 33.8 GB, 33802977280 bytes 255 heads, 63 sectors/track, 4109 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: 0x000d2ed8 Device Boot Start End Blocks Id System /dev/sda1 * 1 26 204800 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 26 1301 10240000 83 Linux /dev/sda3 1301 1938 5120000 83 Linux /dev/sda4 1938 4110 17444864 5 Extended /dev/sda5 1939 2066 1024000 82 Linux swap / Solaris /dev/sda6 2067 2198 1060290 83 Linux 本次只是介绍了一点,linux上简单的磁盘分区,当然磁盘上的东东,不仅仅是这些东西。而对于一些磁盘的inode和block,还有修改磁盘参数等等!!! (责任编辑:IT) |