From owner-freebsd-questions@freebsd.org Mon Nov 14 09:42:52 2016 Return-Path: Delivered-To: freebsd-questions@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3AA26C3D5A5 for ; Mon, 14 Nov 2016 09:42:52 +0000 (UTC) (envelope-from vas@mpeks.tomsk.su) Received: from relay2.tomsk.ru (mail.sibptus.tomsk.ru [212.73.124.5]) by mx1.freebsd.org (Postfix) with ESMTP id 57EBF1C32; Mon, 14 Nov 2016 09:42:50 +0000 (UTC) (envelope-from vas@mpeks.tomsk.su) X-Virus-Scanned: by clamd daemon 0.98.5_1 for FreeBSD at relay2.tomsk.ru Received: from [212.73.125.240] (HELO admin.sibptus.transneft.ru) by relay2.tomsk.ru (CommuniGate Pro SMTP 5.1.16) with ESMTPS id 39417296; Mon, 14 Nov 2016 15:39:24 +0600 Received: from admin.sibptus.transneft.ru (sudakov@localhost [127.0.0.1]) by admin.sibptus.transneft.ru (8.14.9/8.14.9) with ESMTP id uAE9gmwd074661; Mon, 14 Nov 2016 16:42:48 +0700 (KRAT) (envelope-from vas@mpeks.tomsk.su) Received: (from sudakov@localhost) by admin.sibptus.transneft.ru (8.14.9/8.14.9/Submit) id uAE9gk0m074659; Mon, 14 Nov 2016 16:42:46 +0700 (KRAT) (envelope-from vas@mpeks.tomsk.su) X-Authentication-Warning: admin.sibptus.transneft.ru: sudakov set sender to vas@mpeks.tomsk.su using -f Date: Mon, 14 Nov 2016 16:42:46 +0700 From: Victor Sudakov To: Matthew Seaman Cc: freebsd-questions@freebsd.org Subject: Re: zfs send/receive as dump/restore alternative Message-ID: <20161114094246.GA73849@admin.sibptus.transneft.ru> References: <20161114054657.GA66229@admin.sibptus.transneft.ru> <1bf448ae-a011-8c69-b199-17d71f4053c3@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1bf448ae-a011-8c69-b199-17d71f4053c3@FreeBSD.org> Organization: AO "Svyaztransneft", SibPTUS X-PGP-Key: http://www.dreamwidth.org/pubkey?user=victor_sudakov X-PGP-Fingerprint: 10E3 1171 1273 E007 C2E9 3532 0DA4 F259 9B5E C634 User-Agent: Mutt/1.7.1 (2016-10-04) X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Nov 2016 09:42:52 -0000 Matthew Seaman wrote: > > How would you restore a) a single dataset or b) a single file from a > > replication stream package? I really need this mode of operation for > > undeleting users' files etc. > > You have to 'zfs recv' your datastream and expand it out as a > filesystem. What if I have not enough space to expand the whole datastream as a filesystem? My replication stream package is 119G large at the moment one one server, I have neither free space nor spare time to expand the whole of it into an altroot. restore(8) did not require that. > Then you can simply copy individual files back to your live > system, or you can do a zfs send / zfs recv of a single dataset to > restore that. If I have a complete replication stream package, can I "zfs recv" a single dataset from it? It would be silly to expand the whole pool to extract a couple of files from zroot/usr/home/johndoe/docs > > You can easily 'zfs recv' the datastream into a different root directory > than it came from -- so you won't end up overwriting onesystem with the > backup of another. > There are scripts to do this in ports, but here's some I wrote > myself: > > https://github.com/infracaninophile/zfs-backup > > I never did get round to writing a 'zfs-restore' script though. > So if you ever get to restore several files and don't have enough space to receive the whole stream, what would you do? With restore or tar you can always do a partial extract. -- Victor Sudakov, VAS4-RIPE, VAS47-RIPN sip:sudakov@sibptus.tomsk.ru