与我拥有的版本相匹配的 btrfs 文档吗?

与我拥有的版本相匹配的 btrfs 文档吗?

我想看看我指定的格式详细信息是否符合我的想法,并且通常在大量复制到 btrfs 文件系统后检查内容。浏览文档,我看到了btrfs property。但这不是我的程序副本所采取的,并且btrfs help --full没有显示这样的事情。

程序内帮助文本对于特定程序的该版本当然是明确的,但没有解释哪些其他程序可用或提供扩展的示例和建议。 Mint 17.1是用btrfs v3.12构建的,我认为可能是在后面btrfs 站点上的当前文档。那么,有没有办法找到特定版本的大量文档呢?

更多关于我的直接案例,我如何探索格式的细节:让它重复我用来格式化它的参数(例如 raid5 元数据),并概述数据如何在分区上排列并获取统计信息等?

答案1

曾经有一个漂亮的桌子在 Btrfs wiki 的入门页面上,它将指导您如何使用发行版附带的 btrfs 工具(或不应该做什么)。

我建议您查看一下较新版本(最高至 3.19)的功能变更日志页面,并考虑下载并编译更新版本的源代码。 property命令是在3.14版本中引入的。

btrfs 的在线手册页是这里,并且它包含一个指向属性命令手册页:

SYNOPSIS

btrfs property <subcommand> <args>
DESCRIPTION

btrfs property is used to get/set/list property, like lable or compression 
state, for given btrfs object.

btrfs property provides an unified and user-friendly method to tune
different btrfs properties instead of using the traditional method like
chattr(1) or lsattr(1).

SUBCOMMAND

get [-t <type>] <object> [<name>]
    Gets a property from a btrfs object.
    If no name is specified, all properties for the given object are
    printed. 
    A filesystem object can be a the filesystem itself, a subvolume, an 
    inode or a device.
    The -t <type> option can be used to explicitly specify what type of
    object you meant. This is only needed when a property could be set for 
    more then one object type.
    Possible types are s[ubvol], f[ilesystem], i[node] and d[evice].
    The <object> can be path of btrfs device, btrfs mount point, or any
    directories/files inside btrfs. 
set [-t <type>] <object> <name> <value>
    Sets a property on a btrfs object.
    See description of get subcommand for a description of objects and 
    object types. 
list [-t <type>] <object>
    Lists available properties with their descriptions for the given object.
    Please see the help of btrfs property get for a description of objects 
    and object types. 

EXIT STATUS

btrfs property returns a zero exist status if it succeeds. Non zero is 
returned in case of failure. 

我不知道如何找到你问的第二个问题的数据。

btrfs filesystem show /your_mount_point

可能会给您一些您正在寻找的东西。


1我衷心建议保留您对系统所做的低级操作的变更日志,至少剪切和粘贴您使用的命令。这样您就可以查找您使用的参数了。将该日志保留在不同的系统上,或者将其置于修订控制之下并将其推送到 bitbucket 或 github。我使用分区、RAID、LVM 等命令的频率不足以记住我对哪个系统做了什么,这使我在过去 30 年处理 Unix/Linux 机器的过程中节省了数周的时间来重新研究命令。我使用 emacs ChangeLog 模式编辑该日志,该模式会自动插入日期时间。

答案2

我发现btrfs filesystem df <mountpoint>给出了这样的报告:

Data, single: total=1.45TiB, used=1.45TiB
System, single: total=4.00MiB, used=0.00
System, RAID5: total=16.00MiB, used=176.00KiB
Metadata, single: total=8.00MiB, used=0.00
Metadata, RAID5: total=3.00GiB, used=1.82GiB

这显示了我想要检查的内容:元数据确实以冗余方式存储,而文件数据则不然。

相关内容