Traduções: English - Italiano - Français - Español - Català - Português (Brasil)


Não quebre o Debian

Sugestões para novos(as) usuários(as) do Debian sobre como não quebrar seus sistemas Debian

Caneca quebrada do Debian

O Debian é um sistema robusto e confiável, entretanto usuários(as) com acesso a root podem fazer quaisquer alterações que desejarem. Como tal, é muito fácil que novos(as) usuários(as) quebrem seus sistemas ao não fazerem as coisas da "maneira Debian". Esta página lista erros comuns cometidos por novos(as) usuários(as). Algumas das coisas listadas aqui podem ser feitas de modo seguro, mas somente se você tiver experiência suficiente para saber como consertar seu sistema quando as coisas derem errado.

O mote genérico para as sugestões aqui é que consequências não serão sempre imediatas e podem tornar impossíveis futuras atualizações sem uma completa reinstalação. Se uma atualização sem uma completa reinstalação é importante para você, tenha cuidado em não cometer os erros descritos abaixo.

Uma das principais vantagens do Debian é seu repositório central com muitos milhares de pacotes de software. Se você está chegando no Debian vindo(a) de outro sistema operacional, você pode estar acostumado(a) com a instalação de software que você encontra em sites web aleatórios. No Debian, a instalação de software de sites web aleatórios é um hábito ruim. É sempre melhor utilizar o software de repositórios oficiais do Debian sempre que possível. Os pacotes no repositório do Debian são conhecidos pelo bom funcionamento e pela instalação apropriada. Somente usar software de repositórios do Debian é também muito mais seguro do que instalar de sites web aleatórios que podem acumular malware e outros riscos de segurança.

Não crie um FrankenDebian

O Debian estável (stable) não deve ser combinado com outras versões sem o devido cuidado. Se você está tentando instalar software que não está disponível na versão estável atual do Debian, não é uma boa ideia adicionar repositórios de outras versões do Debian.

Antes de tudo, o comportamento padrão do apt-get upgrade é atualizar qualquer pacote instalado para a mais nova versão disponível. Se, por exemplo, você configura o repositório bookworm em um sistema bullseye, o APT tentará atualizar quase todos os pacotes para bookworm.

Isto pode ser mitigado ao se configurar o apt pinning para dar prioridade para pacotes da bullseye.

Contudo, mesmo instalando poucos pacotes de uma "futura" versão pode ser arriscado. Os problemas podem não acontecer imediatamente, mas na próxima vez em que você instalar as atualizações.

O motivo porque as coisas podem quebrar é que o software empacotado para uma versão do Debian é construído para ser compatível com o resto do software daquela versão. Por exemplo, instalar pacotes da bookworm em um sistema bullseye também poderia instalar versões mais novas de bibliotecas centrais, incluindo libc6. Isto resulta em um sistema que não é teste (testing) ou estável (stable), mas uma mistura quebrada dos dois.

Os repositórios que podem criar um FrankenDebian se usados com o Debian estável (stable):

Alguns outros repositórios podem parecer seguros para usar já que eles somente contêm pacotes que não têm equivalente no Debian. Entretanto, não há garantias de que qualquer repositório não adicionará mais pacotes no futuro, resultando em quebra.

Finalmente, os pacotes nas versões oficiais do Debian passaram por testes exaustivos, frequentemente por meses, e somente pacotes adequados são permitidos em um lançamento. Por outro lado, os pacotes de fontes externas podem alterar arquivos pertencentes a outros pacotes, podem configurar o sistema de maneiras não esperadas, podem introduzir vulnerabilidades, causar problemas de licenciamento.

Uma vez que pacotes de fontes não oficiais são introduzidos em um sistema, pode ser difícil delimitar a causa da quebra, especialmente se ela acontece meses depois.

Não use scripts de instalação de fabricantes de GPU

O Debian inclui drivers livres e de código aberto que suportam a maioria das placas de vídeo. Os drivers livres fornecem a melhor integração com o resto do sistema Debian e funcionam muito bem para a maioria dos(as) usuários(as).

Se você absolutamente precisa ter drivers proprietários e de código fechado, não faça o download direto do site web do fabricante! Instalar drivers dessa forma somente funciona para o kernel atual, e após a próxima atualização do kernel seus drivers de vídeo não funcionarão até que eles sejam manualmente reinstalados.

Felizmente existe uma maneira Debian de instalar drivers de placa de vídeo usando os pacotes do repositório. Instalar os drivers da maneira Debian garantirá que os drivers continuem a funcionar após a atualização do kernel.

Não sofra da síndrome das coisas novas e brilhantes

A razão pela qual o Debian estável (stable) é tão confiável é porque o software é exaustivamente testado e têm seus bugs corrigidos antes de ser incluído. Isto significa que a versão mais recente do software frequentemente não está disponível nos repositórios estáveis (stable). Mas isso não significa que o software é muito antigo para ser útil!

Antes de tentar instalar a versão mais nova de algum software de algum lugar outro que não o repositório do Debian estável (stable), aqui estão algumas coisas para ter em mente:

Por favor, note que os bugs são encontrados em softwares existentes e que somente novas versões de um software podem introduzir novos bugs e vulnerabilidades.

Quando um lançamento entra no Debian e recebe correções contra bugs, o número de vulnerabilidades conhecidas e bugs constantemente diminuirá durante o ciclo de vida do pacote.

'make install' pode criar conflitos com pacotes

É muito fácil compilar software do código-fonte de arquivos tarball baixados de sites web de software, mas não é tão fácil removê-los posteriormente. Frequentemente as instruções que vêm com o código-fonte incluem procedimentos para usar comandos como ./configure && make && make install.

Quando você instala softwares dessa forma, você não será capaz de removê-los com apt-get ou Synaptic. O sistema de empacotamento APT só pode remover software que foi instalado pelo sistema de empacotamento APT. Pior até, o software instalado deste modo às vezes conflita com o software empacotado para o Debian.

O software instalado dessa forma também não se beneficia de atualizações de segurança da mesma maneira que os pacotes do Debian. Se você quer manter seu sistema atualizado sem ter que manualmente compilar e reinstalar a cada atualização, fique com os pacotes do Debian.

O script make install pode fazer suposições inválidas sobre onde o binário compilado e seus arquivos associados devem existir no sistema de arquivos e sobre qual conjunto de permissões / propriedade eles devem ser executados. O software instalado deste modo também pode substituir importantes softwares vitais ao sistema e à manutenção de pacotes, tornando difícil reparar seu sistema usando as ferramentas padrão do Debian.

Não siga maus conselhos às cegas

Infelizmente existe muito conselho ruim na Internet. Tutoriais encontrados em blogs, fóruns e outros sites frequentemente incluem instruções que quebrarão seu sistema de formas sutis. Não siga a primeira sugestão que você encontrar ou o tutorial que ache ser o mais fácil. Gaste algum tempo lendo a documentação e compare as diferenças entre os tutoriais.

É melhor gastar seu tempo descobrindo a maneira correta de fazer algo do que gastar até mais tempo consertando um sistema quebrado depois. Você não permitiria que uma pessoa estranha alimentasse seu bebê; não execute comandos sem primeiro entender o que fazem.

Blogs e postagens em fóruns não expiram. Instruções que podem ter sido seguras uns anos atrás podem não ser mais seguras agora. Quando em dúvida, continue pesquisando e leia a documentação da sua versão.

Leia os fantásticos manuais

Frequentemente, ler um tutorial é o suficiente para obter uma ideia geral de como instalar ou usar um aplicativo. Quase todo o software empacotado para o Debian tem ao menos alguma documentação disponível. Alguns lugares para olhar:

Não remova software às cegas

Algumas vezes quando você remove um pacote, o gerenciador de pacotes precisa remover outros pacotes também. Isto ocorre porque esses outros pacotes dependem do pacote que você está tentando remover.

Se isto acontecer, o gerenciador de pacotes mostrará a você uma lista de tudo o que será removido e pedirá a sua confirmação. Certifique-se de ler essa lista cuidadosamente! Se você não sabe o que faz alguns desses pacotes que serão removidos, leia as descrições de cada um. Quando em dúvida, pesquise mais. Algumas fontes que podem ajudar em sua pesquisa sobre os pacotes:

Leia as descrições dos pacotes antes de instalar

Recomenda-se ler as descrições dos pacotes antes de instalá-los. Algumas vezes o software terá diferentes pacotes disponíveis no repositório do Debian, com cada pacote configurado de forma diferente. Leia a descrição do pacote e procure por nomes de pacote similares para certificar-se de que é o que você quer.

Este ponto pode ser especialmente importante para pacotes que instalam módulos de kernel.

Faça anotações

É fácil esquecer das etapas pelas quais você passou para fazer alguma coisa no seu computador, especialmente muitos meses depois quando você está tentando atualizar. Às vezes, quando você tenta diversas maneiras de resolução de um problema, é fácil esquecer quais métodos foram bem sucedidos.

É uma ideia muito boa fazer anotações sobre o software que você instalou e sobre as alterações nas configurações que você fez. Ao editar os arquivos de configuração, é também uma boa ideia incluir comentários no arquivo explicando as razões para as alterações e a data que elas foram feitas.

Alguns modos mais seguros de instalar softwares que não estão disponíveis no Debian estável (stable)

Algumas vezes surge a necessidade de instalar software que não está empacotado para o Debian, ou uma versão mais nova do que aquela que está empacotada para a versão estável (stable). A seguir estão algumas maneiras de reduzir os riscos que mencionamos acima.

Pacotes backport

Versões mais novas de pacotes geralmente podem ser encontradas no repositório Debian Backports. Esses pacotes não são testados tão exaustivamente quanto os pacotes incluídos em uma versão estável (stable) do Debian e devem ser instalados com moderação.

Usuários(as) mais experientes podem fazer seus próprios backports dos mais recentes softwares do Debian. Fazer o backport você mesmo(a) é geralmente mais seguro do que outras abordagens. Quando seu próprio backport falha, isto indica que instalar o software manualmente (com make install ou com um script instalador, por exemplo) poderia comprometer seu sistema Debian.

Construindo a partir do código-fonte

Se você está construindo software a partir da fonte obtida em outro lugar que não o Debian, é uma boa ideia construí-lo e executá-lo como um(a) usuário(a) normal, dentro de um diretório pessoal de usuário(a). Se você mantém dados sensíveis, valiosos ou insubstituíveis em seu diretório pessoal, pode ser uma boa ideia criar outra conta de usuário(a) para este propósito.

O automake e outros sistemas de construção podem instalar software que se autoconstroem em localizações não padronizadas. É uma má ideia ser root ou usar "sudo" para instalar software que se autoconstrói em /usr/bin ou outras localizações padrão onde pacotes regulares instalam seus arquivos. É quase sempre possível, ao contrário, instalar em seu diretório pessoal (usando ./configure --prefix=~/.local ou similar). Se você entende sobre edição de Makefiles, então você pode alterar o makefile de modo que processe make install de maneira útil ao seu sistema, ou adicione uma opção prefix=~/.local.

Se quiser disponibilizar o software para todo(a)s os(as) usuários(as), não permite que ele autoinstale para a hierarquia de diretório /usr, já que somente pacotes Debian são orientados a criar arquivos ali. Instalar o software em /usr/local o tornará disponível para todos(as) os(as) usuários(as) e não interferirá com o gerenciador de pacotes. O pacote stow pode ser útil para gerenciar software instalado em /usr/local.

Modos menos seguros de instalar softwares que não estão disponíveis no Debian estável (stable)

Por favor, note: os pacotes nas versões oficiais do Debian passaram por testes exaustivos, frequentemente por meses, e somente pacotes adequados são permitidos em um lançamento. Por outro lado, os pacotes de fontes externas podem introduzir problemas de segurança, confiabilidade e questões legais. O Debian não aprova o uso de software de fontes externas.

Usando chroot, contêineres e máquinas virtuais

Uma outra estratégia para utilizar software não disponível no Debian estável (stable) é executar o software em um sistema Debian virtual contido em um diretório ou em um arquivo de imagem. Isto permite que o software seja instalado em um sistema Debian virtual sem efeitos no sistema Debian primário ou hospedeiro que está rodando em seu computador.

O Debian inclui uma variedade de ferramentas que fornecem variados graus de isolamento do sistema operacional hospedeiro. Algumas incluem:

Flatpak

Algumas aplicações e jogos também estão disponíveis no novo formato de pacote Flatpak (em inglês). Aplicativos flatpack também podem ser executados em um ambiente seguro de testes (sandbox). Um pacote flatpak está disponível para o Debian desde o stretch. O gnome-software pode atualizar e instalar apps Flatpak com o pacote gnome-software-plugin-flatpak instalado. Para mais informações, veja a página wiki FlatpakHowto (em inglês).

Snap

Uma outra alternativa é o sistema Snappy (em inglês) desenvolvido pela Canonical, a companhia que fornece o suporte ao Ubuntu. Snaps são essencialmente similares a Flatpaks, mas atualmente (26-10-2018) o repositório central snapcraft tem mais aplicativos empacotados do que o Flathub.

Nota importante: muitos(as) usuários(as) são receosos(as) quanto aos Snaps. Use por sua própria conta. Eles atualizam segundo uma programação própria e instalam arquivos em localizações não padronizadas. Pode não ser prudente usar Snaps sem antes entender sua reputação e limites.

Obtendo o máximo retorno do suporte da comunidade

Quando procurar por ajuda, é importante lembrar-se de que o Debian é um projeto voluntário e que as pessoas estarão mais propensas a ajudar se você for educado e disposto(a) a se esforçar um pouco. Aqui estão algumas diretrizes gerais que podem ajudar a conseguir suporte:

Veja também


CategoryPackageManagement CategorySystemAdministration