执行fdisk -l         #fdisk命令:观察硬盘的实体使用情形与分割硬盘用。


或者用 dmesg | grep sd

dmesg.png?psid=1

--------------------------------------------------------------------------------------
[root@localhost ~]# fdisk -l |more
Disk /dev/sda: 1999.0 GB, 1998998994944 bytes
255 heads, 63 sectors/track, 243031 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x000a9b07

  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        3851    30720000   83  Linux
/dev/sda3            3851        4361     4096000   82  Linux swap / Solaris
/dev/sda4            4361      243032  1917125632    5  Extended
/dev/sda5            4361      243032  1917124608   83  Linux

Disk /dev/sdb: 1999.0 GB, 1998998994944 bytes
255 heads, 63 sectors/track, 243031 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x0002cce9

  Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1      243031  1952146476   83  Linux
Partition 1 does not start on physical sector boundary.
|||||||||||||||
|||||||||||||||
|||||||||||||||
Disk /dev/sdl: 1999.0 GB, 1998998994944 bytes
255 heads, 63 sectors/track, 243031 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x0007e7dc

  Device Boot      Start         End      Blocks   Id  System
/dev/sdl1               1      243031  1952146476   83  Linux
Partition 1 does not start on physical sector boundary.
-----------------------------------------------------------------------------------------

以上信息可以看出服务器有12块2TB硬盘 第一块硬盘已经安装系统挂载了data目录,要求为其他的11块硬盘分别挂载为data1--data11


创建挂载目录

mkdir data**     #创建一个目录作为挂载使用


linux中批量创建文件和文件夹的方法

mkdir data{1..11} #批量创建11个data1-11的文件夹

fidisk创建新硬盘分区命令帮助

fdisk.png?psid=1

创建磁盘分区步骤举例如下:

  # fdisk /dev/sd*

进入fdisk模式:

Command (m for help):m   //查看fdisk命令帮助

Command (m for help):n   //创建新分区

Command action

e extended    //输入e为创建扩展分区

p primary partition (1-4)     //输入p为创建主分区,这里我们选择p

Partion number(1-4)1     //第一个扩展分区,按需求可以最多分4个主分区

First Cylinder(1-1014,default 1): 1   //第一个主分区起始的磁盘块数,可以选择默认值

Last cylindet or +siza or +sizeM or +sizeK:  +1024MB //可以是以MB为单位的数字或者

以磁盘块数,这里我们输入+1024MB表示分区大小为1G

这样我们就创建完一个分区,如果要创建更多分区可以照上面的步骤继续创建。所有分区创建完后用w保存分区。

Command (m for help): w

The partition table has been altered!

保存完成后重启服务器,可以用#fdisk -l 命令检查刚刚所建分区,可以在返回结果中确认/dev/sdb1的信息。

继续添加逻辑磁盘

fdisk /dev/sd*   #创建分区  
n                #
输入n添加新分区
e                #
输入e添加逻辑磁盘
1                #
输入1分区编号,一个盘一个分区所以选择1
enter            #回车默认起始磁道
enter            #回车默认结束磁道
w                #
输入w保存退出

这一步完成 例如 操作sdc 会看到
  Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1      243031  1952146476    5  Extended

继续进一步逻辑分区创建
fdisk /dev/sd*   #创建分区  
n                #添加新分区
l                #进入划分逻辑分区              
enter            #回车默认起始磁道
enter            #回车默认结束磁道
w                #保存退出


这一步完成后系统会看到
  Device Boot      Start         End      Blocks   Id  System
/dev/sdc5               1      243031  1952146444+  83  Linux

创建文件系统格式化磁盘  选择system 为linux  例如 sdc5

mkfs.ext3 /dev/sd** #创建文件系统 一般都为sd*5  2TB硬盘格式化,此过程要15分钟左右

This filesystem will be automatically checked every 33 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

如上提示表示创建完成

mkfs.png?psid=1



挂载分区到data*目录

mount /dev/sd** /data* 挂载分区

umount /dev/sd**  如操作错误,卸载分区

重复以上操作,依次挂载到sdl磁盘,使用df查看结果

df.png?psid=1


常用操作:


df  -k  以千字节KB 为单位显示各分区的信息
df  -a  显示所有分区包括大小为0 的分区
df  -T  显示分区类型EXT2 或EXT3 等


[root@localhost ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2              29G  711M   27G   3% /
tmpfs                  24G     0   24G   0% /dev/shm
/dev/sda1             194M   25M  159M  14% /boot
/dev/sda5             1.8T  196M  1.7T   1% /data
/dev/sdb5             1.8T  196M  1.7T   1% /data1
/dev/sdc5             1.8T  196M  1.7T   1% /data2
/dev/sdd5             1.8T  196M  1.7T   1% /data3
/dev/sde5             1.8T  196M  1.7T   1% /data4
/dev/sdf5             1.8T  196M  1.7T   1% /data5
/dev/sdg5             1.8T  196M  1.7T   1% /data6
/dev/sdh5             1.8T  196M  1.7T   1% /data7
/dev/sdi5             1.8T  196M  1.7T   1% /data8
/dev/sdj5             1.8T  196M  1.7T   1% /data9
/dev/sdk5             1.8T  196M  1.7T   1% /data10
/dev/sdl5             1.8T  196M  1.7T   1% /data11


因为mount挂载,重启服务器后会失效,所以需要将分区信息写到/etc/fstab文件中让它永久挂载:


vi /etc/fstab  #设置开机自动挂载

添加如下字段

/dev/sd*5               /data*                ext3    defaults        0 0

在修改/etc/fstab文件后,运行mount -a命令验证一下配置是否正确,否则错误配置fstab文件导致系统无法正常启动。如果系统无法正常启动,则输入root密码进入修复模式,关键的一步是重新mount /(mount -n -o remount,rw /。如果没有此步操作,则文件系统处于只读状态,导致不能修改配置文件并保存,修复存在的问题。

补充下fstab使用帮助

fs_spec fs_file fs_type fs_options fs_dump fs_pass 
/dev/hda1 /   ext2  defaults    1    1 
(1)fs_spec: 该字段定义希望加载的文件系统所在的设备或远程文件系统,对于一般的本地块设备情况来说:IDE设备一般描述为 /dev/hdaXN,X是IDE 设备通道(a, b, or c),N代表分区号;SCSI设备一描述为/dev/sdaXN。对于NFS情况,格式一般为:,例如: `knuth.aeb.nl:/'。对于procfs,使用`proc'来定义。 对文件系统的定义(fs spec),它描述了将被装载的块设备或远程文件系统。对于通常的mount操作而言,这个字段应该包括一个将被装载的块设备的设备结点(通过mknod 命令来创建)或指向这类结点的连接(例如/dev/cdrom或/dev/sdb),对于NFS mount操作,这个字段应该包含host:dir格式的信息,例如:knuth.aeb.nl:/,对于进程文件系统procfs,使用proc。除了显示的使用设备名,你可以使用设备的UUID或设备的卷标签,例如,你可以在这个字段写成“LABAL=root”或“UUID=3e6be9de -8139-11d1-9106-a43f08d823a6”,这将使系统更具伸缩性。例如,如果你的系统添加或移除了一个SCSI硬盘,这有可以改变你的设备名,但它不会修改你的卷标签。
(2)fs_file: 该字段描述希望的文件系统加载的目录点,对于swap设备,该字段为none;对于加载目录名包含空格的情况,用40来表示空格。描述文件系统的载入点,对于交换分区(swap),这个字段定义为none,如果在载入点的路径中包含空格符,可以用“/040”来替代空格符。
(3)fs_type: 定义了该设备上的文件系统,一般常见的文件类型为ext2 (Linux设备的常用文件类型)、vfat(Windows系统的fat32格式)、NTFS、iso9600等.文件系统类型(fs vfstype),主要用来定义文件系统的类型。Linux系统支持大量的文件类型,包括sdfs,affs,autofs,jfs,minix, msdos, ncpfs, nfs, ntfs, proc, qnx4, reiserfs, romfs,,smbfs, sysv, tmpfs, udf, ufs, umsdos, vfat, xenix, xfs等等。如果想了解你的kernel目前支持哪些文件系统,可以查看/proc/filesystems的内容。如果这个字段定义为swap,这条纪录将关联到一个用于交换目的的文件或分区。如果这个字段定义为ignored,这行将被忽略。这对于显示目前没有使用的分区非常有用。
(4)fs_options: 指定加载该设备的文件系统是需要使用的特定参数选项,多个参数是由逗号分隔开来。文件系统选项(fs mntops)在装载文件系统时使用的装载选项。多个选项之间用逗号做分隔符,这些选项列表包括了装载类型以及对于该文件系统合适的其它装载选项。对于非 NFS系统可用的装载选项可以参看mount命令的说明,对于nfs系统的选项可以查看关于nfs的文档。对于所有文件系统都适用的选项有noauto (当使用mount –a命令时不载入),user(允许用户进行装载),owner(允许设备所有人装载),_netdev(设备需要网络),后两个选项是linux系统所特有的。对于大多数系统使用"defaults"就可以满足需要。其他常见的选项包括:

选项    含义
ro    以只读模式加载该文件系统
sync   不对该设备的写操作进行缓冲处理,这可以防止在非正常关机时情况下破坏文件系统,但是却降低了计算机速度
user   允许普通用户加载该文件系统
quota   强制在该文件系统上进行磁盘定额限制
noauto  不再使用mount -a命令(例如系统启动时)加载该文件系统
(5)fs_dump: 该选项被"dump"命令使用来检查一个文件系统应该以多快频率进行转储,若不需要转储就设置该字段为0.文件系统频率(fs_freq),被dump程序使用来确定哪个文件系统需要dump,如果最后一个字段没有设置,系统将认为其值为0,而dump程序则认为此文件系统无需dump。
(6)fs_pass:  该字段被fsck命令用来决定在启动时需要被扫描的文件系统的顺序,根文件系统"/"对应该字段的值应该为1,其他文件系统应该为2。若该文件系统无需在启动时扫描则设置该字段为0.被fsck程序所使用来确定进行在系统重启进行文件系统检查时的顺序,对于根系统/这个值应设为1,其它文件系统可以设为2,在同一个物理硬盘内的文件系统应该被顺序检测,而不同硬盘中的文件系统则应该同时检测以充分利用系统的并行性。如果最后一个字段值为0或没有设置,fsck程序装跳过此文件系统的检测。