您现在的位置:首页 > 教案模板 > 正文

复制过程中文件丢失 btrfs文件系统的简单使用方法

2018-01-21 17:02 网络整理 教案网

u盘里的文件不见了_复制后源文件丢失_复制过程中文件丢失

简单介绍btrfs文件系统的使用,包括创建、挂载、子卷的创建、挂载、快照、在线添加和移除物理设备、重新均衡数据

btrfs的特性:

多块磁盘支持:btrfs可由多个底层磁盘组成,支持RAID,可以联机添加、移除、修改磁盘。复制过程中文件丢失

写时复制更新机制:复制、更新时直接替换指针,而非直接更新。

数据和元数据校验码:checksum

支持子卷

快照

透明压缩功能

以Centos 7 系统为例 ,首先在虚拟机上添加3块大小为10G的硬盘 /sdb、/sdc、/sdd

一、

1、文件系统的创建:

命令格式介绍:mkfs.btrfs[选项]<设备>(<设备>…)

-b:字节数<大小> 指定文件系统的大小。复制过程中文件丢失默认整个设备空间。

-L:文件系统的标签

-d:数据类型,可以是RAID(0、1、5、6、10)single

-m:元数据类型,可以是RAID(0、1、5、6、10)single

开始创建:

mkfs.btrfs -L "test" -d raid1 -m raid1 /dev/sdb /dev/sdc

图片.png

我们用了两块磁盘 设置卷标为 test、数据和元数据类型为raid1 大小为默认整个磁盘空间20G,但我们数据存储用的是RAID1所以

如果挂载后应该是显示可用空间为10G,信息如上图所示

我们用命令:btrfs filesystem show 可以显示所有的btrfs文件系统的属性信息

图片.png

我们还可以用命令:blkid /dev/sdb /dev/sdc命令来查看他们的信息

图片.png

上图中可以看书他们的UUID是相同的,因为他们组成了一个文件系统,但是UUID_SUB是不同的

2、挂载文件系统根目录下创建/testdata目录,并将其挂载上去

图片.png

用mount 查看挂载情况

图片.png

显示已经挂载成功,注意此时的/dev/sdb、/dev/sdc 组成一个文件系统,所以显示哪个都是一样的

进入cd /testdate/ 目录我们就可以正常操作了,我们将 /boot/initramfs-3.10.0-693.el7.x86_64.img 复制到/testdate/目录下名称不变,并查看了当前目录大小:为28M

图片.png

df -h查看分区使用情况:

图片.png

显示其大小为10G

命令 umount /testdate 将其卸载

3、下面演示透明btrfs文件系统的透明压缩功能,命令为 mount -o compress=lzo /dev/sdb /testdata

图片.png

4、更改文件系统大小命令格式为: btrfs filesystem resize [devid:][+/-]<newsize>[kKmMgGtTpPeE]|[devid:]max <path>

u盘里的文件不见了_复制过程中文件丢失_复制后源文件丢失

现在我们将其大小减5G,命令为 btrfs filesystem resize -5G /testdata

然后查看其属性信息

图片.png

发现/dev/adb 空间由10G缩减到了5G

再用df -h 命令查看分区空间使用情况:

图片.png

可用空间由10G缩减为7.5G ,因为是RAID1 减少了5G,空间就相当于缩减了2.5G

还可以用 btrfs filesystem resize max /testdata ,将其扩到最大

图片.png

二、下面我们演示: 向btrfs文件系统,添加和移除底层磁盘设备 ,添加的dev/sdd,

然后更改数据的存储方式为RAID5试试效果,命令格式为:

btrfs device [add delete remove ][options] <device> [<device>...] <path>