On 8 June 2010 18:42, Mick <michaelkintz...@gmail.com> wrote:
> On 8 June 2010 10:47, Neil Bothwick <n...@digimed.co.uk> wrote:
>> On Mon, 7 Jun 2010 23:46:19 +0200, Alan McKinnon wrote:
>>
>>> Neil is likely correct - filesystem corruption. A quick easy way to
>>> check is to run ls -al starting with the target then going up on
>>> directory in turn. If you start getting lots of "???" in the output,
>>> corruption is almost certain.
>>
>> Paul's suggestion of running lsof may be valid too. If a process had a
>> lock n a file that was then deleted, the file wouldn't show up in ls but
>> would prevent the directory being deleted until the lock was released.
>>
>> If you don't want to mess around with lsof and tracking down the process,
>> a reboot will solve that one.
>
> It seems that the fs was well and truly corrupted.  :-(
>
> I looked carefully for ????? output of ls -la, which is a sure warning
> something went sideways with the fs, but unfortunately I couldn't find
> anything wrong.
>
> I have tried throughout the day to recover my machine to no avail.  I
> downloaded gcc ebuild and sources from a snapshot and recompiled it
> using a live cd.  The same file problem as reported above arose at
> least twice.  I have so far run fsck three times - everytime it seems
> to fix the error and then I can delete the rogue directories.
>
> Now tell me, is it possible that each time the fs corrupts itself in
> the same manner - i.e. at the /var/tmp/portage/sys-devel/... ?
>
> I found that /, /var and /usr/portage were corrupted.  Each one on its
> own separate partition.  Each one on a reiser4 type fs ...
>
> Smartmontools doesn't show any failures/errors.
>
> Is reiser4 prone to corruption?  Thankfully my home partition and a
> large data partition both on reiser4 are OK.

I used dd to zero the partitions, formatted them afresh (again with
reiser4) and then installed gcc-4.4.3-r2 with the Live-CD as part of
re-installing my system.

I couldn't believe my eyes where I saw this at the end of the emerge:
=======================================================
>>> /usr/x86_64-pc-linux-gnu/gcc-bin/4.4.3/g++ -> x86_64-pc-linux-gnu-g++
>>> /usr/x86_64-pc-linux-gnu/gcc-bin/4.4.3/gcc -> x86_64-pc-linux-gnu-gcc
>>> /usr/x86_64-pc-linux-gnu/gcc-bin/4.4.3/gfortran -> 
>>> x86_64-pc-linux-gnu-gfortran
 * Switching native-compiler to x86_64-pc-linux-gnu-4.4.3 ...             [ ok ]

 * If you have issues with packages unable to locate libstdc++.la,
 * then try running 'fix_libtool_files.sh' on the old gcc versions.

>>> Regenerating /etc/ld.so.cache...
rm: cannot remove
`/var/tmp/portage/sys-devel/gcc-4.4.3-r2/work/gcc-4.4.3/libjava/classpath/resource/gnu/java/locale':
Directory not empty
=======================================================

To save me from losing it, can you please tell me if your
/var/tmp/portage has such a stale file in there following your emerge
of gcc-4.4.3-r2 ?  Surely I can't blame the fs this time?

-- 
Regards,
Mick

Reply via email to