Ele atualiza os links /etc/alternativespara apontar para o programa para esse fim. Existem muitos exemplos, como x-www-browser, editoretc., que serão vinculados ao navegador ou editor de sua preferência. Alguns scripts ou ferramentas do sistema podem querer que você edite um arquivo manualmente (por exemplo, conflito de configuração dpkg) e eles pesquisam as alternativas para fornecer o editor de sua escolha. Para java, este é o ambiente de tempo de execução Java - Oracle, OpenJRE, etc.
Os links /etc/alternativessão apenas links simbólicos. Você pode vê-los usando, por exemplo
ls -l /etc/alternatives
Além disso, os /usr/binbinários regulares também são links simbólicos. Por exemplo:
ls -l /usr/bin/java
lrwxrwxrwx 1 root root 22 Aug 14 10:33 /usr/bin/java -> /etc/alternatives/java
ls -l /etc/alternatives/java
lrwxrwxrwx 1 root root 46 Aug 14 10:33 /etc/alternatives/java -> /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java
Portanto, não PATHprecisa ser modificado. Apenas usa links simbólicos.
sudo update-alternatives --config javaejavacejavawsescolher entre versões instaladas.