Colderleo's blog Colderleo's blog
首页
Linux
C++
Python
前端
工具软件
mysql
索引
关于
GitHub (opens new window)

Colder Leo

热爱代码的打工人
首页
Linux
C++
Python
前端
工具软件
mysql
索引
关于
GitHub (opens new window)
  • 常见程序性能开销cost、latency延迟耗时的经验值
  • 面试常见问题
  • 静态链接-动态链接-elf详解-elfloader
  • 动态库和静态库的依赖问题
  • glibc和ld的编译调试-为某程序单独设置ld
  • dl_iterate_phdr遍历linkmap头、获取so加载地址
  • shell、bash语法和脚本模板
  • so文件查找路径
  • 逻辑地址-线性地址or虚拟地址-物理地址
  • 通过ELF读取当前进程的符号表并获取符号的版本信息
  • 虚拟内存,cache,TLB,页表
  • 用户内存空间分布和mmap
  • numa网卡绑定
  • 隔核绑核、服务器优化
  • popen底层原理和仿照实现-execl
  • tmux用法
  • ASLR机制
  • 程序后台运行、恢复前台nohup
  • 大页内存huge_page
  • 用perf查看page-fault
  • Bash设置显示全部路径
  • 查看socket fd状态,设置nonblock
  • cout输出到屏幕的过程
  • 多进程写同一文件-write原子性-log日志
  • vim用法
  • epoll用法
  • signal信号、软中断、硬中断、alarm
  • 内核模块
  • 读写锁之pthread_rwlock和内核rwlock自旋读写锁
  • systemtap
  • xargs、awk用法
  • openssl libssl.so.10.so缺失问题
  • netstat用法
  • fork函数
  • tcp延迟确认ack
  • 90.centos7上一次std-string编译错误定位
  • docker用法
  • find用法
  • dmesg
  • gcc编译用法
  • avx-sse切换惩罚
  • Centos7防火墙
  • chmod用法
  • kernel-devel安装版本
  • Linux-Centos7系统安装、网络设置、常见报错
  • linux下g++编译c++文件
  • MegaCli 安装及使用
  • mysql
  • mysql忘记密码修改方法
  • set用法
  • crontab
  • ssh传文件scp
  • ssh连接
  • tcpdump、tshark、tcpreplay用法
  • ubantu root登录以及创建新用户
  • ubuntu安装g++和gdb
  • uClibc编译失败解决方法
  • win10安装WSL open-ssh
  • yum升级git
  • 比较so文件版本-md5sum
  • 查看磁盘信息
  • 合并两个硬盘,挂载到一个文件夹下
    • 需求场景
    • 操作系统环境
    • 实现方法
    • 实现步骤
  • 软件安装目录usr-local-src
  • 下载centos历史版本
  • sh脚本转可执行文件、加密
  • Linux
gaoliu
2021-10-06
目录

合并两个硬盘,挂载到一个文件夹下

https://www.cnblogs.com/wholj/p/10961705.html

注意最后开机自动挂载,文中用了echo > /etc/fstab 这个会覆盖,应该用>>

# 下面是原文

# 需求场景

将MySQL主机的2块18T的数据盘空间全部“合并”后挂载到**/mysql_data**目录下,要求文件系统格式化为xfs;已有关键信息梳理如下:

  • 需要挂载的数据盘
    • /dev/sdb:18T
    • /dev/sdc:18T
  • 文件系统:xfs
  • 挂载目录:/mysql_data

# 操作系统环境

  • OS版本:CentOS 7.5
  • lvm版本:lvm2

# 实现方法

要想实现此需求,可使用LVM逻辑卷管理来做到。

# 实现步骤

# 磁盘分区--此步非必须

在将磁盘或者磁盘分区用作物理卷(PV)之前,需要对其进行初始化工作,即进行磁盘分区操作;因磁盘分区需求大于2T,所以fdisk无法实现管理,需要使用parted命令来做磁盘分区管理;parted的详细使用方法请参考博主之前的博客:使用parted命令对磁盘进行分区 (opens new window)

  • /dev/sdb
# 新建/dev/sdb的磁盘标签类型为GPT
[root@MYSQL-SERVER ~]# parted /dev/sdb mklabel gpt 
# 将/dev/sdb整个空间分给同一个分区
[root@MYSQL-SERVER ~]# parted /dev/sdb mkpart primary 0 100%
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? I                                                          
Information: You may need to update /etc/fstab.
1
2
3
4
5
6
7
  • /dev/sdc
# 新建/dev/sdc的磁盘标签类型为GPT
[root@MYSQL-SERVER ~]# parted /dev/sdc mklabel gpt 
# 将/dev/sdc整个空间分给同一个分区
[root@MYSQL-SERVER ~]# parted /dev/sdc mkpart primary 0 100%
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? I                                                          
Information: You may need to update /etc/fstab.
1
2
3
4
5
6
7

# 创建物理卷

创建物理卷的命令为pvcreate;利用该命令将希望添加到卷组的所有分区或磁盘创建为物理卷; 将分区**/dev/sdb1和/dev/sdc1**分区创建为物理卷:

[root@MYSQL-SERVER ~]#  pvcreate /dev/sdb1
  Physical volume "/dev/sdb1" successfully created.
[root@MYSQL-SERVER ~]#  pvcreate /dev/sdc1
  Physical volume "/dev/sdc1" successfully created.
1
2
3
4

# 创建卷组

创建卷组的命令为vgcreate;用此命令将使用pvcreate建立的物理卷创建为一个完整的卷组; 将物理卷**/dev/sdb1创建为一个名为vgmysql**的卷组:

[root@MYSQL-SERVER ~]#  vgcreate vgmysql /dev/sdb1
  Volume group "vgmysql" successfully created
1
2

# 添加新的物理卷到卷组中

此步即为将2块磁盘空间合二为一的关键步骤;当系统中新增了磁盘或新建了物理卷,而要将其添加到已有卷组时,就可使用vgextend命令; 将物理卷**/dev/sdc1添加到vgmysql**卷组中:

[root@MYSQL-SERVER ~]#  vgextend vgmysql /dev/sdc1
  Volume group "vgmysql" successfully extended
1
2

# 查看卷组

查看卷组用vgs:

[root@MYSQL-SERVER ~]#  vgs
  VG      #PV #LV #SN Attr   VSize   VFree 
  vgmysql   2   0   0 wz--n-  32.74t 32.74t
  vgroot    1   4   0 wz--n- 264.00g  4.00m
1
2
3
4

从vgs命令的回显结果来看,卷组vgmysql成功添加,并且其总空间为两块物理磁盘的总大小(因换算单位不同,所以不是精确的38T)。

# 创建逻辑卷

创建逻辑卷的命令为lvcreate;用此命令将在使用vgcreate建立的卷组上创建逻辑卷; 在卷组vgmysql上创建一个名为lvmysql的逻辑卷,起大小为32.7T;

  • -n:指定逻辑卷名
  • -L:指定逻辑卷大小
[root@MYSQL-SERVER ~]#  lvcreate -L 32.7T -n lvmysql vgmysql 
  Rounding up size to full physical extent 32.70 TiB
  Logical volume "lvmysql" created.
1
2
3

# 格式化逻辑卷

将创建的lvmysql逻辑卷格式化为xfs

[root@MYSQL-SERVER ~]#  mkfs -t xfs /dev/vgmysql/lvmysql
meta-data=/dev/vgmysql/lvmysql   isize=512    agcount=33, agsize=268435328 blks
         =                       sectsz=4096  attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=0, rmapbt=0, reflink=0
data     =                       bsize=4096   blocks=8777839616, imaxpct=5
         =                       sunit=64     swidth=64 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=521728, version=2
         =                       sectsz=4096  sunit=1 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
1
2
3
4
5
6
7
8
9
10

# 创建挂载目录并挂载

  • 创建挂载目录/mysql_data
[root@MYSQL-SERVER ~]#  mkdir /mysql_data
1
  • 挂载
[root@MYSQL-SERVER ~]#  mount /dev/vgmysql/lvmysql /mysql_data/
1
  • 做开机自动挂载
echo '
/dev/mapper/vgmysql-lvmysql /mysql_data xfs     defaults 0 0' >/etc/fstab
1
2
编辑 (opens new window)
上次更新: 2021/10/11, 12:43:58
查看磁盘信息
软件安装目录usr-local-src

← 查看磁盘信息 软件安装目录usr-local-src→

最近更新
01
通过模板实现结构体成员拷贝-按成员名匹配
05-07
02
c++17通过模板获取类成员的个数
05-01
03
avx-sse切换惩罚
04-30
更多文章>
Theme by Vdoing | Copyright © 2019-2023 Colder Leo | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×