Se o shell não puder encontrar nada para expandir * , ele não será alterado. Portanto, se não houver arquivos ou diretórios em mydir (exceto arquivos / diretórios ocultos / de ponto), mydir/* será passado como é para cp . E cp não pode encontrar nenhum arquivo chamado mydir/* , como o erro diz.
Por exemplo:
$ ls /srv -l
total 0
$ ls /srv/*
ls: cannot access /srv/*: No such file or directory
A menos que você esteja tentando excluir arquivos e pastas ocultos, basta fazer isso:
cp -r mydir ../