CentOS 挂载(U盘NTFS格式,新硬盘,增加交换分区,扩展根分区等)

1、挂载fat或者fat32分区的U盘

如果是用VM安装的linux,在vm里挂载U盘有两个前提:

第一,主机里的service要启动:

第二,U盘是连接到虚拟机,而不是主机,需要确认这点:

2、使用fdisk命令先检查一下U盘是否已经加载

fdisk -l

设备/dev/sdb1 就是插入的U盘,FAT32分区

加载:
[root@bigdata-senior01 ~]# ll /mnt/usb
总用量 0
[root@bigdata-senior01 ~]# mount /dev/sdb1 /mnt/usb
[root@bigdata-senior01 ~]# ll /mnt/usb
总用量 760
-rwxr-xr-x 1 root root  34494 1月   2 01:22 autorun.ico
-rwxr-xr-x 1 root root    236 1月   2 01:22 autorun.inf
-rwxr-xr-x 1 root root     14 1月   2 00:50 CentOS_BuildTag
... ...
用df命令可以再检查一下:
[root@bigdata-senior01 ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   17G  4.2G   13G   25% /
devtmpfs                 901M     0  901M    0% /dev
tmpfs                    912M     0  912M    0% /dev/shm
tmpfs                    912M  8.6M  904M    1% /run
tmpfs                    912M     0  912M    0% /sys/fs/cgroup
/dev/sda1               1014M  143M  872M   15% /boot
tmpfs                    183M     0  183M    0% /run/user/1004
/dev/sdb1                 15G  4.2G   11G   30% /mnt/usb
当不再使用U盘的时候,需要卸载设备
[root@bigdata-senior01 ~]# umount /dev/sdb1
[root@bigdata-senior01 ~]# ll /mnt/usb
总用量 0

2、挂载NTFS分区的U盘

2.1、安装NTFS-3G

CentOS默认情况下并不识别NTFS分区格式,需要使用一个开源的软件来支持。NTFS-3G 是一个开源的软件,可以实现 Linux、Free BSD、Mac OSX、NetBSD 和 Haiku 等操作系统中的 NTFS 读写支持。它可以安全且快速地读写 Windows 系统的 NTFS 分区,而不用担心数据丢失。

自带的yum源没有这个软件,要用第三方的软件源,这里采用阿里的epel。

[root@bigdata-senior01 ~]# cd /etc/yum.repos.d/
[root@bigdata-senior01 yum.repos.d]# wget http://mirrors.aliyun.com/repo/epel-7.repo

yum -y install ntfs-3g

安装NTFS-3G后,使用fdisk -l才能看到ntfs格式的u盘

这个U盘,是一个通用PE制作的启动U盘,被分成了两个分区,启动分区是FAT16,另外数据分区是NTFS,这里需要加载/dev/sdb1

挂载NTFS格式U盘
[root@bigdata-senior01 yum.repos.d]# ll /mnt/usb
总用量 0

[root@bigdata-senior01 yum.repos.d]# mount -t ntfs-3g /dev/sdb1 /mnt/usb
The disk contains an unclean file system (0, 0).
The file system wasn't safely closed on Windows. Fixing.

[root@bigdata-senior01 yum.repos.d]# ll /mnt/usb
总用量 0
drwxrwxrwx 1 root root 0 1月   9 09:54 backup
drwxrwxrwx 1 root root 0 1月   1 22:37 GHO
drwxrwxrwx 1 root root 0 1月   9 09:53 System Volume Information

参数-t ntfs-3g是可以省略的。CentOS7以后可以自动识别。
[root@bigdata-senior01 yum.repos.d]# umount /dev/sdb1
[root@bigdata-senior01 yum.repos.d]# ll /mnt/usb
总用量 0
[root@bigdata-senior01 yum.repos.d]# mount /dev/sdb1 /mnt/usb
[root@bigdata-senior01 yum.repos.d]# ll /mnt/usb
总用量 0
drwxrwxrwx 1 root root 0 1月   9 09:54 backup
drwxrwxrwx 1 root root 0 1月   1 22:37 GHO
drwxrwxrwx 1 root root 0 1月   9 09:53 System Volume Information

3、挂载一块新硬盘

3.1、物理设备命名规则

在 Linux 系统中一切都是文件,硬件设备也不例外。系统内核中的 udev 设备管理器会自动把硬件名称规范起来。
目的是让用户通过设备文件的名字可以猜出设备大致的属性以及分区信息等;这对于陌生的设备来说特别方便。
另外,udev设备管理器的服务会一直以守护进程的形式运行并侦听内核发出的信号来管理
/dev目录下的设备文件。
常见的设备:
IDE设备       /dev/hd[a-d]
SCSI/SATA/U盘  /dev/sd[a-p]
软驱        /dev/fd[0-1]
打印机       /dev/lp[0-15]
光驱        /dev/cdrom
鼠标         /dev/mouse
磁带机       /dev/st0 或/dev/ht0
系统采用 a~p 来代表 16 块不同的硬盘(默认从 a 开始分配)。
硬盘的分区编号:
1) 主分区或扩展分区的编号从 1 开始,到 4 结束;
2) 逻辑分区从编号 5 开始

/dev/sda 表示第一块硬盘,这是由系统内核的识别顺序来决定的,和设备主板的插槽顺序没有完全一致的对应关系。
/dev/sda1 表示第一块硬盘的分区编号为1的分区,这个编号一般是顺延,但是可以手动指定,所以1号分区不一定就是在最前。

3.2、主分区、逻辑分区

硬盘设备是由大量的扇区组成的,每个扇区的容量为 512 字节。
其中第一个扇区最重要,它里面保存着主引导记录(Master boot record,MBR)与分区表信息。
就第一个扇区来讲,主引导记录需要占用
446 字节,分区表为 64 字节,结束符占用 2 字节;
其中分区表中每记录一个分区信息就需要
16 字节,这样一来最多只有64/16= 4 个分区,只有4个分区信息可以写到第一个扇区中,这 4 个分区就是4个主分区。

第一个扇区最多只能创建出 4 个分区。了解决分区个数不够的问题,将第一个扇区的分区表中 16 字节(属于主分区信息)的空间拿出来指向另外一个分区。
扩展分区其实并不是一个真正的分区,而像是一个占用 16 字节分区表空间的指针,一个指向另外一个分区的指针,这是一个单向链表结构。
这样一来,用户一般会选择使用 3 个主分区加 1 个扩展分区的方法,然后在扩展分区中创建出数个逻辑分区,从而来满足大于4多分区的需求。

一般情况下:主分区为sda1,sda2,sda3,如果有sda4,那么就没有逻辑分区。如果需要逻辑分区,那么sda4将会空出来,逻辑分区会从sda5开始计算。

3.3 开始挂载新硬盘

如果是在vm中加载新硬盘,停止vm后编辑虚拟机,点击新增,按缺省的添加一块scsi的20g硬盘。

从上面的知识,挂载的新硬盘是第二块硬盘,设备应该是/dev/sdb

1)先用fdisk -l命令查看是否有新的硬盘被识别。

2)开始分区:

fdisk命令在指定硬盘名称后会进入交互命令模式,根据提示按m键可以查看所有可用命令参数。

[root@bigdata-senior01 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0xfe9194c7 创建新的 DOS 磁盘标签。

命令(输入 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
   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)

命令(输入 m 获取帮助):

#输入n来创建分区,因为是一个新的硬盘,我们直接创建主分区
命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+2G
分区 1 已设置为 Linux 类型,大小设为 2 GiB

命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。
#上面,我们分了一个主分区,然后大小为2g,最后用w命令写入变更。

#查看新的分区是否有效
[root@bigdata-senior01 ~]# file /dev/sdb1
/dev/sdb1: block special

#这说明已经生效,如果出现
/dev/sdb1: cannot open (No such file or directory)
那么需要执行partprobe命令进行内核通知,或者重启系统。

3)开始格式化:

#打mkfs后,按两下tab键补全命令后,可以看到可以使用的格式化命令
#将/dev/sdb1格式化成xfs格式,这个是CentOS7新的格式
[root@bigdata-senior01 ~]# mkfs
mkfs         mkfs.btrfs   mkfs.cramfs  mkfs.ext2    mkfs.ext3    mkfs.ext4    mkfs.minix   mkfs.xfs
[root@bigdata-senior01 ~]# mkfs.xfs /dev/sdb1
meta-data=/dev/sdb1              isize=512    agcount=4, agsize=131072 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=524288, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

4)开始挂载

[root@bigdata-senior01 ~]# mount /dev/sdb1  /backup
[root@bigdata-senior01 ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   17G  4.2G   13G   25% /
devtmpfs                 901M     0  901M    0% /dev
tmpfs                    912M     0  912M    0% /dev/shm
tmpfs                    912M  8.6M  904M    1% /run
tmpfs                    912M     0  912M    0% /sys/fs/cgroup
/dev/sda1               1014M  143M  872M   15% /boot
tmpfs                    183M     0  183M    0% /run/user/1004
/dev/sdb1                2.0G   33M  2.0G    2% /backup

#备份/etc目录文件到/backup/etc_backup
[root@bigdata-senior01 /]# cp -R /etc/* /backup/etc_backup/

[root@bigdata-senior01 /]# du -sh /backup/etc_backup/
34M    /backup/etc_backup/

5)永久挂载

[root@bigdata-senior01 /]# vi /etc/fstab 
#
# /etc/fstab
# Created by anaconda on Sun Apr 29 17:25:33 2018
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=fa75616e-a122-4c73-9fd4-b1d50a4af91a /boot                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0
/dev/sdb1               /backup                 xfs     defaults        0 0

6)查看是否分区已经格式化

如果分区没有格式化,是无法挂载的,通过命令blkid可以查看格式化信息

[root@bigdata-senior01 /]# blkid
/dev/sda1: UUID="fa75616e-a122-4c73-9fd4-b1d50a4af91a" TYPE="xfs" 
/dev/sda2: UUID="LeV3fD-l62t-F4Gl-Tybf-HC2m-ki71-byH5cc" TYPE="LVM2_member" 
/dev/sdb1: UUID="32eb878b-3d7a-450e-9668-0f65c2be7d05" TYPE="xfs" 
/dev/sr0: UUID="2018-05-03-20-55-23-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos" 
/dev/mapper/centos-root: UUID="07a00359-cd62-458a-a150-f2d4a367abe3" TYPE="xfs" 
/dev/mapper/centos-swap: UUID="49c39eb4-4181-4c37-947c-2dc6311fbeea" TYPE="swap" 

4、添加交换分区

4.1、查看目前的交换分区情况

[es@bigdata-senior01 ~]$ swapon -s
文件名                类型        大小    已用    权限
/dev/dm-1                                  partition    2097148    0    -1

#查看/etc/fstab里自动挂载的情况
[es@bigdata-senior01 dev]$ cat /etc/fstab 

#
# /etc/fstab
# Created by anaconda on Sun Apr 29 17:25:33 2018
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=fa75616e-a122-4c73-9fd4-b1d50a4af91a /boot                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0
/dev/sdb1               /backup                 xfs     defaults  xfs   0 0

#发现/dev/mapper/centos-swap是交换分区,有点不对,再查看
[es@bigdata-senior01 ~]$ ll /dev/mapper
总用量 0
lrwxrwxrwx 1 root root       7 1月  15 09:57 centos-root -> ../dm-0
lrwxrwxrwx 1 root root       7 1月  15 09:57 centos-swap -> ../dm-1
crw------- 1 root root 10, 236 1月  15 09:57 control

#原来/dev/mapper/centos-swap是链接到/dev/dm-1,这就和swapon -s命令的结果对上了,但是/dev/dm-1又是什么呢,它不是一个分区设备文件,但是属于块文件。
#CentOS可以使用文件作为交换分区,也可以使用一个分区作为交换分区,所以/dev/dm-1是一个分区文件。

 4.2 、添加交换分区

[root@bigdata-senior01 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。


命令(输入 m 获取帮助):p

磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfe9194c7

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     4196351     2097152   83  Linux

命令(输入 m 获取帮助):n
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): p
分区号 (2-4,默认 2):2
起始 扇区 (4196352-41943039,默认为 4196352):
将使用默认值 4196352
Last 扇区, +扇区 or +size{K,M,G} (4196352-41943039,默认为 41943039):+3G
分区 2 已设置为 Linux 类型,大小设为 3 GiB

命令(输入 m 获取帮助):p

磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfe9194c7

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     4196351     2097152   83  Linux
/dev/sdb2         4196352    10487807     3145728   83  Linux

命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
正在同步磁盘。
[root@bigdata-senior01 ~]# file /dev/sdb2
/dev/sdb2: cannot open (No such file or directory)
[root@bigdata-senior01 ~]# partprobe
Warning: 无法以读写方式打开 /dev/sr0 (只读文件系统)。/dev/sr0 已按照只读方式打开。
[root@bigdata-senior01 ~]# file /devsdb2
/devsdb2: cannot open (No such file or directory)

[root@bigdata-senior01 ~]# partprobe
Warning: 无法以读写方式打开 /dev/sr0 (只读文件系统)。/dev/sr0 已按照只读方式打开。
[root@bigdata-senior01 ~]# file /dev/sdb2
/dev/sdb2: block special

#使用blkid命令查看一下分区的格式化信息
[root@bigdata-senior01 ~]# blkid
/dev/sda1: UUID="fa75616e-a122-4c73-9fd4-b1d50a4af91a" TYPE="xfs"
/dev/sda2: UUID="LeV3fD-l62t-F4Gl-Tybf-HC2m-ki71-byH5cc" TYPE="LVM2_member"
/dev/sdb1: UUID="32eb878b-3d7a-450e-9668-0f65c2be7d05" TYPE="xfs"
/dev/sr0: UUID="2018-05-03-20-55-23-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
/dev/mapper/centos-root: UUID="07a00359-cd62-458a-a150-f2d4a367abe3" TYPE="xfs"
/dev/mapper/centos-swap: UUID="49c39eb4-4181-4c37-947c-2dc6311fbeea" TYPE="swap"

#发现/dev/sdb2没有格式化,使用 SWAP 分区专用的格式化命令 mkswap,对新建的主分区进行格式化操作
[root@bigdata-senior01 ~]# mk
mkdict            mkfifo            mkfs.btrfs        mkfs.ext4         mkinitrd          mktemp
mkdir             mkfontdir         mkfs.cramfs       mkfs.minix        mklost+found      
mkdumprd          mkfontscale       mkfs.ext2         mkfs.xfs          mknod             
mke2fs            mkfs              mkfs.ext3         mkhomedir_helper  mkswap            
[root@bigdata-senior01 ~]# mkswap /dev/sdb2
正在设置交换空间版本 1,大小 = 3145724 KiB
无标签,UUID=a0971ea7-e603-40b3-94ff-88f82389717a

#查看一下格式化后的情况
[root@bigdata-senior01 ~]# blkid
/dev/sda1: UUID="fa75616e-a122-4c73-9fd4-b1d50a4af91a" TYPE="xfs"
/dev/sda2: UUID="LeV3fD-l62t-F4Gl-Tybf-HC2m-ki71-byH5cc" TYPE="LVM2_member"
/dev/sdb1: UUID="32eb878b-3d7a-450e-9668-0f65c2be7d05" TYPE="xfs"
/dev/sr0: UUID="2018-05-03-20-55-23-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
/dev/mapper/centos-root: UUID="07a00359-cd62-458a-a150-f2d4a367abe3" TYPE="xfs"
/dev/mapper/centos-swap: UUID="49c39eb4-4181-4c37-947c-2dc6311fbeea" TYPE="swap"
/dev/sdb2: UUID="a0971ea7-e603-40b3-94ff-88f82389717a" TYPE="swap"

#挂载到系统上
[root@bigdata-senior01 ~]# swapon /dev/sdb2

#查看交换分区情况,从2g->5g
[root@bigdata-senior01 ~]# free -h
              total        used        free      shared  buff/cache   available
Mem:           1.8G        171M        1.3G        8.6M        269M        1.4G
Swap:          5.0G          0B        5.0G

[root@bigdata-senior01 ~]# swapon -s
文件名                类型        大小    已用    权限
/dev/dm-1                                  partition    2097148    0    -1
/dev/sdb2                                  partition    3145724    0    -2

#永久挂载交换分区
[root@bigdata-senior01 ~]# vi /etc/fstab
#
# /etc/fstab
# Created by anaconda on Sun Apr 29 17:25:33 2018
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=fa75616e-a122-4c73-9fd4-b1d50a4af91a /boot                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0
/dev/sdb1               /backup                 xfs     defaults        0 0
/dev/sdb2               swap                    swap    defaults        0 0

4.3、用文件作为交换分区

1)创建要作为swap分区的文件:
增加1GB大小的交换分区,则命令写法如下,其中的count等于想要的块的数量(bs*count=文件大小)。
# dd if=/dev/zero of=/root/swapfile bs=1M count=1024

2)格式化为交换分区文件:
# mkswap /root/swapfile #建立swap的文件系统

3)启用交换分区文件:
# swapon /root/swapfile #启用swap文件

4)使系统开机时自启用,在文件/etc/fstab中添加一行:
/root/swapfile swap swap defaults 0 0

5)关闭交换分区swapoff /root/swapfile

5、总结几个查看磁盘情况的命令

fdisk -l #查看系统当下挂载磁盘情况
fdisk /dev/sdb #对为sdb磁盘分区
mkfs.xfs /dev/sdb1 #格式化sdb1分区
mkswap /dev/sdb2 #格式化为交换分区
blkid #查看磁盘情况
lsblk #查看分区和磁盘
cfdisk /dev/sda  #查看分区、操作分区、格式化分区等
df -hT #查看分区挂载、容量等
du -sh /backup #统计当前目录各文件夹大小

 6、根分区空间不足,如何扩展,将上例剩余的分区全部用于扩展根分区

[root@bigdata-senior01 ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   17G  4.2G   13G   25% /
devtmpfs                 901M     0  901M    0% /dev
tmpfs                    912M     0  912M    0% /dev/shm
tmpfs                    912M  8.6M  904M    1% /run
tmpfs                    912M     0  912M    0% /sys/fs/cgroup
/dev/sda1               1014M  143M  872M   15% /boot
/dev/sdb1                2.0G   67M  2.0G    4% /backup
tmpfs                    183M     0  183M    0% /run/user/1004

6.1、将/dev/sdb剩余空间全部使用分区成LVM分区

[root@bigdata-senior01 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。


命令(输入 m 获取帮助):p

磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfe9194c7

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     4196351     2097152   83  Linux
/dev/sdb2         4196352    10487807     3145728   83  Linux

命令(输入 m 获取帮助):n
Partition type:
   p   primary (2 primary, 0 extended, 2 free)
   e   extended
Select (default p): p
分区号 (3,4,默认 3):3
起始 扇区 (10487808-41943039,默认为 10487808):
将使用默认值 10487808
Last 扇区, +扇区 or +size{K,M,G} (10487808-41943039,默认为 41943039):
将使用默认值 41943039
分区 3 已设置为 Linux 类型,大小设为 15 GiB

命令(输入 m 获取帮助):t #修改分区
分区号 (1-3,默认 3):3
Hex 代码(输入 L 列出所有代码):L

 0  空              24  NEC DOS         81  Minix / 旧 Linu bf  Solaris        
 1  FAT12           27  隐藏的 NTFS Win 82  Linux 交换 / So c1  DRDOS/sec (FAT-
 2  XENIX root      39  Plan 9          83  Linux           c4  DRDOS/sec (FAT-
 3  XENIX usr       3c  PartitionMagic  84  OS/2 隐藏的 C:  c6  DRDOS/sec (FAT-
 4  FAT16 <32M      40  Venix 80286     85  Linux 扩展      c7  Syrinx         
 5  扩展            41  PPC PReP Boot   86  NTFS 卷集       da  非文件系统数据 
 6  FAT16           42  SFS             87  NTFS 卷集       db  CP/M / CTOS / .
 7  HPFS/NTFS/exFAT 4d  QNX4.x          88  Linux 纯文本    de  Dell 工具      
 8  AIX             4e  QNX4.x 第2部分  8e  Linux LVM       df  BootIt         
 9  AIX 可启动      4f  QNX4.x 第3部分  93  Amoeba          e1  DOS 访问       
 a  OS/2 启动管理器 50  OnTrack DM      94  Amoeba BBT      e3  DOS R/O        
 b  W95 FAT32       51  OnTrack DM6 Aux 9f  BSD/OS          e4  SpeedStor      
 c  W95 FAT32 (LBA) 52  CP/M            a0  IBM Thinkpad 休 eb  BeOS fs        
 e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a5  FreeBSD         ee  GPT            
 f  W95 扩展 (LBA)  54  OnTrackDM6      a6  OpenBSD         ef  EFI (FAT-12/16/
10  OPUS            55  EZ-Drive        a7  NeXTSTEP        f0  Linux/PA-RISC  
11  隐藏的 FAT12    56  Golden Bow      a8  Darwin UFS      f1  SpeedStor      
12  Compaq 诊断     5c  Priam Edisk     a9  NetBSD          f4  SpeedStor      
14  隐藏的 FAT16 <3 61  SpeedStor       ab  Darwin 启动     f2  DOS 次要       
16  隐藏的 FAT16    63  GNU HURD or Sys af  HFS / HFS+      fb  VMware VMFS    
17  隐藏的 HPFS/NTF 64  Novell Netware  b7  BSDI fs         fc  VMware VMKCORE 
18  AST 智能睡眠    65  Novell Netware  b8  BSDI swap       fd  Linux raid 自动
1b  隐藏的 W95 FAT3 70  DiskSecure 多启 bb  Boot Wizard 隐  fe  LANstep        
1c  隐藏的 W95 FAT3 75  PC/IX           be  Solaris 启动    ff  BBT            
1e  隐藏的 W95 FAT1 80  旧 Minix       
Hex 代码(输入 L 列出所有代码):8e
已将分区“Linux”的类型更改为“Linux LVM”

命令(输入 m 获取帮助):p

磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfe9194c7

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     4196351     2097152   83  Linux
/dev/sdb2         4196352    10487807     3145728   83  Linux
/dev/sdb3        10487808    41943039    15727616   8e  Linux LVM

命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
正在同步磁盘。
[root@bigdata-senior01 ~]# file /dev/sdb3
/dev/sdb3: cannot open (No such file or directory)
[root@bigdata-senior01 ~]# partprobe
Warning: 无法以读写方式打开 /dev/sr0 (只读文件系统)。/dev/sr0 已按照只读方式打开。
[root@bigdata-senior01 ~]# file /dev/sdb3
/dev/sdb3: block special

6.2、创建物理卷

[root@bigdata-senior01 ~]# fdisk -l

磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000af76c

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    41943039    19921920   8e  Linux LVM

磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfe9194c7

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     4196351     2097152   83  Linux
/dev/sdb2         4196352    10487807     3145728   83  Linux
/dev/sdb3        10487808    41943039    15727616   8e  Linux LVM

磁盘 /dev/mapper/centos-root:18.2 GB, 18249416704 字节,35643392 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

[root@bigdata-senior01 ~]# pvcreate /dev/sdb3
  Physical volume "/dev/sdb3" successfully created.

6.3、扩展卷组

[root@bigdata-senior01 ~]# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               centos  #卷组名
  PV Size               <19.00 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              4863
  Free PE               0
  Allocated PE          4863
  PV UUID               LeV3fD-l62t-F4Gl-Tybf-HC2m-ki71-byH5cc
   
  "/dev/sdb3" is a new physical volume of "<15.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb3
  VG Name               
  PV Size               <15.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               Wgpb02-82cG-b8Ft-V38g-QPwW-5TL0-XgRqLJ
   
[root@bigdata-senior01 ~]# vgextend centos /dev/sdb3 #将新的物理卷加入到卷组中(vg=centos)
  Volume group "centos" successfully extended
[root@bigdata-senior01 ~]# vgdisplay
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  4
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               33.99 GiB
  PE Size               4.00 MiB
  Total PE              8702
  Alloc PE / Size       4863 / <19.00 GiB
  Free  PE / Size       3839 / <15.00 GiB   #空余的加入了
  VG UUID               Gzx0ol-t83a-Sfq3-ydPQ-Kddb-2ry6-71u7Ih

6.4、扩展逻辑卷

[root@bigdata-senior01 ~]# lvdisplay
  --- Logical volume ---
  LV Path                /dev/centos/swap
  LV Name                swap
  VG Name                centos
  LV UUID                sKV6uz-b4Zh-gf5W-x09d-HaX1-Up0X-rdvYeg
  LV Write Access        read/write
  LV Creation host, time localhost, 2018-04-29 17:25:31 +0800
  LV Status              available
  # open                 2
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1
   
  --- Logical volume ---
  LV Path                /dev/centos/root
  LV Name                root
  VG Name                centos
  LV UUID                81HqZi-xFgr-Z9a6-jX5p-KVI6-Oahi-JXNEoT
  LV Write Access        read/write
  LV Creation host, time localhost, 2018-04-29 17:25:32 +0800
  LV Status              available
  # open                 1
  LV Size                <17.00 GiB
  Current LE             4351
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0
[root@bigdata-senior01 ~]# lvextend -l +100%free /dev/mapper/centos-root
  Size of logical volume centos/root changed from <17.00 GiB (4351 extents) to 31.99 GiB (8190 extents).
  Logical volume centos/root successfully resized.
[root@bigdata-senior01 ~]# lvdisplay
  --- Logical volume ---
  LV Path                /dev/centos/swap
  LV Name                swap
  VG Name                centos
  LV UUID                sKV6uz-b4Zh-gf5W-x09d-HaX1-Up0X-rdvYeg
  LV Write Access        read/write
  LV Creation host, time localhost, 2018-04-29 17:25:31 +0800
  LV Status              available
  # open                 2
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1
   
  --- Logical volume ---
  LV Path                /dev/centos/root
  LV Name                root
  VG Name                centos
  LV UUID                81HqZi-xFgr-Z9a6-jX5p-KVI6-Oahi-JXNEoT
  LV Write Access        read/write
  LV Creation host, time localhost, 2018-04-29 17:25:32 +0800
  LV Status              available
  # open                 1
  LV Size                31.99 GiB
  Current LE             8190
  Segments               2
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0
#检查一下分区文件系统
[root@bigdata-senior01 ~]# blkid /dev/mapper/centos-root
/dev/mapper/centos-root: UUID="07a00359-cd62-458a-a150-f2d4a367abe3" TYPE="xfs"
#使用xfs分区扩展命令扩展xfs分区系统,ext4分区使用resize2fs命令
[root@bigdata-senior01 ~]# xfs_growfs /dev/mapper/centos- centos-root centos-swap [root@bigdata-senior01 ~]# xfs_growfs /dev/mapper/centos-root #ext4用resize2fs meta-data=/dev/mapper/centos-root isize=512 agcount=4, agsize=1113856 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0 spinodes=0 data = bsize=4096 blocks=4455424, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 4455424 to 8386560 [root@bigdata-senior01 ~]# df -h 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/centos-root 32G 4.2G 28G 13% / devtmpfs 901M 0 901M 0% /dev tmpfs 912M 0 912M 0% /dev/shm tmpfs 912M 8.6M 904M 1% /run tmpfs 912M 0 912M 0% /sys/fs/cgroup /dev/sda1 1014M 143M 872M 15% /boot /dev/sdb1 2.0G 67M 2.0G 4% /backup tmpfs 183M 0 183M 0% /run/user/1004

17+15=32,扩展完成。

警告:在生产环境中,尽量不要把其他块硬盘扩充到根里,每加一块硬盘到根目录相当于增加了50%硬盘故障风险,得不偿失。目前在xfs分区格式下,文件系统无法缩小,

如果第二块硬盘损坏,可能会导致整个系统的崩溃,解决起来也非常麻烦。

6.5、总结一下扩展卷

1)fdisk /dev/sdb 分区,设置成LVM分区格式,使用partprobe,确保分区有效
2)pvcreate /dev/sdb3,创建物理卷
3)vgextend VolGroup /dev/sdb3,扩展卷组
4)lvextend -l +100%free /dev/mapper/centos-root,扩展逻辑卷
5)xfs_growfs /dev/mapper/centos-root,扩展文件系统
6)df -h,检查是否扩展完成

 

posted @ 2019-01-14 23:07  我是属车的  阅读(4078)  评论(0编辑  收藏  举报