On Thursday 28 May 2009 23:43:19 Maxim Wexler wrote:
> > My advice: Save everything to another disk and then reformat the
> > partition with a higher amount of inodes.
>
> Everything? Won't that copy over the extraneous inodes?

You appear to not understand what an inode is.

The inode IS THE FILE. It's a specially formatted block on disk, the 
filesystem knows how to interpret it, and it contains all known information 
(except one piece) about the file - as in, everything that ls can display.

The missing bit of information is the name you call it by, that is stored in 
the directory (which is really just a special file and contains file names and 
their corresponding inode numbers - this is how the fs driver finds files).

When you copy a file, the inode is read and a new one initialized in the new 
location. Then the disk blocks are read from the original and copied to the 
destination. As the destination does this, the fs driver knows how to keep 
it's inode accounting intact.

So, there is no such thing as an extraneous inode. It's either being used (and 
thus gets copied) or it is not used (and does not get copied). You cannot copy 
a file without copying it's inode, and you cannot copy an inode without 
copying the file (special exception - files of zero length).

> > This will create a file system with three times as many indoes as you
> > had before.
>
> Is 3x enough? I haven't even gotten off the ground yet, 28 lines in
> /var/db/pkg/world and my alotted inodes have been already used up? No
> gnome, kde, gimp, office etc etc.

You will need approx 500,000 inodes on an average machine total, split that up 
amongst your mounted volumes as appropriate. Use "find -x | wc" on an existing 
machine per mount point to get a rough idea of the scale.

> FWIW, I thought I'd chroot in and do an emerge -C mozilla-firefox but
> it hadn't even been installed yet! It choked on dev-java/jdk. So, did
> emerge mozilla-firefox. Same thing:
>
> IOError: [Errno 28] No space left on device:
> '/var/db/pkg/dev-java/-MERGING-sun-jdk-1.6.0.13/CFLAGS'

Well, what did you expect? You have used up all the "index entries" for files, 
and you are trying to create more files. What else could it do apart from 
fail?

Log onto the machine and delete some stuff. Then try unmerge to free up more 
space. Then backup, reformat, restore.

-- 
alan dot mckinnon at gmail dot com

Reply via email to