[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Help: Dselect ran out of disk space



> Tim wrote:
> > 
> > Bolan Meek wrote:
> > > What's your partitioning look like?  What's the output of `df`?
> > > If you use cfdisk, are there any partitions you don't see in `df`,
> > > i.e. not have mounted?
> > 
> > I have 104MB as root and 16MB swap there is 1% unuseable, presumably
> > something to do with the drive geometry.
> 
> Is this from a `df` report?  I don't remember X% Unusable in that...
> 
> Only a single root partition, everything going into it?  OK, you can
> run with 104MB, but you don't have much room. You'll have to be really
> choosy about what you install, and only install a few packages at a
> time, remembering to "hold" (if you're using dselect, which I recommend)
> Up To Date packages so that when they're updated, they won't
> automatically get installed, clogging up your limited space for /var/cache...

I recently had a need to do the same thing (install in almost no space)... 
in my case, because a friend is using a FlashDisk instead of a standard hard 
drive so to have lots less power consumption for his libretto.

You *could* install minimum only by using the "debinst" option of the Linuxcare
bootable business card.  It drops in only base for slink (well, updated kernel
though) and configures the bootup.

However, we got a fairly usable day-to-day config by the following means.  
If anyone wants to turn into a mini-HOWTO or add it to one, I'm cool with
that :)
	Forget using the installer.
	mount the drive temporarily on another system.
	format a small swap, the rest one-big-slash.  (you did)
		don't forget a hibernate volume if you need it! 
		(In our case, this is why we are so cramped.)
	drop in the base tarball.
	drop in a kernel package of your choice.  plus modules.
		delete modules you expect to not need, if it's
		not a custom build.
	perform steps the installer would have done to make it bootable
		create an /etc/fstab which mounts /tmp as a ramdisk.
		set /etc/hostname, create /etc/hosts with 127.0.0.1 localhost
			if you don't things will complain a lot.  
			"missing neighbor table" -> you have to setup the
			localhost interface!
		mv /sbin/uncofigured.sh to somewhere else
		doctor /etc/syslog.conf so that all fluff is logged 
			to VCs only. critical stuff still hits disk.
			I didn't, but you could, have it log to ramdisk.
			anyways this is crucial otherwise bootup babble
			will nail your free space.
		create an /etc/lilo.conf correct for the environment 
			it will become. Do Not Yet run LILO!
		umount it and install it in the correct system.
		boot a rescue disk of some sort;  tomsrtbt or linuxcare BBC
			are my preference.
		chroot /dev/hda1 or whatever your / is.
		/sbin/lilo
		adjust /etc/rcN.d sequence so it only boots things you really
			want.  if you stay with default /etc/inittab, it's
			enough to fixup /etc/rcS.d (should be ok) and /etc/rc2.d
		exit chroot and umount

At this point anyone is welcome to tell me what else the installer normally
does for us, that I've skipped and which might affect something.

	boot the machine "normally"
	check your /etc/apt/sources.list (tempoarily goto woody)
	apt-get update
	apt-get install console-apt
		this offers the ability to Hold and Purge things such as
		dselect does but Muuuch nicer interface.  huge stacks of 
		good things use curses so the extra library is not bad.
	(switch sources.list back to your own preference if not woody)
	pick a text editor, Purge all the others. 
		I don't know whose drugs thought ae was best default.
		vim + vim-rt was my pick though I had to install them.
		I got rid of tiny-elvis, ae, there are some others in base.
	if you won't do mail switch your MTA to Masqmail. because of its
		focus it's much smaller than the others, and cron inists
		on an MTA for its scripts, but since you need it to
		keep a tight leash on diskspace you can't toast it. *sigh*
		in other words, install Masqmail, then purge exim, then
		tweak the cron setup so it doesn't -need- mail.

equivs can be used to defeat this and even get rid of the MTA?  I haven't
tried it.

	Purge all other base packages you don't want.  If console-apt won't let
		let you, you can exit and use 	apt-get remove <package> 
		to see what its complaint is -- maybe get rid of 3 things 
		at once.  It may seem huge but no, you can't get rid of perl.

Good time to backup a tar.gz of your trimmed results to another system!

	Add things you want in small chunks.  move their /usr/[share/]doc
		to some other system or toast the docs.

I think it's possible to remove the locales whose languages you won't be using.
Unfortunately you have to do this as you go because messages are in each app's
package.

Tomsrtbt saves space by turning all the man pages it does use into rawtext 
instead of troff.

I can tell you, maybe you can get X, but if so, a very tight fit.  (look at
the BBC for a good minimum X kit, they use Amaya as browser which is way
crashy.)  You can get okay functionality by installing mc, lynx-ssl (from 
international), and sticking to curses apps.  We had a little more space to
play with than you do (more like 150 Mb) and succeeded at squishing X and 
netscape in.  (you might prefer links which can deal with tables, to lynx
which can't, but I don't think links does SSL.)  I know you can get a fairly
small kit but haven't measured the size it results without hurculean efforts 
to trim fat first. 

Does apm still require X to satisfy its xlibs-for-xapm problem?

* Heather Stern * star@ many places



Reply to: