Re: Bug#13330: rm won't remove some files

Brian White (bcwhite@verisim.com)
Wed, 01 Oct 1997 09:30:15 -0400


> > dragon:/tmp/wcsmbs# ls -l
> > total 3982528256
> > c--xrw-r-- 1 14464 35136 141, 0 Jun 17 1902 wcpcpy.o
> > b--sr-srwt 1 14951 14964 101, 100 Apr 10 2030 wcscat.d
> > br-xrws-w- 1 29791 29791 105, 116 Aug 19 2022 wcscat.o
> > br-sr-xr-T 1 29791 24420 116, 101 May 10 05:05 wcschr.d
> > br-xrw--w- 1 25710 13619 53, 51 May 5 2024 wcscmp.o
> > c--Srws--- 1 15160 59 49, 114 May 7 1999 wcsdup.d
> > dragon:/tmp/wcsmbs# rm -f *
> > rm: wcpcpy.o: Operation not permitted
> > rm: wcscat.d: Operation not permitted
> > rm: wcscat.o: Operation not permitted
> > rm: wcschr.d: Operation not permitted
> > rm: wcscmp.o: Operation not permitted
> > rm: wcsdup.d: Operation not permitted
>
> Assuming this is an ext2 filesystem, if root tries to unlink a
> file, Linux returns EPERM (Operation not permitted) only in the
> following cases:
> 1. The directory in which these files are is append-only.
> 2. The directory in which these files are is immutable.
>
> So, try to do `lsattr' and `chattr' on the *directory* where
> these files are.

I still can't delete the files:

dragon:/var/tmp/badfiles# ls -l wcsmbs
total 3982528256
c--xrw-r-- 1 14464 35136 141, 0 Jun 17 1902 wcpcpy.o
b--sr-srwt 1 14951 14964 101, 100 Apr 10 2030 wcscat.d
br-xrws-w- 1 29791 29791 105, 116 Aug 19 2022 wcscat.o
br-sr-xr-T 1 29791 24420 116, 101 May 10 05:05 wcschr.d
br-xrw--w- 1 25710 13619 53, 51 May 5 2024 wcscmp.o
c--Srws--- 1 15160 59 49, 114 May 7 1999 wcsdup.d

dragon:/var/tmp/badfiles# lsattr wcsmbs
lsattr 1.10, 24-Apr-97 for EXT2 FS 0.5b, 95/08/09
lsattr: No such device While reading flags on wcsmbs/wcscat.o
lsattr: No such device While reading flags on wcsmbs/wcsdup.d
lsattr: No such device While reading flags on wcsmbs/wcschr.d
lsattr: No such device While reading flags on wcsmbs/wcscat.d
lsattr: No such device While reading flags on wcsmbs/wcscmp.o
lsattr: No such device While reading flags on wcsmbs/wcpcpy.o

dragon:/var/tmp/badfiles# lsattr -d wcsmbs
lsattr 1.10, 24-Apr-97 for EXT2 FS 0.5b, 95/08/09
------- wcsmbs

dragon:/var/tmp/badfiles# chattr -i wcsmbs
chattr 1.10, 24-Apr-97 for EXT2 FS 0.5b, 95/08/09

dragon:/var/tmp/badfiles# rm -f wcsmbs/*
rm: wcsmbs/wcpcpy.o: Operation not permitted
rm: wcsmbs/wcscat.d: Operation not permitted
rm: wcsmbs/wcscat.o: Operation not permitted
rm: wcsmbs/wcschr.d: Operation not permitted
rm: wcsmbs/wcscmp.o: Operation not permitted
rm: wcsmbs/wcsdup.d: Operation not permitted

dragon:/var/tmp/badfiles# rm -d wcsmbs
rm: wcsmbs: Operation not permitted

> But anyway, that directory has obviously erroneous
> entries, I would try `e2fsck -f'.

Check passes with a clean bill of health.

Brian
( bcwhite@verisim.com )

-------------------------------------------------------------------------------
Generated by Signify v1.02. For this and more, visit http://www.verisim.com/