Zypper: guia prático para gerenciar pacotes no openSUSE

Aprenda a instalar, atualizar e remover pacotes de software gerenciar pacotes no OpenSUSE com o Zypper, um poderoso gerenciador de pacotes.

10 curtidas

Legal ver matérias sobre o OpenSUSE, não se vê muito conteúdo dela por aqui (já que a distro é muito famosa na Europa). A sintaxe do Zypper é realmente simples de entender e quase intuitiva.
Essa semana decidi dar uma testada na distro, tem sido uma experiência bem bacana! Coisas como o Snapper com BTRFS são realmente uma mão na roda

4 curtidas

Estou usando o OpenSUSE Tumbleweed com kde e estou achando mais fácil que o Arch (distro que gosto muito), e vendo os comandos achei bem pratico, inclusive imprimi esses comandos para me familiarizar com essa distro que é muito show. Concordo com vc Kim_Eloah não se vê muito conteúdo sobre essa distro aqui no Brasil mas lá fora é uma distro muito usada. Não sei se será minha distro definitiva onde vou criar raízes, mas certamente é uma distro muito boa. O Yast é uma mão na roda assim como o Snapper. Agradeço ao Edson C da Silva que postou esses comandos. Obrigado.

3 curtidas

Aproveitando o papo, como que tá a velocidade de download no zypper? Um dos motivos deu ter deixado a distro de lado é/era a lerdeza que o zypper tinha aí baixar pacotes no updates, as vezes massivos, do TW

3 curtidas

Eu sempre tive este tipo de problema no passado, mas, parece que a SUSE conseguiu dar um jeito nisso.

Ao menos na minha conexão, a velocidade de download das atualizações está em pé de igualdade com o apt no Debian. E usando as dicas do artigo, dá para fazer ajustes finos conforme a conexão de cada usuário.

:vulcan_salute:

2 curtidas

No passado quando instalei o Opensuse também tive problemas com conexão era muito lento mas agora esta bem melhor não sei se é por eu ter uma conexão melhor agora mas parece que eles resolveram.

2 curtidas

Bom, hasta la vista Arco no desktop. Guten tag dier openSUSE :smiley:

1 curtida

Esse poste nada tem a ver com o artigo, mas só para informação mesmo, pois muita gente procura por esse problema, já que estão falando do openSUSE resolvi postar.

No openSUSE não se pode instalar Gnome Software, KDE Discover e outras que usam o packagekit. Se elas estiverem instaladas quando se atualiza o sistema com zypper dup, por exemplo, ele diz que o packagekit está ocupado e pergunta se quer que ele saia, você coloca yes e mesmo assim ele não sai.

Para instalar e remover programas tem que usar a loja de aplicativos do Yast.

Eu tava tendo esse problema no Tumbleweed, mas acho que foi porque eu instalei a gnome-software.

Na verdade o problema do zypper é com o packagekit usado nas lojas do Gnome, KDE Plasma… Os outros gerenciadores de pacotes trabalham bem com o packagekit, só o zypper é que tem problema com ele, por isso tem que usar a loja de aplicativos do Yast.

Quando se tem o packagekit instalado, quando vai atualizar o sistema com ‘zypper dup’, por exemplo, tem que matar o serviço do packagekit:

sudo killall packagekitd
ou
sudo pkill packagekitd

A solução é sempre remover o packagekit ou desabilitar.

sudo zypper remove packagekit

systemctl stop packagekit && systemctl disable packagekit

Eu não tenho o openSUSE instalado, mas a mensagem que ele apresenta é igual a da imagem abaixo:

Você instalou a Gnome Software manualmente? Na instalação que fiz, ela já veio instalada por padrão e não tive nenhum problema com o packagekit até o momento. Inclusive, para coisas simples eu nunca uso o YaST, vou direto na Gnome Software.

Importante deixar claro que estou usando o openSUSE Tumbleweed, não sei se este comportamento é diferente em outros projetos como o Leap.

:vulcan_salute:

Instalei o Telegram pelo Discover e também não tive problemas.

Interessante! Sim, eu instalei manualmente porque não veio instalada! Só se eles consertaram esse problema recentemente, pois se você procurar no Google com as palavras-chaves: opensuse packagekit zypper - verá muita gente pedindo ajuda sobre isso.

Se eles sanaram esse problema vai ser muito bom, assim terei mais uma opção de distro que usa o Gnome origianal.

É possível terem arrumado.

Eu fiz a instalação “mais brega” possível, próximo > próximo > Gnome > fim :smiley:
Usei todas as opções padrão e as poucas coisas que customizei estavam relacionados ao snapper e BTRFS.

:smiley:

1 curtida

Gostei dessas dicas:

O principal arquivo de configuração para controlar o funcionamento do ZYpp é o “/etc/zypp/zypp.conf

Por padrão, o ZYpp utiliza até 5 conexões simultâneas para efetuar o download de pacotes, dependendo da velocidade da sua internet, aumentar esse valor para 10 pode trazer ganhos visíveis no tempo de download.

download.max_concurrent_connections = 10

Eu já tinha lido alguma coisa sobre isso, mas foi só agora que aproveitei para examinar o arquivo de configuração.

Tenho a impressão de que a velocidade melhorou um pouco – mas dá para ver que ainda está muito longe do ideal.

Neste Domingo, por exemplo baixou 612.8 MiB em cerca de 2 minutos – a maior parte do tempo a menos de 10% da capacidade da conexão (daria uns 62 MiB/s) – exceto por 3 picos, abaixo de 45 MiB/s:

Para comparação, no Fedora, 380 MB em apenas 20 segundos – média de 19 MB/s:

(Tanto no Fedora quanto no openSUSE, eu não configurei para espelhos no Brasil. – Fica tudo por conta de redirecionamentos automáticos).

Na próxima, vou fazer o teste com a configuração para 10 conexões simultâneas.

O openSUSE costuma, sim, vir com o PackageKit + alguma coisa do Plasma-Discover – embora não “o Discover” completo, propriamente dito.

Em 2017, usei muito essa alternativa, de apenas clicar no ícone de atualizações, e ficar vendo a listagem dos pacotes passando na tela (mas sem opção de selecionar e copiar). – Só que, um dia, isso de um tilt qualquer, e só consegui recuperar o sistema, carregando um Snapshot anterior e fazendo rollback. – Desde então, passei a usar só o Zypper, em linha de comando. Depois, até removi o PackageKit e o resto.

Quando instalei no novo PC, em 2020, a primeira coisa que fiz foi remover o PackageKit – e bloquear para que nunca mais seja reinstalado:

2020-01-11 17:43:50 --- YaST2

Installation Successfully Finished

Removed Packages: 9
discover-backend-packagekit
PackageKit
PackageKit-backend-zypp
PackageKit-branding-openSUSE
PackageKit-gstreamer-plugin
PackageKit-gtk3-module
PackageKit-lang
plasma5-pk-updates
plasma5-pk-updates-lang

Details
Installation log


Installation Successfully Finished

Removed Packages: 1
libpackagekit-glib2-18


2020-01-11 18:06:11

# zypper dup --allow-vendor-change
Loading repository data...
Reading installed packages...
Warning: You are about to do a distribution upgrade with all enabled repositories. Make sure these repositories are compatible before you continue. See 'man zypper' for more information about this command.
Computing distribution upgrade...

The following 11 items are locked and will not be changed by any action:
 Available:
  discover-backend-packagekit libpackagekit-glib2-18 PackageKit PackageKit-backend-zypp
  PackageKit-branding-openSUSE PackageKit-branding-upstream PackageKit-devel PackageKit-gstreamer-plugin
  PackageKit-gtk3-module PackageKit-lang PackageKit-Qt-devel

Nothing to do.

Atualmente, estão bloqueados:

The following 43 items are locked and will not be changed by any action:
 Available:
  akonadi-calendar-tools akonadi-calendar-tools-lang akonadi-contact akonadi-contact-lang akonadi-import-wizard akonadi-import-wizard-lang akonadi-mime
  akonadi-plugin-calendar akonadi-plugin-contacts akonadi-plugin-mime akonadi-search akonadi-search-lang akonadi-server akonadi-server-lang
  discover-backend-packagekit pattern:games pattern:kde_pim kdepim-addons kdepim-addons-lang kdepim-runtime kdepim-runtime-lang kmail-account-wizard
  kmail-account-wizard-lang kmailtransport kmailtransport-lang ktnef libkdepim-lang libKF5PimCommonAkonadi5 libksieve libksieve-lang
  libpackagekit-glib2-18 mbox-importer mbox-importer-lang messagelib messagelib-lang PackageKit PackageKit-backend-zypp PackageKit-branding-openSUSE
  PackageKit-branding-upstream PackageKit-devel PackageKit-gstreamer-plugin PackageKit-gtk3-module PackageKit-lang
4 curtidas

Obrigado por compartilhar essa informação amigo frc_kde eu não sabia disso. Como dizem vivendo e aprendendo. Obrigado mais uma vez amigo.

3 curtidas

Quando eu usava o OpenSUSE, esse problema me irritava muito. O problema ocorre porque, ao iniciar a máquina, o PackageKit entra em ação (creio que para buscar atualizações) e assim bloqueia o libzypp (back-end utilizado pelo Zypper e pelo PackageKit) momentaneamente. Infelizmente, a libzypp sempre fica bloqueada quando há algum processo a utilizando. Para resolver isso, você pode trocar o pacote PackageKit-backend-zypp pelo pacote PackageKit-backend-dnf, mas eu não acho isso recomendável porque o dnf não foi feito se pensando no openSUSE. O que resta é esperar alguns minutos após iniciar a máquina para poder usar o Zypper, ou retirar o PackageKit.

1 curtida

A lerdeza que você constatou no Zypper provavelmente era, na verdade, um problema de espelhos. Essa distro é mais forte na Europa, então eu acredito que a infraestrutura deles não é das melhores por aqui. Já vi muitas pessoas reclamando dos espelhos do openSUSE, e quando eu usava essa distro eu tinha o mesmo problema.

1 curtida

O openSUSE é um mecanismo complexo, e de alta precisão, porém extremamente sólido e confiável – pois todas as partes desse complexo são bem “disciplinadas”… o que talvez não combine muito com nosso “modo de ser”, meio avesso a essa “disciplina alemã”.

Na verdade, existem bons espelhos (mirrors) do openSUSE no Brasil (Curitiba, São Paulo, São Carlos, Manaus), e já pude confirmar que eles nos proporcionam muito mais velocidade de download – tal como nas outras distros, onde a gente apenas escolhe o melhor espelho BR e vive feliz.

Fiz essa experiência, e obtive ótimas taxas de download — nos dias 4, 7, 10, 17, 21 e 25 de Setembro 2019 – porém no dia 28 o Zypper acusou que meu espelho BR era “inválido”.

Fui olhar o espelho (UFPR), e confirmei que ele estava vazio – coisa que não acontece no caso de outras distros. – O processo de sincronização de espelhos do openSUSE é diferente do das outras distros: “zera” tudo (ou apenas fecha o acesso), até estar 100% atualizado e verificado; e isso pode demorar um pouco. Desisti de esperar.

Havia aqui um tópico sobre isso.

2 curtidas

Não te esqueça de mudar o sistema no seu perfil! :joy:

Eu ainda não mudei, não tive tempo :upside_down_face:

1 curtida

Acabei de mudar como podem ver na imagem de perfil eu tinha esquecido tmb :sweat_smile:. Obrigado ao amigo Kogane por lembrar :smile:.

1 curtida