我想配置一个桌面系统,其中家庭文件系统将是冗余的(例如 RAID-1),并且每周都会拍摄快照。我已经用 ZFS 做到了这一点,快照系统非常棒,并且通过发送/接收,您可以轻松地在外部媒体上创建备份。不幸的是,在这一点上,我想要 GNU+Linux 而不是 FreeBSD 或 Solaris,所以我正在寻找好的替代方案的建议。
我认为我的选择是:
zfs send. 然而,所有文档都提到它仍然是实验性的。我似乎找不到任何关于其可靠性或可用性问题的实际报告。您能否向我指出有关该问题的任何信息,以澄清这是否是一个可能的选择?我对这个选项有很大的偏好,主要是因为我不想在 btrfs 准备好时重新格式化驱动器,但我没有关于它是否可用的信息,使用它是否是一个愚蠢的想法等等。 问题我无法回答的是“实验性”是什么意思。cp -al)的自定义 COW 快照。如果我不能使用 btrfs,这是我目前的偏好。那么 btrfs 的实验性如何,我应该选择哪个,我还有其他选择吗?如果我不保留外部增量备份怎么办,这会影响我的选择吗?
我正在尝试了解如何从命令通过管道传输到 gzip、cpio 或 tar 之类的东西。
有问题的命令属于 ZFS 系统。我在 Ubuntu Linux 10.04.3 上运行 ZFS。
我使用的命令是;
To create a snapshot;
zfs snapshot media/mypictures@20070607
To copy the snapshot to a directory;
zfs send media/mypictures@20070607 > ~/backups/20070607
Then I can also pipe into gzip
zfs send media/mypictures@20070607 | gzip > ~/backups/20070607.gz
Run Code Online (Sandbox Code Playgroud)
这些部分我理解。
但我的第一个问题是,我将如何通过管道输入 tar + gzip?
这个?
zfs send media/mypictures@20070607 | tar czvf > ~/backups/20070607.tar.gz
Run Code Online (Sandbox Code Playgroud)
我的另一个问题是如何从 tarball 或 gzip 中获取数据?
我必须使用 zfs recieve media/mypictures@20070607 < ~/backups/20070607
那么如果我使用 tar 会不会是这样?
zfs recieve media/mypictures@20070607 | tar …Run Code Online (Sandbox Code Playgroud) 我有一个 ZFS 数据集,它每小时拍摄一次快照。昨天修改了一些需要还原的文件;但是,数据集有不应该恢复的持续更改。
我有哪些选项可以在不干扰当前数据副本的情况下访问快照?我可以将只读模式的快照挂载到新的挂载点吗?
我遇到了大多数人遇到的相同问题:如何创建可靠的个人存储解决方案,因为:
因此,在将我的头撞到这个问题上几天之后(并且在我的脑后多年),我提出了以下解决方案。我将描述一个基于本地 linux ZFS 测试过的解决方案,它在 Ubuntu PPA 中可用,但 LVM、MD 和 btrfs 可用于实现相同的目标。为此,我将使用 RAID1(ZFS 镜像 vdevs)。
例如,考虑一组新的 2TB 驱动器、一个旧的 750GB 驱动器、2 个旧的 400GB 驱动器和一个旧的 500GB 驱动器。最佳镜像分区有 2TB 的可用空间,如下图所示,其中“:”分隔分区,“|”分隔 分离磁盘:
+------------------------------------------------------------------+
| 2TB (sda1) : (sda2) : (sda3) : (sda4) |
+------------------------------------------------------------------+--+
| 750 GB (sdb) | 400 GB (sdc) | 400 GB (sdd) | 500 GB (sde1) :XX|
+---------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)
创建您的 zpool 作为
zpool create archive mirror /dev/sda1 …Run Code Online (Sandbox Code Playgroud) 我精确地运行Ubuntu 12.04并希望使用ZFS格式化外部 USB HDD 以将其用作我的主目录的备份驱动器。
由于它只是一个驱动器,我对自我修复不感兴趣,因为我理解这需要 2 个或更多磁盘的 RAID 配置才能正确执行。因此,目前能够使用 ZFS 本机功能拍摄我的外部备份驱动器的快照就足够了。
计划是使用--inplace选项将我的主文件夹同步到 ZFS 驱动器上,以减少快照大小。这有望让我在ZFS驱动器上保留数周的主目录快照。主目录所在的操作系统的 HDD是ext4,如果这有什么不同的话。我还希望在我的 Ubuntu 中拥有本机ZFS支持,而不是FUSE。
我应该如何使用命令行在 Ubuntu 中实现这一目标?(不是整个备份,只是格式化)。
我在 OSX 上使用ZFS并且我有 zpool,它处于活动状态且在线:
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
WD_1TB 931G 280G 651G 30% 1.00x ONLINE -
Run Code Online (Sandbox Code Playgroud)
但我实际上无法安装它。
$ sudo zfs mount WD_1TB
cannot open 'WD_1TB': pool I/O is currently suspended
cannot open 'WD_1TB': pool I/O is currently suspended
Run Code Online (Sandbox Code Playgroud)
或卸载它:
$ sudo zfs unmount WD_1TB
cannot open 'WD_1TB': pool I/O is currently suspended
cannot open 'WD_1TB': pool I/O is currently suspended
Run Code Online (Sandbox Code Playgroud)
甚至摧毁它:
$ sudo zpool destroy -f WD_1TB
cannot open 'WD_1TB': pool I/O …Run Code Online (Sandbox Code Playgroud) 我最近确实将我的小 NAS 升级到 ubuntu 14.04,最初一切正常。我习惯于在重新启动后重新导入我的 ZFS 池,因此在 2 天前重新启动后挂载点消失也就不足为奇了。但是这次我无法重新导入它,当我开始仔细观察时,整个 ZFS 数据集也消失了,我开始想不通要尝试什么(我找到的谷歌结果也是如此)。
$ zpool list 或 zpool status 没有可用的池
$ zfs 列出没有可用的数据集
$ ls /dev/disk/by-id/ ... 磁盘,因为我在我的配置中使用过它们 ... 没有丢失
在 2 天前重新启动之前一切正常,在重新启动之前我确实运行了一些升级,包括内核(通过 apt 进行标准升级)。重新安装/进一步升级或返回到以前的版本(在 grub 中选择)都没有帮助。
让它重新运行真的很酷,特别是因为我为了它承诺的可靠性而切换到 ZFS。如果整个存储突然消失,那么好的数据冗余对我没有帮助......
有任何想法吗?
当我做快照时,我试图理解 ZFS 的工作方式。当我在机器上使用 zfs list 时,我得到一些安装点和一些路径。例如我得到类似的东西:
rpool/ROOT/s10x_u10_wos_17b 5.3gb 58.2gb 5.3gb /
Run Code Online (Sandbox Code Playgroud)
我将 root 作为安装点/。
我的第一个想法是存在实际的文件,当我导航到该/rpool目录时,没有 ROOT 目录。经过一番思考,我发现它/rpool/ROOT实际上是安装在遗产上的,所以它一定在其他地方。
有人可以解释一下当它安装在旧版上时文件在哪里,也许为什么使用这种旧版模式?
是否可以回滚到快照中的某个目录?例如,给定快照tank/home@snapshot_week_01,我可以回滚到类似的内容tank/home/louis@snapshot_week_01而不回滚其中的所有其他文件目录tank/home吗?
我有 Kubuntu 16.04 并且正在将 ZFS 用于大数据分区 (RAIDZ1)
我缺少 5GB 的内存并且无法找到它去了哪里。不,它不是缓存
根据我能想到的所有工具,我目前有以下统计数据:
Actively used: 9458.3 MB
Inacively used: 2544.5 MB
Mapped for IO: 2433.0 MB
Buffers: 242.6 MB
Slab: 6669.2 MB
Page Tables: 91.0 MB
Cached: 3758.1 MB
Dirty: 0.1 MB
Writeback: 0.0 MB
Free: 1856.5 MB
------------------------------
Total: 27053.3 MB
Total Memory: 32133.5 MB
------------------------------
Missing ???: 5080.2 MB
Run Code Online (Sandbox Code Playgroud)
所以 5 GB!不考虑 RAM。他们去了哪里?
工具输出
纳米:
RAM High Low Swap Page Size=4 KB ?
? Total MB 32133.5 -0.0 -0.0 8195.5 …Run Code Online (Sandbox Code Playgroud) zfs ×10
linux ×4
backup ×2
lvm ×2
snapshot ×2
archiving ×1
btrfs ×1
compression ×1
disk-utility ×1
filesystems ×1
hard-drive ×1
kubuntu ×1
macos ×1
memory ×1
mount ×1
raid-1 ×1
rsync ×1
solaris ×1
ubuntu ×1