Sinto muito, enquanto a idéia é boa (use espaço em / srv em vez de em / var), a solução sugerida é extremamente errada.
mount --bind
torna um diretório disponível como alternativa em um novo local. É efetivamente um link rígido para um diretório (que também não precisa ficar no mesmo sistema de arquivos, como os hard links têm que fazer). Você ainda não obtém mais espaço em / var / cache ou / srv / tmp_var_cache com isso, pois eles são a mesma coisa depois da montagem --bind.
O que você quer é usar / srv / tmp_var_cache ao invés de / var / cache. E você só precisa fazer isso para o gerenciamento de pacotes, isto é, / var / cache / zypp, não para o conjunto de / var / cache, e você pode simplesmente usar um link simbólico, não um mount --bind. Portanto, a solução é assim:
# move content (will take a while)
mv /var/cache/zypp /srv/tmp_var_cache_zypp
# Create pointer
ln -s /srv/tmp_var_cache_zypp /var/cache/zypp
Se você quiser usar o mount -bind, o que você precisa é
# move content (as above)
# create mount point
mkdir /var/cache/zypp
# mirror directory
mount --bind /srv/tmp_var_cache_zypp /var/cache/zypp
Você precisa executar a montagem --bind após cada reinicialização e antes do início da verificação automática de atualizações, ou haverá sinos do inferno. Eu tentaria o symlink primeiro ...
É claro que a outra coisa é apenas mudar o local do cache de pacotes em /etc/zypp/zypp.conf ...