Você está no caminho certo, pois o seu script faz exatamente o que você quer.
Pode ser simplificado e melhorado um pouco como:
#!/bin/bash
mv $1 /media/storage/linked/ &&
ln -s /media/storage/linked/$1 .
O set -e
não tem impacto, pois seus comandos já estão condicionais com o &&
.
Eu também substituí o cp
e rm
para mv
, que manipula os dois automaticamente, seja na mesma partição ou não.