Current-Users archive

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

Re: Filesystem corruption in current 9.99.92 (posix1eacl & log enabled FFSv2)



Hi Chuck,

On 23.12.21 18:12, Chuck Silvers wrote:
a "cylinder group" is a metadata structure in FFS that describes the
allocation state of a portion of the blocks and inodes of the file system
and contains the inode records themselves.  the header for this structure
also contains a "magic number" field that is supposed to contain a certain
constant value as a way to sanity-check that this metadata on disk was not
overwritten with some completely unrelated contents.

in your case, since the magic number field does not actually contain the value
that it's supposed to contain, we know that the storage underneath the
file system has gotten corrupted somehow.  you'll want to track down
how that happened, but that is separate from your immediate problem.

this sounds like a bug I have seen before, where the extended attribute block
for a file has been corrupted.  please try the attached patch and see if
this prevents the infinite loop.

if that does prevent the infinite loop, then the file will probably appear
not to have an ACL anymore, and I'm not sure what will happen if you try
to set a new ACL on the file when it is in this state.  for right now,
the safest thing you can do will be to make a copy of the file without
trying to preserve extended attributes (ie. do not use cp's "-p" option),
then delete the original file, then move the copy of the file to have
the original file's name, then you can change the new file's
owner/group/mode/ACL to be what the original file had.

thanks for the good explanation which helped me a lot, and the tip how to break the infinite loop. I will definitely try that. In the meantime I have mounted the filesystem without the posix1eacls option. In this mode the "find /export" command runs cleanly. So your tip regarding the ACLs / extended attributes seems completely right. Currently I transfer the data from there to another filesystem to compare it from there against the most recent backup. Unfortunately this also means that I don't know at the moment if I will get back the state I had before after a new mount with the posix1eacls option. I hope so though, because I would like to find out more about this.

I'll get back to you as soon as I'm ready.

Thanks again
Matthias


Home | Main Index | Thread Index | Old Index