From owner-freebsd-questions@FreeBSD.ORG Fri Mar 12 15:26:42 2004 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 977E516A4D0 for ; Fri, 12 Mar 2004 15:26:42 -0800 (PST) Received: from clunix.cl.msu.edu (clunix.cl.msu.edu [35.9.2.10]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0CCBA43D2D for ; Fri, 12 Mar 2004 15:26:42 -0800 (PST) (envelope-from jerrymc@clunix.cl.msu.edu) Received: (from jerrymc@localhost) by clunix.cl.msu.edu (8.11.7p1+Sun/8.11.7) id i2CNQT820905; Fri, 12 Mar 2004 18:26:29 -0500 (EST) From: Jerry McAllister Message-Id: <200403122326.i2CNQT820905@clunix.cl.msu.edu> To: list-freebsd@fsck.net (Eugene Lee) Date: Fri, 12 Mar 2004 18:26:29 -0500 (EST) In-Reply-To: <20040312230210.GC16477@Dark-Age.local> from "Eugene Lee" at Mar 12, 2004 05:02:10 PM X-Mailer: ELM [version 2.5 PL2] MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit cc: freebsd-questions@freebsd.org Subject: Re: resizing partitions in the same slice 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: Fri, 12 Mar 2004 23:26:42 -0000 > > On Fri, Mar 12, 2004 at 02:22:21PM -0500, Jerry McAllister wrote: > : Eugene Lee asked: > : > > : > /dev/da0s1g 2064302 1464672 434486 77% /usr > : > /dev/da0s1h 10660096 720 9806570 0% /data > : > > : > I almost run out of space during a buildworld, so I'd like to expand > : > /usr from 2 GB to 4 GB by taking space away from /data. > [...] > : > So my procedure to do this is to recalculate the size/offset/cylinder > : > settings for my partitions "g" & "h", change those settings via > : > disklabel(8), then use growfs(8) on /dev/da0s1g? Seems simple enough, > : > and the data on /usr should be preserved, correct? > : > : Yes and no. I do not think you can shrink a partition with these. > : Since, in order to grow /dev/da0s1g you will have to shrink /dev/da0s1h > : I think you cannot do what you want. I may well be wrong on this. > : I haven't tried it. > > I'm a little surprised. I would think that resizing partitions is a > common request, that the idea of growing one partition while shrinking > another is not a new or rare notion. Can anyone else share their views > or experiences? The list archives contain few comments on the subject. I can't answer to that very much. I have always managed disk size by moving things around and making symlinks as I described. Some people don't even have separate /usr and /var partitions. They just include them in one large partition (often /usr actually or sometimes /home) along with everything else and then they don't have to worry about how to size things other than just getting enough disk overall. What I suggested is sort of in between - by moving those directories in /usr that tend to grow a lot in to the big grab-all partition. > BTW, some places have recommended commercial solution like Norton Ghost > or Partition Magic. Do these products work on FreeBSD's UFS format and > grok partitions-in-a-slice? Partition Magic only manipulates slices and does not know anything about partitions within slices - especially FreeBSD partitions. I would guess that Norton is the same because it is made for Microsloth environments. UFS wouldn't have anything to do with it - that comes later with newfs. > [...symlinking /usr/{ports,local,src} to elsewhere...] > : > : This should give you back quite a lot of your /usr file system > : Although ports, local and src are the usual hogs, you may need > : to use du in the /usr directory to find out what else is taking > : lots of space if these aren't the ones. Do you have a bunch of > : home directories there or are you making them in /data for example. > > I have /usr/home, and other stuff in /data. I guess I could always > symlink /usr/src to /data/src when doing a buildworld. Drats. > > : > But will /dev/da0s1h be okay? Is editing the disklabel enough? Or do I > : > need to reformat the partition --- and, if so, how? I'm not too comfy > : > using newfs(8) directly. Can I just run "newfs /dev/da0s1h" after > : > running the growfs(8) command and it will use the disklabel settings? > : > Or can I be a wuss and use /stand/sysinstall? :-) > : > : Editing the disklabel will change the partition sizes. > : Definitely /dev/da0s1h will be messed up. Running newfs on it > : will build a new filesystem in whatever is now that partition. > > Got it. I figured as much, but it's always good to get other opinions. > Jerry, thanks for the feedback! > Have fun, ////jerry