Você deve conseguir fazer isso usando o comando find . A opção -type permite restringir os tipos de arquivos que você encontra, portanto, você pode ignorar links simbólicos, etc., e a opção -exec permite que você execute um comando para cada um dos arquivos encontrados.
Primeiro, crie todos os diretórios no pendrive:
cd /var/mydir
find * -type d -exec mkdir /media/usbdrive/{} \;
Copie todos os arquivos simples:
cd /var/mydir
find . -type f -exec cp {} /media/usbdrive/{} \;