Olá, eu sou Erik, sou “novo” no linux, pois raramente uso o linux por muito tempo. Visto que programação em python parece ser mais fluida no linux e menos problemática, estou tentando manter um DualBoot (Windows 10 e Linux Mint 21.3)
Recentemente instalei o ubuntu 21.03 ou 21.04 mas o sistema quebrou quando fui instalar a nova versão do python 3.11, sendo a versão que veio de fabrica era a 3.10.
Também alterei para que ao chamar no terminal python o 3.11 seria a versão que ele puxava e ao chamar python3 vinha a versão 3.10
Ao reiniciar depois de atualizar com apt-get update o sistema mostrava uma tela branca, com algo escrito que não lembro mais acho que é algo parecido com essa abaixo
Uma segunda pergunta: Tendo como ponto não quebrar o sistema, como coloco o python mais recente ou um de minha escolha como “default” quando for criar ambientes virtuais? Eu uso o virtualenv (venv)
Atualiza o Ubuntu para o 23.10 que vai atualizar o python. O Ubuntu 24.04 que vai ter o python 3.11 vai sair em abril, ou seja se quiser pode aguardar para att para o 24.04.
A maioria das distribuições Linux usam Python em várias partes críticas do sistema e mexer nisso pode ser catastrófico, como você bem percebeu. Se você usa Python para programar, sugiro que use ferramentas como o ASDF para ter múltiplas versões de uma mesma linguagem sem afetar a base do seu sistema.
Sai novas versões do Ubuntu a cada 6 meses. Com os pacotes mais atuais. @Erik_MD Não precisa formatar não, é só usar o programa de atualização do sistema que vem com a distro Ubuntu ou se não vim é so instalar o tutorial a seguir diz que esse programa é o sudo apt-get install update-manager-core: Como atualizar seu sistema operacional Ubuntu para a versão mais recente | Dell Brasil
Tudo bem sim! @eddiecsilva obrigado pela resposta.
Consegui entender algumas coisas como a instalação básica, outras nem tanto.
Também vi que o asdf tem um programa de ambiente virtual próprio, Direnv ?
@eddiecsilva Obrigado pela sugestão, acabou dando muito mais trabalho do era pra dar, fiquei umas 10 horas tentando corrigir um erro do ASDF, aparentemente muitas pessoas tem ele.
Para corrigir eu dei permissão à pasta do asdf usando este comando:
sudo chown -R $(whoami) $HOME/.asdf/
pelo o que eu entendi $(whoami) é o nome do usuário, $Home é o caminho da home, o resto eu não saquei não
Olá, Erik! Bem-vindo de volta ao mundo do Linux. Pelo que você descreveu, parece que houve um problema durante a atualização ou configuração da versão do Python, o que pode ter causado um conflito no sistema. No Linux, o Python é frequentemente uma parte crítica do sistema operacional, com muitos componentes do sistema e software de terceiros dependendo dele. Alterar a versão padrão do Python pode levar a problemas de dependência e, em casos raros, a problemas no sistema, como você experimentou.
Aqui estão algumas etapas que você pode seguir para evitar esse tipo de problema no futuro e algumas sugestões para resolver o problema atual:
Evitando Problemas com Versões do Python
Use Ambientes Virtuais: Para desenvolvimento em Python, é altamente recomendável usar ambientes virtuais. Isso permite instalar diferentes versões do Python, bem como diferentes pacotes, em ambientes isolados, sem afetar a versão do Python do sistema. Você pode usar venv (incluído por padrão no Python 3.3 e posteriores) ou virtualenv.
Instale Novas Versões do Python Paralelamente: Ao invés de substituir a versão do Python do sistema, você pode instalar uma nova versão paralelamente e alternar entre elas conforme necessário. Ferramentas como pyenv são excelentes para gerenciar múltiplas versões do Python no mesmo sistema.
Resolvendo o Problema Atual
Se o seu sistema não está iniciando corretamente, aqui estão algumas opções que você pode tentar:
Recuperar através do Modo de Recuperação: Tente acessar o modo de recuperação do Ubuntu para ver se você consegue logar em um terminal. A partir daí, você pode tentar desfazer as mudanças que fez ou reinstalar o Python 3.10 como a versão padrão.
Reinstalação do Python: Se você conseguir acessar o terminal pelo modo de recuperação, tente reinstalar a versão original do Python que veio com o sistema. Você pode usar sudo apt-get install --reinstall python3.10 para reinstalar o Python 3.10.
Live CD/USB e Chroot: Se o modo de recuperação não funcionar, você pode usar um Live CD/USB do Ubuntu para iniciar. Uma vez iniciado a partir do Live CD/USB, você pode montar o sistema de arquivos do seu sistema quebrado e usar chroot para efetuar como se estivesse no sistema quebrado. A partir daí, você pode tentar reparar o sistema, reinstalando o Python ou desfazendo as mudanças.
Backup de Dados: Se tudo mais falhar, você pode usar o Live CD/USB para fazer backup de seus dados importantes antes de tentar uma reinstalação do sistema.
Lembre-se, manipular a versão do Python do sistema pode ser arriscado em distribuições Linux que dependem do Python para aplicações do sistema. Sempre considere usar ambientes virtuais ou pyenv para desenvolvimento em Python para evitar esses problemas.
Uai meu, porque não atualizar para o Ubuntu 23.10 e dps quando lançado para o 24.04 para ter a ultima versão do Python. Atualização de sistema não tem nada de mais.
Tipo, backup agente sempre tem então é só atualizar.
Olá @Erik_MD, o pessoal já deu dicas muito boas aqui. Gostaria apenas de acrescentar que você também pode optar por usar um sistema rolling release para ter as versões mais recentes das linguagens de programação.
Exemplos são o Arch Linux, Manjaro e openSUSE Tumbleweed. Eu particularmente tenho usado por um bom tempo o Tumbleweed e recomendo por ser bastante estável, e vir com o suporte a snapshots Btrfs já configurado, com a ferramenta Snapper. Assim, se algo der errado no sistema, é fácil reverter a um estado anterior, dando boot em um snapshot a partir do GRUB.
Ah sim. Exatamente, o Ubuntu, por exemplo, a cada dois anos lança uma versão LTS que recebe suporte por 5 anos, se não me engano.
Diferente das rolling release, essas versões não atualizam as versões da maior parte dos softwares que vêm no sistema operacional, incluindo as linguagens de programação, pois o foco principal desses sistemas é a estabilidade e não as novidades, por isso são mais recomendados para uso em ambientes corporativos e servidores, por exemplo. As atualizações que ocorrem geralmente são de segurança.
O Fedora não é rolling release, embora também não seja LTS, mas ele tem lançamentos fixos (Fedora 38, Fedora 39…), e para obter as últimas novidades você tem que fazer um upgrade para a versão mais recente do sistema operacional.
Eu adoro o Biglinux, mas para questões didáticas escolhi uma distro Debian para me familiarizar com os comandos para assim migrar para uma baseada em Arch