También recibí este error en el pasado por una razón diferente que el -rinterruptor no puede solucionar. Lo que sucedió es que basé los archivos para agregar al zip con el siguiente código / variable bash
somevar=`ls -1 somedir`
El problema es que lssólo se enumeran los archivos fuera como si fuera en el directorio actual y por eso zipse queja (esencialmente los archivos no existen para los zip porque se dijo que mirara en el directorio equivocado / actual).
Si este es su problema se puede corregir de este modo:
somevar=`ls -1d somedir/*`
Como se puede ver he usado el -dinterruptor y también /*al final del nombre del directorio y luego se añadieron correctamente los archivos.
zip -P password /Volumes/Storage\ 4/archive -p /Volumes/GGZ/faster/mybigfolder/*