Como outros já disseram nos comentários, o RHEL 7 e seus derivados dependem do Python 2 em um nível muito profundo. Você simplesmente não pode substituir com segurança o Python 2 por 3.
Mesmo que esse não fosse o caso, sua pergunta é baseada em uma premissa incorreta, sendo que substituir o Python 2 pelo Python 3 é uma boa ideia. Você sempre deve chamar o Python 3 como python3
, pois isso o isola desse problema. Scripts que assumem que o Python 2 irá chamá-lo como python
em linhas shebang e tal, então existe Na verdade, não há conflito entre os dois se os pacotes binários do Python forem construídos corretamente.
Esse "se" pode te morder: alguns empacotadores criaram pacotes do Python 3 com /usr/bin/python
ou similar, o que cria um conflito. Esses pacotes estão ignorando o conselho padrão, que permite que ambos sejam instalados em paralelo.
Para obter um pacote do Python 3 para o RHEL 7, é bem abordado em outra resposta Estouro de pilha .