`
steeven
  • 浏览: 307290 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

lvm下面的分区调整

 
阅读更多
/sda2上有两个逻辑分区分区需要调整, 一个增加,一个缩小分区:
/dev/vg-data/data 4G xfs -> /data //目标max
/dev/vg-data/backup 4G btrfs -> /backup //目标1G

btrfs filesystem resize 1G /backup
lvreduce /dev/vg-data/backup -L 1G

lvextend /dev/vg-data/data /dev/sda2  //自动利用剩余空间
xfs_growfs /data

很简单,因为都是lvm分区,在线完成

resize2fs好像对xfs和btrfs都不支持,centos7下测试。
分享到:
评论
8 楼 steeven 2016-09-04  
steeven 写道
btrfs subvol snap / /snap-init //对root创建快照
mount /dev/sda3 /media -o subvol=snap-init
btrfs subvol snap /media /media/snap-again

btrfs subvol list /  可以看到ID节点关系,谁给谁拍照
ssm list / 能看到mount关系

多用户环境下,每个用户可以基于root subvolume创建snap-shot作为自己的工作目录
单用户环境下,可以对snap再创建snap,逐步测试系统。

多用户环境下建议创建/boot/grub2/custom.cfg, 给每个用户复制一份menuentry, 指定到对应snap, 还要记住上次启动选择。。。
7 楼 steeven 2016-09-04  
steeven 写道
btrfs subvol snap / /snap-init //对root创建快照
mount /dev/sda3 /media -o subvol=snap-init
btrfs subvol snap /media /media/snap-again

btrfs subvol list /  可以看到ID节点关系,谁给谁拍照
ssm list / 能看到mount关系

多用户环境下,每个用户可以基于root subvolume创建snap-shot作为自己的工作目录
单用户环境下,可以对snap再创建snap,逐步测试系统。

grub菜单下e编辑当前项目,修改kernel参数subvol指向新snap, 启动成功后grub2-mkconfig -o /boot/grub2/grub.cfg即可把当前subvol永久更新到grub.
6 楼 steeven 2016-09-04  
btrfs subvol snap / /snap-init //对root创建快照
mount /dev/sda3 /media -o subvol=snap-init
btrfs subvol snap /media /media/snap-again

btrfs subvol list /  可以看到ID节点关系,谁给谁拍照
ssm list / 能看到mount关系

多用户环境下,每个用户可以基于root subvolume创建snap-shot作为自己的工作目录
单用户环境下,可以对snap再创建snap,逐步测试系统。
5 楼 steeven 2016-09-04  
硬盘两个标准分区,文件格式均为btrfs,分别安装centos7, ubuntu 1604

后面一个安装后菜单看不到前面一个,mount上分区加-o subvol=xxx后os-prober可以看到分区, 但是grub-mkconfig添加的内容是错误的无法启动。

最后手工添加文件 /etc/grub.d/50_centos, +x, 内容编辑如下:

#/bin/sh
exec tail -n +1 $0

menuentry......
//此处应该从先安装的分区那里copy grub.cfg下面的menuentry

保存后记得+x, grub-mkconfig, 然后就能启动了~

=========================
识别池上可以在40_custom里面添加几个启动项目指向不同snapshot呢?
4 楼 steeven 2016-09-04  
经过测试,在btrfs subvol create 方法创建出来的逻辑分区安装其它系统失败。set id到新vol也不可以, ubuntu1604手工创建磁盘只能选择大的sda2, 不格式化,安装一开始就失败,但是livecd下面手工挂载正常。。。这是bug

centos7手工分区能识别出虚拟vol,  但是任何一个挂载位"/"时都失败。。。

windows更不用说了, 看样大家对btrfs都不够友好。。。。

用lvm貌似也有快照功能,把“/"都安装在lvm thin分区上会不会。。。?
3 楼 steeven 2016-09-04  
btrfs分区玩系统流程@centos:


1. btrfs filesystem 可以resize,
2. 虚拟子卷subvolume不可以resize, 其实大家都是某个分支
3. 玩vm的时候可以自己照相ssm snapshot -n name /path 拍照留念
   或者btrfs subvolume snapshot path name
4. ubuntu下面有个apt-snapshot什么的,可以每次更新自动拍照,这个更贴心
5. 可以到某个快照下面再拍照。。。因为算法和写入规则的关系
6. 几种切换方法都没测试:
   a. 把所在分区mount出来就能看到subvol和snapshot子目录 把快照子目录mv到subvol,原来的subvol改名位置。切root也可以把当前分区重新挂载一下,操作完了reboot生效
   b. 更改mount 时带的subvol参数,指向你要恢复的snapshot名字,切root要改grub.cfg,不方便
7. btrfs subvolume list /path, 看看每个snapshot ID
   btrfs subv set-default ID pathname, 这个要慎用,原来是5, 就是top id, 如果改了再不带参数挂载磁盘就看不到6a中列出的subvol, 而是ID中指向的snapshot...
8. 删除快照就用btrfs sub del /path/to/snap

至此,btrfs可以让我们快乐的折腾系统了,不用依靠虚拟机的快照。

从这个快照理论看,一个大的FS可以任意创建subvolume去装任何系统,但是大家的df看出来都是一个结果。。。
这样装linux多系统,还是要有/boot分区,要通过grub和root=subvol=xxx 去找子卷。 待测试。会不会相互覆盖?grub2的mbr会不会不用/boot直接读分区表参数?待测试


开发过程中是不是也可以给自己数据来几个快照呢?然后进出不同的目录去比较。。。
2 楼 steeven 2016-09-03  
centos下面的ssm也很好用哦, 一次list所有存储相关信息。总算有个好用的工具

yum install system-storage-manager
1 楼 steeven 2016-09-03  
ubuntu下面挂载 centos 7 下面创建的linux raid5,并且是lvm thin分区,很曲折啊:
1. /dev/md没有,apt install mdadm, reboot
2. 应该能看到设备,mdadm --detail /dev/md127应该能看到raid磁盘组
下面是lvm挂载
3. vgs也能看到 cl, 这是lvm的vg出现了
4. apt-install thin-provisioning-tools
5. vg-change -al cl 是不是马上看到桌面上多出来一个硬盘?

6. 可能你也是用的xfs或者btrfs文件系统,安装相关工具包: apt install xfsprogs btrfs-tools...
7. lvs应该能看到逻辑分区了: /dev/mapper/cl-xxx

这个分区的发现路径是:物理磁盘->Raid->lvm->FS 真是晕啊。。。。

相关推荐

Global site tag (gtag.js) - Google Analytics