我有一台旧 PC 被重新用作家用 LAN 的 FreeNAS 盒。到目前为止,我已经将 FreeNAS 安装到 USB 拇指驱动器和 500GB SATA 驱动器上进行存储。我去卸载硬盘并重新格式化为 ZFS。我的想法是现在进行设置(单个驱动器池),然后将设置移到更大的情况下,我可以在系统中添加第二个甚至第三个驱动器,目的是设置驱动器镜像或希望RAID-Z。但是现在,我只有一个 500GB 的驱动器。
所以......现在看起来我只能用一个物理驱动器创建的唯一一种虚拟设备是条带,然后我将其添加到 zpool 并像以前一样安装。当我获得更多 HDD 时,将它们添加到池中以创建 RAID-Z 配置而不会丢失第一个硬盘驱动器上的现有数据的正确方法是什么?
TIA,
蒙特
我有一个非常大的外部驱动器,我想用于备份。部分备份用于需要从 Windows 访问的 Windows 分区,部分是某些 Linux 分区的备份。
由于我无法准确预测存储大小,因此我考虑创建多个分区,从一个 NTFS 和一个作为 ZFS 开始。如果 ZFS 上的磁盘空间不足,我只需将另一个备用分区添加到 ZFS 卷。如果 NTFS 需要更多空间,我会调整它的大小(或者如果不可能重新创建,但这意味着再次复制所有数据)。
更新:我使用cryptsetup. 然后我在它上面创建了一个巨大的 ZFS 文件系统。如果我设置copies=2,它是否也以seek-hell结尾,或者是否有一些巧妙的ZFS机制可以使用缓冲区将所有文件的副本存储在同一磁盘上[假设:也寻求地狱+只有一个副本,因为您需要几个设备的几个副本]。
我目前有一个 FreeNAS 盒子来存储我的个人文件。我想要一个异地备份,但我不愿意花钱购买第二台能够正常运行 ZFS 的计算机。因此我打算使用 进行远程备份rsync。
我希望备份中的所有文件保持一致,我认为可以通过首先拍摄递归快照然后使用rsync. 然而事实证明,为每个数据集拍摄了单独的快照。
现在我想知道是否有任何方法可以查看递归快照,包括所有数据集,或者是否有其他推荐的方法来查看rsync整个zpool. 我认为简单地符号链接到.zfs数据集中的文件夹不会起作用,因为我想rsync保留数据集本身中存在的任何符号链接。
根据我收到的评论,我认为我所需的配置的一些细节已经到位。我希望在家中拥有一台 NAS,可以轻松地存放数据,并且知道我永远不会丢失它。对我来说,这意味着在现场有多个副本,在异地有多个副本,在情况变得非常糟糕时有一个离线副本,在意外删除的情况下定期对数据进行快照,以及防止数据错误(例如位腐烂)的方法。事件发生的可能性越小,我就越放松,因为在灾难发生后没有多个数据副本,我就越不关心快照。此外,我更关心旧数据而不是新数据,因为我通常在另一台设备上有一个副本。最后我应该注意到大多数文件不会经常更新。大多数传输将是新文件。
我之前的设置是一组两个带有 4TB 外部硬盘的 Raspberry Pi。我对这个策略失去了信任,但硬件已经可用。经过一番研究后发现,随着时间的推移,防止错误潜入的唯一方法似乎是使用 ZFS 等校验和文件系统以及 ECC RAM 和 UPS 等服务器级组件。对于我的本地副本,我走了这条路。我在镜像中使用 2x4TB 磁盘,并在这里定期制作快照。
该机器应该涵盖除异地和离线备份之外的所有情况。由于我很可能不需要这些备份,因此我不愿意在上面投入太多。因此,我认为我可以使用我已有的 Raspberry Pi 和外部磁盘。我可以使其中一个磁盘始终处于离线状态,而另一个磁盘正在接收备份。定期更换磁盘可以让我对旧数据进行离线备份。
最简单的方法是使用zfs send和receive到两个池,每个磁盘上一个。然而,Raspberry Pi 与硬盘驱动器的 USB 连接相结合,不会提供zfs(或任何文件系统)非常可靠的操作环境。因此,我预计在此设置中会相当频繁地出现错误。由于我只使用一张磁盘,zfs因此没有任何可靠的方法来从故障中恢复。
这就是我想与 一起使用ext3或ext4结合的原因rsync。当然,一些坏位可能会被写入磁盘。就元数据而言,有一些工具可以解决大多数此类问题。如果是数据块,这将导致单个文件丢失。此外,可以使用恢复文件,rsync -c因为这会发现不正确的校验和,并会从本地计算机上的已知良好副本再次传输文件。鉴于硬件不太理想,这似乎是最好的解决方案。
这就是我使用的理由rsync,这导致我想到了如何rsync递归的原始问题zfs snapshot。如果我没有解决您的任何建议,请告诉我,因为我真的愿意接受其他选择。我只是目前不明白它们如何为我提供任何优势。
我有一台有两个硬盘的机器。我已经在其中一个上安装了 OpenSolaris,现在我想在我的 zpool rpool 中添加另一个作为镜像驱动器。我想我必须先格式化第二个磁盘,然后将其添加到池中。我怎样才能做到这一点?
我曾试图按照OpenSolaris的ZFS的rpool镜,但是当我来到prtvtoc /dev/rdsk/c7t0d0s0 | fmthard -s - /dev/rdsk/c7t1d0s0然后我得到这个消息:fmthard: Cannot stat device /dev/rdsk/c7t1d0s0和prtvtoc: /dev/rdsk/c7t0d0s0: No such file or directory
这是一些命令和我的输出(我已经删除了我认为不需要的部分输出:
pfexec format
AVAILABLE DISK SELECTIONS:
0. c7d0
1. c7d1
Run Code Online (Sandbox Code Playgroud)
和
zpool status
pool: rpool
state: ONLINE
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
rpool ONLINE 0 0 0
c7d0s0 ONLINE 0 0 0
Run Code Online (Sandbox Code Playgroud)
编辑:运行devfsadm -v以下命令后工作正常:
pfexec fdisk /dev/rdsk/c7d1s2
prtvtoc /dev/rdsk/c7d0s2 | fmthard -s - …Run Code Online (Sandbox Code Playgroud) linux 上的 zfs 是否有内置命令来加密整个池(或 zfs 文件系统)?
如果没有 - 应该如何继续这样做?
(我在 Ubuntu Server 12.04LTE 上运行 zfs)
我已经尝试了 FreeBSD 10 上可用的实验性 ZFS-on-root 分区方案。它似乎工作正常,除了我可以快速克服的引导问题。
无论如何,这是根据df的“分区”布局。
Filesystem Size Used Avail Capacity Mounted on
zroot/ROOT/default 24G 4.0G 20G 17% /
devfs 1.0K 1.0K 0B 100% /dev
zroot/tmp 20G 192K 20G 0% /tmp
zroot/usr/home 20G 188K 20G 0% /usr/home
zroot/usr/ports 20G 144K 20G 0% /usr/ports
zroot/usr/src 21G 1.1G 20G 5% /usr/src
zroot/var 20G 38M 20G 0% /var
zroot/var/crash 20G 148K 20G 0% /var/crash
zroot/var/log 20G 248K 20G 0% /var/log
zroot/var/mail 20G 144K 20G 0% /var/mail
zroot/var/tmp 20G 152K 20G 0% /var/tmp …Run Code Online (Sandbox Code Playgroud) 背景:
我打算设置一个 KVM 以在同一工作站上运行 Windows 和 Linux,但我不确定如何设置磁盘。我的理解是原始磁盘通常会提高性能。我将进行大量 I/O 密集型工作,因此性能至关重要。但是,我计划的设置需要大量工作才能设置,如果不需要,我不想做两次。根据我使用 Vbox 和 VMware Player 进行桌面虚拟化的经验,我多次被无法启动的损坏 VM 文件烧毁。这吸引我使用具有强大的数据损坏保护和良好恢复功能的设置。这吸引了我使用 ZFS。
基于这些基准,ZFS 比其他文件系统更适合 VM 存储,但它无法与原始磁盘直通相比。 http://www.ilsistemista.net/index.php/virtualization/47-zfs-btrfs-xfs-ext4-and-lvm-with-kvm-a-storage-performance-comparison.html
我的问题:
与原始磁盘模式相比,从 ZFS 池运行的 VM 文件的速度如何,尤其是将 Winodws/NTFS 作为来宾时?
如果您正在构建双操作系统工作站,您会如何权衡这两种设置的优点?
在这方面有什么重要的事情我似乎没有考虑吗?
为什么 ZFS(可能还有其他一些文件系统)倾向于在 imap 之上使用“uberblock”?为什么不能只有多个 imap 而不是 uberblock?
我正在处理一些非常大的数据包捕获文件(30 个文件中约 150GB),但由于数据包捕获的冗余度非常高,这些文件使用 .zip 文件压缩到原始文件大小的约 7% (14.29x)。
我想知道是否可以通过使用“compression=gzip-9”设置创建 ZFS 分区来“本地”处理这些文件。我创建了分区,复制了数据包捕获,最终结果是压缩率为 20.83% (4.80x)。
我想知道为什么会有这么大的差异。
几天来,我试图让 ZFS-on-Linux 在 Debian 7 上工作,但该模块不想编译:
# dpkg-reconfigure zfs-dkms
------------------------------
Deleting module version: 0.6.3
completely from the DKMS tree.
------------------------------
Done.
Loading new zfs-0.6.3 DKMS files...
Building only for 2.6.32-openvz-042stab090.5-amd64
Module build for the currently running kernel was skipped since the
kernel source for this kernel does not seem to be installed.
Run Code Online (Sandbox Code Playgroud)
当然,安装了头文件和源代码:
# uname -r
2.6.32-openvz-042stab090.5-amd64
# dpkg -l | grep 2.6.32-openvz-042stab090.5-amd64
ii linux-headers-2.6.32-openvz-042stab090.5-amd64 1 amd64 Header files related to Linux kernel, specifically,
ii linux-image-2.6.32-openvz-042stab090.5-amd64 1 amd64 Linux kernel …Run Code Online (Sandbox Code Playgroud) 我在每个地方读到有关 NAS RAID 的内容,都说数据应该保存在 ZFS 中。
我找不到我的问题的答案。
1) 为什么我应该将数据保存在 Windows 10 无法使用的文件系统中?
2) 当 Windows 确实使用 NTFS 时,如何将我的 Windows 10 PC 中的数据保存在 NAS 上的 ZFS 文件系统上,这甚至可能吗?
我在Nas4free中使用硬盘作为系统盘,这个硬盘现在是Ubuntu服务器的系统盘,但是一些zfs信息仍然存在......我在安装新系统之前没有擦除磁盘。我现在可以删除此元数据吗?或者我必须擦除整个磁盘并再次安装 Ubuntu 服务器?
zfs ×13
filesystems ×3
hard-drive ×3
linux ×3
backup ×2
freenas ×2
partitioning ×2
compression ×1
debian ×1
encryption ×1
freebsd ×1
gzip ×1
io ×1
linux-kernel ×1
linux-kvm ×1
mac ×1
metadata ×1
mirroring ×1
nas ×1
opensolaris ×1
rsync ×1