Standard disk setup here used to include a 5GB root partition (this has been upped to 10GB for a while now). I’ve just encountered the first machine with this setup to be running out of space on / - mostly this seems to be down to /usr/share.
Unfortunately resizing on-the-fly in this situation is difficult, due to the parted restriction that partitions can only be resized at the end - i.e. their start point must remain the same - which means that I can’t just take space off the front of the next partition along. The disk looks like this:
/dev/hda1 / 5GB
/dev/hda2 /local 105GB
(there’s swap and so on in there too, but let’s ignore that for the moment).
There is a solution to this, which goes like this (to expand /dev/hda1 by 5GB):
Resize /dev/hda2 to be 5GB, leaving 95GB spare.
Create a new partition in that 95GB.
Copy the data from /dev/hda2 to the new partition.
Resize /dev/hda1 to include that newly spare 5GB which used to be the resized /dev/hda2.
Tidy up as appropriate - all partition labels will have changed so you’ll need to edit /etc/fstab and possibly your boot loader, before you reboot.
This only works if you have less than 5GB of data in /dev/hda2.
You’ll need to be running from a rescue disk or similar if you want to mess around with your / partition.
Read the parted manual before actually doing the above :-)
Unfortunately, my /dev/hda2 partition in the above has rather more than 5GB of data so this plan won’t work. I was intending to dump the data off and then resize; but looking again at the partition table, I’ve noticed the existence of a swap partition between / and /local. Now, the data on this obviously doesn’t matter. So I can delete that partition, expand /dev/hda1 into that, shrink what is actually /dev/hda3 down by the appropriate size, and put in a new swap partition at the end of the disk. This will only get me 2GB, but that should be enough breathing space to be going on with.
All this did also lead me to thinking about the appropriate size for a / partition. 10GB seems like a lot to me… but for a machine with a lot of software, 5GB clearly isn’t enough any more. (There are operational reasons for keeping the root partition separate from ‘data’ partitions.). How much do I really need to allow for futureproofing on boxes I buy now and expect to last 3 yrs? Should I be upping the space to 15GB?
So Debian etch (4.0) has finally been released (not sure how late they were in the end… although I seem to remember seeing “late 2006″ on the Debian website). I’m therefore starting to go through the process of upgrading from sarge on desktop machines.
The first note is that actually, by and large it seems very smooth. The download, unsurprisingly, takes a while, and a reboot immediately afterwards does seem to be necessary to sort out a couple of oddities (mostly with X). But the three machines I’ve tested upgrading on so far have all come up fine
after reboot, with no serious problems.
Minor gotchas encountered so far:
Users actively using the machine during upgrade may experience odd errors (e.g. programs not functioning in surprising ways). These don’t seem to have any serious ill-effects but it’s probably more sensible if possible to take the machine down to single-user mode before starting. (This is, arguably, a good general idea, and is probably even an official recommendation; but I don’t like starting work early or staying late, so wanted to see if it was possible to do smoothly without kicking users off their machines.).
DenyHosts requires a reinstall; presumably this is just to link to the newer version of Python, and as such there is probably a neater solution than reinstalling, but reinstalling is so fast that it’s an acceptable solution.
LDAP and Kerberos, always the two things I’m most concerned about, upgrade
In general I’m extremely impressed with the process; it’s certainly a lot smoother than the last version upgrade (to sarge) which I recall having a lot more trouble with at the time.
It’s always interesting to watch low-margin (and presumably high-volume) products disappear as sources of business value in the mainstream, as well as watching previously high-margin products lose their value gradually. CD-burning software isn’t that interesting anymore. Media playback software is downright dull. When was the last time anyone made money off of disk compression software?
The rule of minimills applies beyond F/OSS projects edging out proprietary competitors; consider how bundled IE took over for Netscape Navigator and Communicator. If you were on the Internet in those days, did you ever actually pay for Netscape?
There’s lots of stuff out there about improving your workflow on Macs (lots of it based around Getting Things Done or similar ideas). I do have a Mac, and some of this I’ve found very useful (and some less so, admittedly).
But I’ve not seen much out there on similar tricks for Linux. Bash & vim (& prob emacs but I don’t use that ;) ) tricks, yes, but are there any other apps or tricks that you’ve found to make your working life easier on LInux?
Probably their first use with Linux not least their first look at a real computer. While these young African children will be interfacing with the computer using Sugar (pictured above) and applications such as Etoys, the underlying OS is Linux. Jessica Dolcourt posted a great article on the One Laptop Per Child initiative in Nigeria on CNET news. We are finally seeing the beginning of the first deployments of the laptop.