Articles of btrfs

BTRFS上的“rm:can not remove xxx:No Space left on device”

运行OpenSuse 12.2。 突然间隔根本似乎是满的(99%),但我不能再手动删除文件。 “rm:不能删除xxx:设备上没有剩余空间”,尽pipe450mb仍然是免费的。 文件系统是BTRFS。 我试图用btrfsck检查FS,但没有帮助。 该怎么办?

BTRFS:删除一个卷

一个星期前,我使用两个闪存驱动器(每个32GB)使用以下命令创build一个BTRFS池: /sbin/mkfs.btrfs -d single /dev/sda /dev/sdb 。 然后我意识到我应该使用分区/dev/sda1和/dev/sdb1而不是磁盘/dev/sda和/dev/sdb ,因此我使用/dev/sd[ab]1重新创build了卷。 我的问题是,现在我有两卷: $ sudo btrfs fi show Label: none uuid: ba0b48ce-c729-4793-bd99-90764888851f Total devices 2 FS bytes used 28.00KB devid 2 size 29.28GB used 1.01GB path /dev/sdb1 devid 1 size 28.98GB used 1.03GB path /dev/sda1 Label: none uuid: 17020004-8832-42fe-8243-c145879a3d6a Total devices 2 FS bytes used 288.00KB devid 1 […]

在btrfs上处理LXC容器的正确方法

假设我们有一台安装了lxc的服务器和一个用作img /var/lib/lxc/ubuntu_base的基础的lxc容器。 为了简单起见,让我们在复制基本图像后忘记configuration更改。 有些人build议使用子卷和快照来制作新的容器,但是可以很容易地做cp –reflink和类似的结果。 那么pipe理多个容器的方式是什么(或哪个更好)呢? 快照 这种方式似乎是最好的,但像lxc-destroy这样的命令将无法工作,因为它将无法删除目录。 btrfs subvolume snapshot /var/lib/lxc/ubuntu_base /var/lib/lxc/container_1 CP与reflink 我不确定这个或快照之间是否有任何性能差异 cp –reflink=always /var/lib/lxc/ubuntu_base /var/lib/lxc/container_1 还有没有其他更好的方法来做到这一点,我不知道。 编辑: 我在reflink选项中看到的一件事是,如果别人正在运行,那么你不能删除基本容器,因为/proc和/dev是被挂载的,并且永远不会改变,se引用总是相同的。 但closures所有的复合容器似乎有帮助。

带有不同大小磁盘的多设备BTRFS文件系统

我有一个由一个500GB磁盘组成的现有BTRFS文件系统,我刚刚购买了一个2TB磁盘来增加我的家庭服务器的存储容量,我想将新磁盘添加到现有的文件系统。 据我所知,似乎没有BTRFS设置可以处理不同大小的磁盘,而不会浪费大小磁盘之间的大小差异,但我是BTRFS的新手,我可能错过了一些东西,所以有一个设置这可以让我在文件系统中结合两个磁盘而不浪费空间?

启用btrfs的备份解决scheme

btrfs本月在Oracle EL 14上发布产品(连同来自Linux 3.2的fsck和scarbing),我正在考虑重新devise我当前的备份解决scheme以利用它。 请注意,我正在考虑less量的数据,less于10TB,这是相当静态的(不到1%每天更改)。 总之一个SMB / SOHO备份解决scheme。 备份应该做什么: 在生产服务器上执行ext [234] / XFS / JFS的LVM快照 rsync /将更改的数据传输到备份服务器上的btrfs 快照btrfs文件系统 当空闲空间不足时丢弃旧快照 优点: 所有的文件很容易获得,不需要解压缩或循环安装 过去的快照也很容易获得… …所以我可以将它们作为只读的Samba共享(支持影子副本) 由于写时复制,快照占用的空间极小(不需要更改的快照占用磁盘上几乎没有的KiB) 高备份一致性:对文件进行校验,清理所有数据和内置冗余 问题: 是否有备份解决scheme(以Bacula,BackupPC等forms),或者可以很容易地意识到写入时复制文件系统? 或者我需要使用家庭rsync解决scheme吗? 使用ZFS专用于备份的人员如何备份他们的Linux机器?

btrfs生产准备好了吗?

最近我见过很多关于btrfs的信息。 我一直在考虑ext4为我的下一个文件系统,但是被诱惑反而btrfs。 btrfs有多广泛使用? 优缺点都有什么?

大型LVM磁盘(8 TB)的哪个文件系统?

我有一个带有许多2TB磁盘的Linux服务器,目前所有的LVM都有10TB的空间。 我在ext4分区上使用了所有这些空间,目前有大约8,8TB的数据。 问题是,我经常在我的磁盘上得到错误,即使我错误出现,即使我replace(也就是说,我将旧的磁盘复制到一个新的与dd的新磁盘,然后我把新的一个在服务器中)我经常得到大约100 MB的损坏数据。 这使得e2fsck每次都变得疯狂,而且通常需要一个星期的时间才能使ext4文件系统再次处于正常状态。 所以问题是: 你会推荐我在LVM上用作文件系统吗? 或者你会推荐我做什么(我真的不需要LVM)? 我的文件系统的configuration文件: 许多不同大小的文件夹(总计2TB,总计100MB) 将近200,000个不同大小的文件(其中3/4是大约10MB,在100MB和4GB之间是1/4;由于我的ext4分区被彻底破坏了一些日子,目前我还无法获得更多的文件统计信息) 很多只读,但很less写 我需要容错(我停止使用mdadm RAID,因为它不喜欢在整个磁盘上出现一个错误,而且有时候磁盘出现故障,我可以尽快更换,但这意味着我可能会损坏数据我的文件系统) 主要问题是磁盘故障; 我可以丢失一些文件,但我不能同时损失一切。 如果我继续使用ext4,听说我应该尽可能地制作更小的文件系统,并以某种方式“合并”它们,但我不知道如何。 我听说btrfs会很好,但是当数据不被复制( mkfs.btrfs -d single ?)时,我无法find如何pipe理丢失一部分磁盘(或整个磁盘)的方法。 有关这个问题的任何build议将受到欢迎,提前致谢!

做快照+ RAID计数是一个很好的现场备份解决scheme吗?

我可以考虑采取备份的两个主要原因似乎是照顾当我同时使用快照和RAID与btrfs。 (这里是RAID,我的意思是RAID1或10) 意外删除数据:快照涵盖了这种情况 驱动器故障和位腐烂 完全失败:RAID涵盖了这种情况 驱动器返回错误数据:RAID + btrfs的错误纠正function涵盖了这种情况 因此,作为一个现场备份解决scheme,这似乎工作正常,它甚至不需要一个单独的数据存储设备! 但是,我听说RAID和快照都不被认为是正确的备份,所以我想知道我是否错过了任何东西。 除了btrfs还不是一个成熟的技术,你能想到我错过的任何东西吗? 还是我的想法是正确的,这是一个有效的现场备份解决scheme?

btrfs是否有一种比较快照的有效方法?

虽然区分装载的快照将起作用,但听起来在很多情况下可能会非常慢。 有btrfs特定function差异快照? (我无法find任何文档)

通过SSD上的BtrFSvalidationTRIM支持

我们正在研究在SSD磁盘arrays上使用BtrFS,并且我被要求validationBtrFS实际上在删除文件时执行TRIM操作。 到目前为止,我一直无法validationTRIM命令是否发送到磁盘。 我知道BtrFS不被视为生产准备,但我们喜欢stream血的边缘,因此我正在testing它。 服务器是Ubuntu 11.04服务器64位版本(mkfs.btrfs 0.19版本)。 我已经安装了Linux 3.0.0内核,因为BtrFS更新日志声明,在Ubuntu 11.04(2.6.38)附带的内核中,批量TRIM不可用。 这是我的testing方法(最初通过http://andyduffell.com/techblog/?p=852 ,修改与BtrFS一起工作): 手动TRIM磁盘开始之前: for i in {0..10} ; do let A="$i * 65536" ; hdparm –trim-sector-ranges $A:65535 –please-destroy-my-drive /dev/sda ; done for i in {0..10} ; do let A="$i * 65536" ; hdparm –trim-sector-ranges $A:65535 –please-destroy-my-drive /dev/sda ; done 确认驱动器是TRIM'd: ./sectors.pl |grep + | tee sectors-$(date […]