1、查看硬盘信息及分区
一般使用”fdisk -l”命令可以列出系统中当前连接的硬盘,设备和分区信息。新硬盘没有分区信息,则只显示硬盘大小信息。
[root@localhost home]# fdisk -l 磁盘 /dev/sda:64.4 GB, 64424509440 字节,125829120 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x000a47ad 设备 Boot Start End Blocks Id System /dev/sda1 * 2048 1026047 512000 83 Linux /dev/sda2 1026048 125829119 62401536 8e Linux LVM 磁盘 /dev/sdb:1649.3 GB, 1649267441664 字节,3221225472 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节
例如:
Disk /dev/sda: 42.9 GB, 42949672960 bytes 255 heads, 63 sectors/track, 5221 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: 0x0004406e Device Boot Start End Blocks Id System /dev/sda1 * 1 39 307200 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 39 2589 20480000 83 Linux /dev/sda3 2589 2850 2097152 82 Linux swap / Solaris /dev/sda4 2850 5222 19057664 5 Extended /dev/sda5 2850 5222 19056640 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: 0x14b52796 Device Boot Start End Blocks Id System
2、发现磁盘后,对磁盘进行分区
发现有磁盘,记住路径为/dev/sdb。然后使用fdisk命令进行建立分区。
命令(输入 m 获取帮助):m 命令操作 a toggle a bootable flag #命令指定启动分区; b edit bsd disklabel c toggle the dos compatibility flag d delete a partition #命令删除一个存在的分区; g create a new empty GPT partition table G create an IRIX (SGI) partition table l list known partition types #命令显示分区ID号的列表; m print this menu #查看fdisk命令帮助; 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 #命令修改分区的类型ID号; u change display/entry units v verify the partition table w write table to disk and exit #命令是将对分区表的修改存盘让它发生作用。 x extra functionality (experts only)
注意:(MBR类型磁盘——用fdisk###GPT类型磁盘——用parted)。fdisk不支持大于2T的分区寻址,当硬盘小于等于2T时,可以用fdisk进行分区;当硬盘大于2T时,用parted进行分区。
1>.使用用fdisk进行分区:
fdisk /dev/sdb 命令(输入 m 获取帮助):n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): Using default response p 分区号 (1-4,默认 1): 起始 扇区 (2048-3221225471,默认为 2048): 依照提示,回车表示默认。默认值 2048 Last 扇区, +扇区 or +size{K,M,G} (2048-3221225471,默认为 3221225471): 依照提示,回车表示默认。默认值 3221225471 分区 1 已设置为 Linux 类型,大小设为 1.5 TiB
另:检查分区情况(此时还未执行分区操作) Command(m for help):p 保存退出命令(输入 m 获取帮助):w The partition table has been altered! Calling ioctl() to re-read partition table. 正在同步磁盘。
2>.当硬盘大于2T时,用parted命令创建主分区的步骤。
parted /dev/sdb (用part命令对3T硬盘进行分区处理) mklabel gpt (用gpt格式可以将3TB弄在一个分区里) unit TB (设置单位为TB) mkpart primary 0 3 (设置为一个主分区,大小为3TB,开始是0,结束是3) print (显示设置的分区大小) quit (退出parted程序)
3>.当硬盘大于2T时,用parted命令创建逻辑分区过程。
parted /dev/sdb (用part命令对3T硬盘进行分区处理) mklabel gpt (用gpt格式可以将3TB弄在一个分区里) unit TB (设置单位为TB) mkpart (设置为一个逻辑分区,大小为3TB,开始是0,结束是3) sdb01 输入分区名称 ext4 输入分区的格式 0 输入分区的开始位置 10 输入分区的结束位置 print (显示设置的分区大小)(这里显示size为10TB) quit (退出parted程序)
分区完成后,可以用fdisk -l查看分区。
3、格式化分区
建好分区后要格式化分区,建立文件系统。mkfs命令-->make filesystem的缩写;用来在特定的分区建立Linux文件系统。
命令作用:该命令用来在特定的分区创建linux文件系统,常见的文件系统有ext2,ext3,vfat等,执行mkfs命令其实是在调用:mkfs.ext3 | mkfs.reiserfs |mkfs.ext2 | mkdosfs | mkfs.msdos | mkfs.vfat。
例如:mkfs.ext3 /dev/sdb1 //注:将/dev/sdb1格式化为ext3类型
mke2fs 1.41.12 (17-May-2010) 文件系统标签= 操作系统:Linux 块大小=4096 (log=2) 分块大小=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 640848 inodes, 2562359 blocks 128117 blocks (5.00%) reserved for the super user 第一个数据块=0 Maximum filesystem blocks=2625634304 79 block groups 32768 blocks per group, 32768 fragments per group 8112 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632 正在写入inode表: 完成 Creating journal (32768 blocks): 完成 Writing superblocks and filesystem accounting information: 完成 This filesystem will be automatically checked every 35 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
Linux下查看磁盘分区的格式有很多种方法:
1. df -T 只可以查看已经挂载的分区和文件系统类型。
2. fdisk -l 可以显示出所有挂载和未挂载的分区,但不显示文件系统类型。
3. parted -l 可以查看未挂载的文件系统类型,以及哪些分区尚未格式化。
4. lsblk -f 也可以查看未挂载的文件系统类型。
5. file -s /dev/sdb1
4、创建挂载点
创建一个目录,以后磁盘就归属于这个目录:
创建/home/data目录:#mkdir /home/data
5、挂载磁盘
挂在磁盘可以手动挂载(mount)或者开机启动挂载(reboot)。其中手动挂载可以是修改磁盘配置表/etc/fstab,然后mount -a,或者直接使用mount命令挂载。
mount(选项)(参数)
选项
-V:显示程序版本;
-l:显示已加载的文件系统列表;
-h:显示帮助信息并退出;
-v:冗长模式,输出指令执行的详细信息;
-n:加载没有写入文件“/etc/mtab”中的文件系统;
-r:将文件系统加载为只读模式;
-a:加载文件“/etc/fstab”中描述的所有文件系统。
参数
设备文件名:指定要加载的文件系统对应的设备名;
加载点:指定加载点目录。
例如:
[root@localhost home]# mount /dev/sdb1 /home/data/ mount: block device /dev/sdb1 is write-protected, mounting read-only 挂载成功
注意:如果没有提前创建/home/data,则会报错,不能挂载成功。如:
mount -t auto /dev/sdb1 /home/data mount: mount point /home/data does not exist /home/data目录不存在,需要先创建。
或者是通过修改fstab文件挂在磁盘,vim /etc/fstab。在末尾加入:
/dev/sdb1(磁盘分区) /home/data(挂载目录) ext3(文件格式:需要与sdb1文件格式一致)defaults 0 0
因为mount挂载在重启服务器后会失效,所以最好需要将分区信息写到/etc/fstab文件中让它永久挂载:最后通过mount -a,或者reboot虚拟机都可以实现磁盘绑定。
6、确认挂载是否成功
可以通过df -h或者df -h (具体挂载点)查看是否磁盘挂载成功。如:
[root@localhost home]# df -TH /home/data/ 文件系统 类型 容量 已用 可用 已用% 挂载点 /dev/sdb1 xfs 1.7T 34M 1.7T 1% /home/data
7、重新mount方法
如果磁盘需要重新绑定,重新按照上述方法即可,如果reaonly file system,/etc/fstab是只读的,此时需要重新mount,改为可读写。
mount命令为:mount -o remount,rw -t 文件系统格式 磁盘名称 挂载点,如:
mount -o remount,rw -t ext3 /dev/sdb1 /home/data