From owner-freebsd-questions@FreeBSD.ORG Thu May 1 15:03:23 2003 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9E88F37B401; Thu, 1 May 2003 15:03:23 -0700 (PDT) Received: from dan.emsphone.com (dan.emsphone.com [199.67.51.101]) by mx1.FreeBSD.org (Postfix) with ESMTP id A160D43FAF; Thu, 1 May 2003 15:03:21 -0700 (PDT) (envelope-from dan@dan.emsphone.com) Received: (from dan@localhost) by dan.emsphone.com (8.12.9/8.12.9) id h41M3I0o053947; Thu, 1 May 2003 17:03:18 -0500 (CDT) (envelope-from dan) Date: Thu, 1 May 2003 17:03:18 -0500 From: Dan Nelson To: "Jacques A. Vidrine" , freebsd-questions@FreeBSD.org Message-ID: <20030501220317.GA58262@dan.emsphone.com> References: <20030501213842.GA58002@madman.celabo.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20030501213842.GA58002@madman.celabo.org> X-OS: FreeBSD 5.0-CURRENT X-message-flag: Outlook Error User-Agent: Mutt/1.5.4i Subject: Re: huge file, spanning multiple tapes X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 May 2003 22:03:23 -0000 In the last episode (May 01), Jacques A. Vidrine said: > I thought this would be an easy problem to solve, but I haven't found > a decent solution after a bit of looking. > > I have a huge file, say 73GB. I need to dump it to tapes that have a > capacity of about 33GB each (but there is hardware compression, so > there is no exact capacity). > > If the file would fit on a single tape, I'd just use good 'ole dd(1). > > I figured, heck, somebody is _bound_ to have written a simple utility > that, say, reads from a pipe and writes to tape (or vice versa), and > prompts for a tape switch when it hits end-of-tape. But alas, I > cannot find such a beast. > > Using dump, cpio, etc is not really an option. I need to be able to > later read the data from tape into a pipe without it hitting disk. > > Anybody have bright ideas? How about tar? That lets you specify a change-volume script so you can change tapes when you're writing, and when you read the tape later you can specify the --to-stdout flag so it doesn't write to disk. If you can't have any headers, you can always tell dd to only write 33GB per tape: gzip < file | ( dd of=/dev/ersa0 bs=64k count=$((33000000/64)) echo "please insert next tape" head -1 < /dev/tty > /dev/null ) -- Dan Nelson dnelson@allantgroup.com