Questions tagged «zfs»

ZFS是由Sun Microsystems设计的组合文件系统和逻辑卷管理器。ZFS的功能包括防止数据损坏,对高存储容量的支持,有效的数据压缩,文件系统和卷管理概念的集成,快照和按需复制。写克隆,连续完整性检查和自动修复,RAID-Z和本机NFSv4 ACL。.-Wikipedia


1
如何将文件从一个zfs文件系统移动到同一池中的另一个zfs文件系统?
我在同一个zfs池中有两个文件系统,/mnt/fs_a并且/mnt/fs_b。我想将大约1TB的数据从fs_a移至fs_b。但是当我: mv /mnt/fs_a/mythtv_recordings /mnt/fs_b/ 令我惊讶的是,它开始逐块复制文件。考虑到移动2GB文件所花费的时间,看起来此操作将需要几天的大量重击才能完成。 必须有一个更聪明,更快捷的方法来执行此操作,对吗?
17 zfs 

2
强制zpool在Ubuntu Xenial中使用/ dev / disk / by-id
我正在尝试在Ubuntu 16.04 Xenial上捆绑的OpenZFS。 创建池时,我总是按/dev/disk/by-id/(或/dev/disk/gpt在FreeBSD上)它们的序列号引用驱动器,以提高弹性。/dev重新引导计算机时,驱动器的顺序并不总是相同的,并且如果计算机中还有其他驱动器,则池可能无法正确安装。 例如,zpool status在14.04盒子上运行,我得到以下信息: NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 raidz1-0 ONLINE 0 0 0 ata-Hitachi_HDS722020ALA330_[..] ONLINE 0 0 0 ata-Hitachi_HDS722020ALA330_[..] ONLINE 0 0 0 ata-Hitachi_HDS722020ALA330_[..] ONLINE 0 0 0 ata-Hitachi_HUA722020ALA330_[..] ONLINE 0 0 0 但是当我在16.04上用这个(缩写)创建一个新池时: zpool create pool raidz \ /dev/disk/by-id/ata-Hitachi_HDS723030ALA640_[..] \ /dev/disk/by-id/ata-Hitachi_HDS723030ALA640_[..] …
16 ubuntu  zfs 

4
如何将整个zfs池单向镜像到另一个zfs池
我有一个zfs池,其中包含几个zvol和数据集,其中一些也是嵌套的。所有数据集和zvol均由zfs-auto-snapshot定期快照。所有数据集和zvol都具有一些手动创建的快照。 我已经设置了一个远程池,由于时间不足,通过zfs send -R在本地高速网络上进行的初始复制未完成(某些数据集丢失,某些数据集已过时或缺少快照)。 现在,该池实际上是通过慢速连接处于远程状态,我需要定期将远程池与本地池同步,这意味着本地池中存在的数据必须复制到远程池中,本地池中的数据必须从远程池中删除,并且必须通过“ zvols”,“ datasets”或“ snapshots”等数据从远程池中删除存在于远程池中但不在本地池中的数据。 如果我在使用rsync的两个常规文件系统之间执行此操作,则将是“ -axPHAX --delete”(这实际上是我备份某些系统所执行的操作)。 如何设置同步任务,以便远程池zvol和数据集(包括其快照)可以与本地zvol,数据集和快照同步? 由于ssh的低吞吐量性能,我想避免通过ssh进行传输;我更喜欢mbuffer或iscsi。
16 zfs  replication 

1
FreeBSD中ZFS xattr支持的状态
我正在尝试确定使用ZFS的FreeBSD是否支持xattrs,或者更广泛地支持xattrs。我读了一些矛盾的信息。 zfs get xattr将其列为on (default)了/,/usr和/var,但off (temporary)对所有其他数据集,包括上面提到的那些孩子们。 运行zfs set xattr=on zroot/usr/home我得到消息 property 'xattr' not supported on FreeBSD: permission denied。 这符合该zfs手册页: xattrFreeBSD当前不支持该属性。 setextattr,getextattr并且lsextattr看起来效果很好。 我也设法保存和恢复设备文件节点使用rsync --fake-super,并且可以用看到它的数据lsextattr和getextattr。 Wikipedia在xattr讨论页面上进行了一些讨论。显然曾经有人声称ZFS从FreeBSD 8开始就支持xattr,但是后来参考联机帮助页将其删除(请参阅3.)。 当前,我得到的印象是,zfs上的扩展属性实际上可以工作,但是xattr控制其使用的属性不像其他zfs发行版那样起作用。但是我希望在我将大量备份数据信任rsync --fake-super在这样一台计算机上运行之前确认(或更正)该消息。由于已知的xattr问题,我宁愿不丢失所有元数据。 如果重要的话,这是我刚刚设置的非常新颖的FreeBSD 10.2安装,由安装程序设置了ZFS。
15 freebsd  zfs  bsd  xattr 

1
如何更改ZFS池的安装点?
例: 创建池时,将其设置为挂载到/ mystorage zpool create -m /mystorage mypool raidz /dev/ada0 dev/ada1 /dev/ada2 但是现在我希望将池安装到/ myspecialfolder。 有什么想法可以做到吗?我已经在网上搜索了zpool和zfs的联机帮助页,却一无所获。 谢谢
15 zfs 

1
ZFS快照以旋转方式备份为文件
我有一个本地FreeNAS系统,想要使用ZFS快照进行备份。 FreeNAS具有内置的复制任务,这些任务使用 zfs send snapshot_name 将快照发送到远程系统。但这需要另一端具有ZFS的系统。 我想将快照发送到一个文件,然后将此压缩和加密的文件发送到远程计算机。 这是可能的 zfs send snapshot_name | gzip | openssl enc -aes-256-cbc -a -salt > file.gz.ssl 我每天都会为存储池制作快照,并将每个快照保留30天。 拍摄每张快照后,我都会将该快照通过管道传输到文件中。 -快照文件1中包含每个文件(例如2GB) -快照文件2仅具有对快照文件1的更改(例如5MB) -快照文件3保存对快照文件2的更改;等等。 在第31天,快照文件1被删除(因为我只希望最近30天的更改) 因此,snapshot_file 2需要保存每个文件(2GB的snapshot_file 1 + 5MB的更改) 但是每天(从第31天开始)都必须使用这种方法来创建一个新的2GB文件,并将其发送到远程系统。这是太多的开销。 使用传送到文件的快照作为X天的备份策略的最佳方法是什么? PS:我知道那里有很多可以使用的备份软件(例如rdiff-backup)。但是我很好奇这怎么做。

2
有没有办法在ZFS中创建母牛副本?
我正在尝试复制某些文件/目录,但据我所知的几种方式,它们似乎都不理想。 例如,btrfs可以使用cp --reflink=auto快速生成文件的文件副本。 我尝试过的 符号链接:不好。重命名文件,链接断开。 硬链接:更好,但仍然不好。更改一个文件会更改另一个文件,而我不一定要更改另一个文件。 创建数据集的快照,然后克隆快照:可以,但是效果不佳。通常,我不是在寻找整个数据集的副本,也不是让副本像另一个数据集一样工作。然后在克隆/快照/原始文件之间存在父/子关系,据我所知,即使不是不可能打破的,这也很难。 使用zfs send/receive和启用dedup,将数据集复制到新的数据集:这避免了使用克隆的父/子关系,但是仍然不必要地创建另一个数据集,并且仍然受累于必须100%读取文件和再次引用而不是写入的块。 复制文件并让dedup发挥作用:这可行,但是速度很慢,因为必须100%读取文件,然后再次引用块而不是写入。 zfs的发送/接收以及物理复制或rsync的速度进一步恶化,因为大多数事物都被压缩存储,并且在读取过程中必须先解压缩,然后在dedup插入引用重复块之前进行压缩。 在我的所有研究中,我都无法找到与btrfs中--reflink的简单性相似的远程内容。 那么,有没有一种方法可以在ZFS中创建复本?还是“物理地”复制并让dedup做其工作是唯一的真实选择?
14 freebsd  zfs 

3
在Debian 9 Stretch上安装ZFS
我试图在debian 9.1上安装zfs,但是遇到一些错误。 我的第一个安装仅是zfs-dkms,但是我在网上阅读到,运行zfs-dkms还需要spl-dkms。 我的步骤是更改我的sources.list,添加非免费的贡献,如下所示: /etc/apt/sources.list deb http://ftp.nl.debian.org/debian/ stretch main contrib non-free deb-src http://ftp.nl.debian.org/debian/ stretch main contrib non-free deb http://security.debian.org/debian-security stretch/updates main contrib non-free deb-src http://security.debian.org/debian-security stretch/updates main contrib non-free # stretch-updates, previously known as 'volatile' deb http://ftp.nl.debian.org/debian/ stretch-updates main contrib non-free deb-src http://ftp.nl.debian.org/debian/ stretch-updates main contrib non-free 完成经典的apt-get更新,然后尝试使用以下命令安装zfs: apt-get install …
11 debian  apt  zfs 

1
如何在不破坏/更改当前或外部文件系统的情况下挂载外部ZFS文件系统
我正在FreeBSD 10.2上使用ZFS作为根文件系统(zroot01)。我有一个要从另一个FreeBSD 10.2系统(zroot02)挂载ZFS文件系统的外部硬盘,我想暂时挂载它,只读,这样我可以从中取出一些文件,然后再断开连接。我既不希望外部ZFS系统破坏或替换我当前的文件系统,也不希望外部的数据被破坏/更改。 为了演示我要完成的任务,如果使用的是UFS,我将执行以下操作: mount -t ufs -o ro /dev/ada0s2 /mnt/my-fun-mountpoint ... /dev/ada0s2外部驱动器上的分区在哪里,/mnt/my-fun-mountpoint并且在/mnt现有操作系统的目录中。 所有搜索和手册页阅读都没有提供一种非常清晰的方法。我确实找到了什么答案最终导致接管了我当前的文件系统并损坏了它,无法修复-显然不是我要找的结果。我之前尝试过此操作,因此很遗憾,我不记得尝试了哪个命令。 您能否提供有关此操作的明确指导?预先感谢您的帮助。
11 mount  zfs 

4
OpenSolaris的未来
由于OpenSolaris已或多或少地被Oracle抛弃,是否有一个很好的替代方案可以实现OSOL的独特功能?ZFS是一回事,但是我喜欢映像创建系统,该系统可以让您创建主系统的映像,然后将其快速分发到其他计算机。这是简化群集创建的一项工作。 根据OSOL的Wikipedia页面,有Illumos,它是OSOL的分支,所有封闭源代码部分均由开放源代码部分替换。Illumos正在积极开发中。 但是,Illumos是否具有OSOL的所有功能?是否有人在使用它并可以告诉我们他或她的经历?

1
您将如何处理OpenSolaris计算机?
我有一台运行OpenSolaris的文件服务器(主要用于ZFS,我真的很喜欢它),但是由于Oracle放弃了它,所以我开始考虑如何处理该计算机上的OS。假设您有一台这样的机器,并且处于类似的情况,您有什么计划?切换到FreeBSD?伸出手去看看Illumos是否起飞?Nexenta?我很好奇其他人对此有何想法。
10 solaris  upgrade  zfs 

2
在低RAM环境中优化ZFS的可行性吗?
我目前正在设置文件服务器,并且已经到了实际设置数据驱动器的地步。系统具有4个驱动器(一个OS磁盘,3个数据磁盘)。操作系统磁盘格式化为ext4,不会被添加到ZFS池中(如果我选择运行ZFS)。我主要关心的是数据完整性和最小数据丢失风险(BIOS中禁用了驱动器缓存)。为此,ZFS似乎是最理想的选择,因为它具有适用于Linux的稳定版本(对吗?),并支持数据复制,池化和raidz,而硬盘驱动器的大小不必相同。 但是,这是我的问题。该服务器只有2GB的RAM,并且不能在不久的将来升级,实际上,在我安装所有其他服务之后,ZFS实际上只能访问1.5。一次最多可使用约10个客户端(平均约4个)。这太低了以至于不能算安全吗? 据我了解,ZFS可能会在内存不足的情况下崩溃,并占用大量内存。我听到了一些矛盾的意见,即交换是否会有助于缓解此问题(我有20 GB的交换专用驱动器)。有没有人遇到过使用RAM少的ZFS造成数据丢失的情况,您为防止这种情况进行了哪些优化? 牢记上述内容,尽管减小了ack大小并进行了一些缩小,但仍可以运行ZFS,还是这样做风险太大? 系统规格:2GB RAM 20GB交换驱动器OS,Debian 7,最小安装,带FTP,以及XBMC,DNLA(以了解RAM要求)。用于将存储服务器和音乐媒体流传输到其他设备。
10 linux  memory  zfs 

1
ZFS的极限背后有什么意义?
根据Wikipedia所述,ZFS具有以下限制: 最高 体积大小:2560000个亿yobibytes(2个128字节) 最高 档案大小:16 EB(2 64字节) 最高 文件数: 每个目录:2 48 每个文件系统:无限制 最高 文件名长度:255个ASCII字符(对于多字节字符编码(如Unicode)较少 为什么会有这些限制?是什么在内部限制了这些事情?为什么ZFS在理论上没有无限的卷大小或文件名长度等等?
10 filesystems  zfs  limit 

1
使用Linux上的ZFS,如何列出设备(vdev)的特定属性?
从现在开始我一直在使用ZFS,没有任何问题。我仍然对此感到兴奋,并且高度信任它。但是我不时会想到新的问题(特别是在阅读了一些文档之后,有时会增加而不是减少问题的数量)。 在这种情况下,我向根池添加了新的vdev(镜像),因此已阅读zpool手册(man zpool)。在本节的末尾zpool add,它指出: -o属性=值 设置给定的池属性。有关可以设置的有效属性的列表,请参见“属性”部分。目前唯一支持的属性是转移。请注意,某些属性(包括ashift)不是从先前的vdev继承的。它们是特定于vdev的,而不是特定于池的。 这意味着该ashift属性不是特定于池的,而是特定于vdev的。但是我无法找到任何命令或选项来允许我查看每个vdev的该属性(或任何其他vdev特定的属性)。 换句话说,例如,如果我有一个包含一个带有vdev ashift=12和一个带有vdev的池,ashift=10我该如何验证呢? 我已经尝试过的: root@cerberus:~# zpool list -v -o ashift rpool ASHIFT 12 mirror 928G 583G 345G - 27% 62% ata-ST31000524NS_9WK21HDM - - - - - - ata-ST31000524NS_9WK21L15 - - - - - - mirror 928G 74.4M 928G - 0% 0% ata-ST31000524NS_9WK21FXE - - …
9 linux  devices  zfs 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.