From owner-freebsd-questions@FreeBSD.ORG Fri Jul 8 04:01:20 2005 Return-Path: X-Original-To: freebsd-questions@freebsd.org 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 3339616A41C for ; Fri, 8 Jul 2005 04:01:20 +0000 (GMT) (envelope-from drew@mykitchentable.net) Received: from relay01.roc.ny.frontiernet.net (relay01.roc.ny.frontiernet.net [66.133.182.164]) by mx1.FreeBSD.org (Postfix) with ESMTP id AF8EF43D46 for ; Fri, 8 Jul 2005 04:01:17 +0000 (GMT) (envelope-from drew@mykitchentable.net) Received: from filter01.roc.ny.frontiernet.net (filter01.roc.ny.frontiernet.net [66.133.183.68]) by relay01.roc.ny.frontiernet.net (Postfix) with ESMTP id 93B0E364848; Fri, 8 Jul 2005 04:01:16 +0000 (UTC) Received: from relay01.roc.ny.frontiernet.net ([66.133.182.164]) by filter01.roc.ny.frontiernet.net (filter01.roc.ny.frontiernet.net [66.133.183.68]) (amavisd-new, port 10024) with LMTP id 13791-01-97; Fri, 8 Jul 2005 04:01:16 +0000 (UTC) Received: from blacklamb.mykitchentable.net (67-137-46-191.dsl2.elk.ca.frontiernet.net [67.137.46.191]) by relay01.roc.ny.frontiernet.net (Postfix) with ESMTP id 83E3B3641F0; Fri, 8 Jul 2005 04:01:14 +0000 (UTC) Received: from [192.168.1.3] (bigdaddy.mykitchentable.net [192.168.1.3]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by blacklamb.mykitchentable.net (Postfix) with ESMTP id 9258C3BF3BA; Thu, 7 Jul 2005 21:01:13 -0700 (PDT) Message-ID: <42CDFA88.5000803@mykitchentable.net> Date: Thu, 07 Jul 2005 21:01:12 -0700 From: Drew Tomlinson User-Agent: Mozilla Thunderbird 1.0 (Windows/20041206) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Matt Emmerton References: <42CDF112.5070209@mykitchentable.net> <004701c5836e$7e3aa160$1200a8c0@gsicomp.on.ca> In-Reply-To: <004701c5836e$7e3aa160$1200a8c0@gsicomp.on.ca> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: by amavisd-new-20040701 (2.0) at filter01.roc.ny.frontiernet.net Cc: FreeBSD Questions Subject: Re: tar Syntax Help X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Jul 2005 04:01:20 -0000 On 7/7/2005 8:38 PM Matt Emmerton wrote: > > >>I'm trying to copy an entire file system while using an exclude file to >>avoid copying things such as /dev, /proc, etc. I've read the man page >>and found the -X or --exclude-from tar option. I've create a file >>called /exclude.list. It contains lines such as: >> >>/exclude.list >>/dev >>/proc >> >>But I can't figure out how to form the correct command line. I >>basically want to do this: >> >>tar -cvf - --exclude-from /exclude.list -C / . | tar xpf - -C . >> >>I've search the web and found examples that look similar to the above >>but this does not work for me. tar attempts to copy /dev and I get all >>the associated errors. I've tried other placements of either "-X", "X", >>and "--exclude from" on the command line various things happen from it >>just being ignored to tar thinking I want to create and archive named >>"-X", etc., to tar trying to add a file named "-X", etc. to the current >>archive. I'm at a loss. >> >>I'm using 4.11 and trying to make a good backup before upgrading to >>5.4. Can anyone tell me the secret incantation to make this work? >> >> > >-X only works with specific files, not entire directories. You will need to >list every file in /dev or /proc that you want to exclude, which is somewhat >painful. > >The backup strategy that I've used on production systems is to back up each >directory in a separate tar file. Not only does this work quicker (since >you can fire off multiple tar sessions in parallel), but you can avoid >"special" directories like /dev and /proc, temporary mount points such as >/cdrom and /mnt, and other directories that don't need to backed up, such as >/tmp. It's also quite handy when you've got large volumes of data (such as >in /home) and the complete system image won't fit on a single tape. > >The general notion of my script is the following: > >#!/bin/sh >for i in bin boot etc home modules root sbin usr var >do > tar cvzf /backups/$i.`date +%Y%m%d`.tar.gz $i & >done >wait >echo "Backups completed!" > Thanks for your reply. I can do it this way and will for the sake of speed. However this post suggests that one can use wildcards. http://lists.freebsd.org/pipermail/freebsd-questions/2004-July/052207.html Have you ever tried that? I did but was not successful. Thanks, Drew -- Visit The Alchemist's Warehouse Magic Tricks, DVDs, Videos, Books, & More! http://www.alchemistswarehouse.com