Não está claro qual repositório você excluiu e tentou reinstalar com seu comando dnf install ...
, mas só podemos supor que você tentou fazer algo assim:
$ sudo dnf install -y http://download1.rpmfusion.org/free/fedora/releases/28/Everything/x86_64/os/Packages/r/rpmfusion-free-release-28-1.noarch.rpm
Fedora 28 - x86_64 411 kB/s | 60 MB 02:30
Last metadata expiration check: 0:00:00 ago on Mon 23 Jul 2018 02:06:48 AM UTC.
rpmfusion-free-release-28-1.noarch.rpm 40 kB/s | 20 kB 00:00
Dependencies resolved.
...
...
Preparing : 1/1
Installing : rpmfusion-free-release-28-1.noarch 1/1
Verifying : rpmfusion-free-release-28-1.noarch 1/1
Installed:
rpmfusion-free-release.noarch 28-1
Complete!
Depois apagou o arquivo .repo assim:
$ sudo rm /etc/yum.repos.d/rpmfusion-free-updates.repo
E depois tentei instalar novamente:
$ sudo dnf install -y http://download1.rpmfusion.org/free/fedora/releases/28/Everything/x86_64/os/Packages/r/rpmfusion-free-release-28-1.noarch.rpm
RPM Fusion for Fedora 28 - Free 1.3 MB/s | 754 kB 00:00
Last metadata expiration check: 0:00:00 ago on Mon 23 Jul 2018 02:11:12 AM UTC.
rpmfusion-free-release-28-1.noarch.rpm 57 kB/s | 20 kB 00:00
Package rpmfusion-free-release-28-1.noarch is already installed, skipping.
Dependencies resolved.
Nothing to do.
Complete!
Solução
Para colocar as coisas em forma novamente, você precisa fazer reinstall
deste RPM e não install
.
$ sudo dnf reinstall -y http://download1.rpmfusion.org/free/fedora/releases/28/Everything/x86_64/os/Packages/r/rpmfusion-free-release-28-1.noarch.rpm
Last metadata expiration check: 0:03:11 ago on Mon 23 Jul 2018 02:11:12 AM UTC.
rpmfusion-free-release-28-1.noarch.rpm 44 kB/s | 20 kB 00:00
Dependencies resolved.
...
...
Preparing : 1/1
Reinstalling : rpmfusion-free-release-28-1.noarch 1/2
Erasing : rpmfusion-free-release-28-1.noarch 2/2
Verifying : rpmfusion-free-release-28-1.noarch 1/2
Verifying : rpmfusion-free-release-28-1.noarch 2/2
Reinstalled:
rpmfusion-free-release.noarch 28-1
Complete!
E se confirmarmos, o arquivo deleted .repo está de volta:
$ ls -l /etc/yum.repos.d/rpmfusion-free-updates.repo
-rw-r--r--. 1 root root 1264 Apr 24 11:27 /etc/yum.repos.d/rpmfusion-free-updates.repo
Sem o URL?
Se você quiser, pode fazer isso sem saber a URL do RPM original que foi usado para configurar / instalar este repositório.
Verifique o nome do RPM:
$ rpm -qa|grep rpmfus
rpmfusion-free-release-28-1.noarch
Em seguida, faça o dnf reinstall ...
com apenas o nome do RPM:
$ sudo dnf reinstall -y rpmfusion-free-release
Last metadata expiration check: 0:10:00 ago on Mon 23 Jul 2018 02:11:12 AM UTC.
Dependencies resolved.
...
...
Preparing : 1/1
Reinstalling : rpmfusion-free-release-28-1.noarch 1/2
Erasing : rpmfusion-free-release-28-1.noarch 2/2
Verifying : rpmfusion-free-release-28-1.noarch 1/2
Verifying : rpmfusion-free-release-28-1.noarch 2/2
Reinstalled:
rpmfusion-free-release.noarch 28-1
Complete!
E verifique se o arquivo está de volta:
$ ls -l /etc/yum.repos.d/rpmfusion-free-updates.repo
-rw-r--r--. 1 root root 1264 Apr 24 11:27 /etc/yum.repos.d/rpmfusion-free-updates.repo
E se eu não souber o nome do RPM?
Se você está na estranha situação em que você não consegue descobrir ou lembrar qual RPM usar para reinstalar, você ainda não está completamente sem sorte.
Você pode ver qual arquivo foi excluído do comando history
e executar este comando rpm
para saber o que o RPM forneceu:
$ rpm -qf /etc/yum.repos.d/rpmfusion-free-updates.repo
rpmfusion-free-release-28-1.noarch
E, em seguida, faça a reinstalação com o nome do RPM, conforme descrito acima.
E se o RPM não foi instalado via DNF ou YUM?
No seu caso particular, o RPM que você mencionou: geogebra-classic- 6.0.477.0-201807062103.i386.rpm , não é um RPM que contenha arquivos YUM .repo.
$ rpm -qpl geogebra-classic-6.0.477.0-201807062103.i386.rpm | grep yum
$
Nesse cenário, nem dnf
nem yum
podem fornecer qualquer assistência, porque nenhum dos dois conhece a URL para reinstalar / baixar esse RPM. Isso ocorre porque esse RPM provavelmente foi originalmente baixado e instalado diretamente.
Quando um RPM é instalado dessa maneira, dnf
& yum
estão cegos para a URL e estão apenas instalando o RPM que você instrui a fazer através do arquivo que está em seu HDD local.
Seu único recurso neste cenário é baixar novamente o RPM em questão e reinstalá-lo manualmente usando dnf
, yum
ou rpm
.