Linux磁盘挂载详述

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

猜你喜欢

转载自www.cnblogs.com/jing99/p/9375313.html