From owner-freebsd-questions@FreeBSD.ORG Mon Oct 31 02:00:37 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 C4FB116A41F for ; Mon, 31 Oct 2005 02:00:37 +0000 (GMT) (envelope-from infofarmer@gmail.com) Received: from zproxy.gmail.com (zproxy.gmail.com [64.233.162.202]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4634743D45 for ; Mon, 31 Oct 2005 02:00:37 +0000 (GMT) (envelope-from infofarmer@gmail.com) Received: by zproxy.gmail.com with SMTP id x3so793011nzd for ; Sun, 30 Oct 2005 18:00:36 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=mgUTni50+lf+BIQBKRzGy5p5reFLI87R9e1EqNyUi5qQPrxz/olGTltuRp/dktuQs579dJUVYO/J2IshS0cJZjVU2VWDsDBKxYXfOW72fcXcLRVV2NKGXCFmm9kgtjK2GvmlA0qZiAQU0kc8zIJ5ZRPV4XuSmIRTiSGm7bO57zw= Received: by 10.36.9.13 with SMTP id 13mr2873048nzi; Sun, 30 Oct 2005 18:00:36 -0800 (PST) Received: by 10.37.20.34 with HTTP; Sun, 30 Oct 2005 18:00:36 -0800 (PST) Message-ID: Date: Mon, 31 Oct 2005 05:00:36 +0300 From: "Andrew P." To: John DeStefano In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline References: <6FB767AE-D4D7-4C38-90C0-726D48AF5654@secure-computing.net> <200510281922.16495.ringworm01@gmail.com> Cc: freebsd-questions@freebsd.org Subject: Re: portupgrade stale dependencies 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, 31 Oct 2005 02:00:38 -0000 On 10/31/05, John DeStefano wrote: > On 10/29/05, Andrew P. wrote: > > On 10/29/05, John DeStefano wrote: > > > > > > Needless to say, this process wasn't much fun. What can I do to keep > > > this from happening again? What can/can't I safely include in cron t= o > > > automate database and index maintenance? > > > > > > > cvsup or portsnap, then portsdb -uUF. Work under > > any circumstances, leave you with updated ports > > tree and indexes. > > If I were to continue to use portsnap, which arguments can I safely > add to /etc/crontab? I know "portsnap cron" should be safe, but if I > want to completely automate the update process (not for installing > packages, but for keeping the ports tree, database, and indexes > current), should I also add an entry for "portsnap update" and > "portsdb -uUF"? > > > > > You can also try portupgrade -aF (prefetches > > needed files to speed up manual upgrade at a later > > time) and portsclean -DP (removes sources and > > packages which become outdated due to ports > > tree updates). > > > > Would you also recommend cron entries for these two commands? > > I used to use a cron job to run cvsup, and I'd like to implement a > better, more complete automated solution, so I don't tangle up my > system's packages and dependencies again. > I think the best way is to create a shell script, like this: #!/bin/sh /usr/local/sbin/portsnap cron && \ /usr/local/sbin/portsnap update && \ /usr/local/sbin/portsdb -uUF && \ /usr/local/sbin/portupgrade -aF && \ /usr/local/sbin/portsclean -DP and run it at an hour, when you're most unlikely to perform any kind of port upgrading. As portsnap manpage warns, if both portsnap (in the process of update) and portupgrade ever happen to access the same directory at once, it might ruin your ports tree. You'll have to do "portsnap extract" after that. You can leave out portsclean and run it manually, because it can create some load (which is not desirable on a production server). I run this script daily at 8-9 in the morning (I usually start messing with servers after 11). It never failed, and it always keeps everything up-to-date.