Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I need to search for files that has no user OR no group.

find / -nouser -o -nogroup

I think this is OK. But, I don't want to search NFS shares. How can I exclude the NFS shares in the find command?

share|improve this question
2  
Try find / -fstype ext4 -nouser -o -nogroup Substitute ext3, etc. if you're not using ext4 –  Doug O'Neal Feb 6 '13 at 15:18
    
please post this as answer –  gasko peter Feb 6 '13 at 15:40
    
@DougO'Neal you should post that as an answer. –  Tim Kennedy Feb 6 '13 at 15:55
    
@DougO'Neal, that wouldn't stop find from descending into nfs FS, just not to print the files it would find there. –  Stéphane Chazelas Feb 6 '13 at 22:58

2 Answers 2

up vote 1 down vote accepted

With GNU find, you can use the -fstype predicate:

find / -fstype nfs -prune -o \( -nouser -o -nogroup \) -print

Having said that, hymie's approach probably makes more sense: white-list what FS you want to search rather than black-listing those that you don't want to search.

If you want to only include jfs2 file systems (assuming / is on jfs2), then, you need to write it:

find / ! -fstype jfs2 -prune -o \( -nouser -o -nogroup \) -print

Don't write it:

find / -fstype jfs2 \( -nouser -o -nogroup \) -print

As that while that would stop find from printing files in non-jfs2 filesystem, that would not stop it from crawling those non-jfs2 filesystems (which you need -prune for).

Note that -a (AND which is implicit if omitted) has precedence over -o (OR), so you need to watch whether parenthesis are needed or not.

The above correct command is short for:

find / \( \( ! -fstype jfs2 \) -a -prune \) -o \
  \( \( -nouser -o -nogroup \) -a -print \)
share|improve this answer

The closest you will probably get is to use -xdev , which means "Don't descend directories on other filesystems." Then you'll need to specify which filesystems you do want to search.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.