Nếu cứ gặp thằng nào bụp thằng đó, nhỡ cứ bụp xong lại có thằng tạo ra, hay có thằng nào đó tương kế tựu kế làm cái symlink sang directory khác thì…toi. Nếu Đạt dùng strace Đạt sẽ thấy mỗi lân remove một file xong thì rm sẽ lại dùng syscall newfstatat.
Cả rsync và rm đều phải unlink tất cả các file trong thư mục, nhưng rsync không phải build directory tree như rm, nó chỉ việc dùng syscall và bắt kernel làm điều này.
Nếu Đạt để ý thì thấy cả rm và rsync đều remove files theo dạng Depth First Search, nếu có file A và C, directory B thì A sẽ bị remove trước, rồi B và tất cả các con của nó, rồi mới đến C.