On 2016/02/09, 21:16, "lustre-discuss on behalf of
[email protected]<mailto:[email protected]>"
<[email protected]<mailto:[email protected]>
on behalf of [email protected]<mailto:[email protected]>>
wrote:
I read on Lustre best practices that ls –U should be used instead of ls –l . I
understand that ls –l makes MDS contact all OSS to get all information about
all files and hence loads it. But, what does ls –U do to avoid it?
-U do not sort; list entries in directory order
This is more important for very large directories, since "ls" will read all of
the entries and stat them before printing anything. That said, GNU ls will
still read all of the entries before printing them, so for very large
directories "find <directory> -ls" is a lot faster to start printing entries.
Also, it is said that rm-rf * should not be used. Please can someone explain
the reason for that.
It is also said that instead lfs find <directory path> --type f -print0 |
xargs -0 rm –f should be used. Please explain the reason for this also.
"rm -rf *" will expand "*" onto the command line (done by bash) and if there
are too many files in the directory (more than about 8MB IIRC) then bash will
fail to execute the command. Running "lfs find" (or just plain "find") will
only print the filenames onto the output and xargs will process them in chunks
that fit onto a command-line.
Cheers, Andreas
--
Andreas Dilger
Lustre Principal Architect
Intel High Performance Data Division
_______________________________________________
lustre-discuss mailing list
[email protected]
http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org