From owner-freebsd-questions@FreeBSD.ORG Mon Feb 26 18:46:48 2007 Return-Path: X-Original-To: freebsd-questions@freebsd.org Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 2676B16A403 for ; Mon, 26 Feb 2007 18:46:48 +0000 (UTC) (envelope-from david.robillard@gmail.com) Received: from py-out-1112.google.com (py-out-1112.google.com [64.233.166.183]) by mx1.freebsd.org (Postfix) with ESMTP id B877D13C461 for ; Mon, 26 Feb 2007 18:46:47 +0000 (UTC) (envelope-from david.robillard@gmail.com) Received: by py-out-1112.google.com with SMTP id f47so779836pye for ; Mon, 26 Feb 2007 10:46:47 -0800 (PST) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:mime-version:content-type:content-transfer-encoding:content-disposition; b=ULgxvsBBpoOD3spZbnNQonJizZNu362EKeJj+wBbmPSmCnFVmMFTKE+kYINp+GovZYLMZ9p40Im7DCXXfjf+lbX1t78mAi9MiDJOiEuP19CO/KsAX1Lpn4IvzSFABzKUUurMnppJU4zSVkvtV9sbnvb9Wcm3rDJe/zK03QTbNB4= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:mime-version:content-type:content-transfer-encoding:content-disposition; b=epK4OjvFCcEnhPyU0HQ1tVuKVxrgaoEmi3TaHGkufUP6wzB1A3v4DDplD6OrMmoOvdL/TCrBCwanlTmAxPslQuMPWp9e5IZp2KRbrvfwA705Zp7VvtioyQWDcdWvlXu6h2V34dq7L3rKDhQ+RGWPJ4CsHRQHFaJDNL9p63oauWE= Received: by 10.65.43.17 with SMTP id v17mr8811083qbj.1172515607123; Mon, 26 Feb 2007 10:46:47 -0800 (PST) Received: by 10.64.210.7 with HTTP; Mon, 26 Feb 2007 10:46:47 -0800 (PST) Message-ID: <226ae0c60702261046m671647bbwc9aef6b1f6475522@mail.gmail.com> Date: Mon, 26 Feb 2007 13:46:47 -0500 From: "David Robillard" To: "FreeBSD Questions" MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline Cc: Rob Subject: Re: Using source control to manage system configs 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: Mon, 26 Feb 2007 18:46:48 -0000 > If you don't have strong ties to CVS, already, I suggest using Subversion. It > handles many of your complaints about permissions and symlinks better than CVS > does. I agree, Subversion is better then CVS. We've switched from CVS to Subversion a year ago and so far the entire dev team is very happy. If you do have an existing CVS infrastructure, it's also possible to switch to Subversion with cvs2svn which is in the ports tree (i.e. devel/cvs2svn). > You might find that using something like cfengine from ports suits your goals > better than rolling your own pushing mechanism. The issue that you'll run > into is that you tend to need a human or at least a decent set of rc scripts > to properly adjust config files and make sure that services come back up after > a significant config change or major version update exposing some > compatibility problem. Again, Chuck is absolutely right. Cfengine is great, but you must know what you're doing. If you simply want to track changes and be able to roll back your configuration files, then go with a more simple approach like using RCS locally. RCS is part of the base FreeBSD system. Just create a directory named RCS (in capital letters) and use the RCS commands. Check the man pages for rcs(1) ci(1) co(1) rcsdiff(1) and rcsintro(1). Actually, rcsintro(1) is probably where you want to start. http://www.freebsd.org/cgi/man.cgi?query=rcsintro&apropos=0&sektion=0&manpath=FreeBSD+6.2-RELEASE&format=html Now if you want to keep your changes on another machine, then it's just a simple question of running a backup of your machines. (you do backup right? ;) I've been using RCS for 10 years now and it's simple, fast and does not depend on your network. So it's always there even in worst case scenarios. RCS is also present under a whole bunch of different UNIX flavors like FreeBSD, NetBSD, OpenBSD, RedHat, SuSE, Solaris, AIX, IRIX and HP-UX. So you're never lost because it's always the same :) Have fun, David -- David Robillard UNIX systems administrator & Oracle DBA CISSP, RHCE & Sun Certified Security Administrator Montreal: +1 514 966 0122