EDIT: a solução abaixo não funciona. É evidente que o link simbólico está quebrado, porque file -L
não pode abrir o link simbólico / usr / bin / bla. Nesse caso, faça o seguinte:
sudo ln -sf /opt/bladir/bla /usr/bin/bla
usando caminhos completos (-f é para forçar a sobrescrita do link simbólico anterior, se houver um).
Eu acho que o programa "bla" pode estar procurando coisas que estão instaladas em / opt / bladir e não podem encontrá-las. Por exemplo, pode ser um wrapper de script de shell em torno de um executável Java, com caminho relativo ao diretório atual: mas seu diretório atual é / usr / bin / e não / opt / bladir /.
Se o seguinte funciona
file -L /usr/bin/bla
... então definitivamente não é um problema com o seu link simbólico.
Verifique se "bla" é um script de shell que você pode modificar, dê uma olhada no interior - talvez você encontre o problema. Possivelmente, adicionar / opt / bladir ao seu PATH seria uma solução melhor.