Se o seu PS1 é semelhante a:
export PS1='[\u@\h \W]\$'
O valor de \ h é definido apenas na inicialização do bash. Portanto, se você alterar o nome do host, precisará iniciar uma nova instância do bash:
exec bash
Substituirá o bash por uma nova instância (com o valor de \ h atualizado). Infelizmente, ele sairá de um script em execução. Alguma outra mágica é necessária para fazer a mudança para um script de shell que segue o código de execução após a alteração do nome do host. Acredito que não é possível manter o mesmo script sendo executado com um nome de host atualizado e \h
. Mas também acredito que não é isso que você está pedindo.