¿Cómo instalar el paquete con yum sin actualizar la información del repositorio?

10

Quiero instalar algunos paquetes desde el repositorio, pero siempre cuando trato de yum install packagenameactualizar yum db:

Loaded plugins: fastestmirror, langpacks, presto, refresh-packagekit
Determining fastest mirrors
updates/metalink                                                                                                                      |  23 kB     00:00     
 * fedora: nl.mirror.eurid.eu
 * rpmfusion-free: ftp.astral.ro
 * rpmfusion-free-updates: ftp.astral.ro
 * rpmfusion-nonfree: ftp.astral.ro
 * rpmfusion-nonfree-updates: ftp.astral.ro
 * updates: nl.mirror.eurid.eu
fedora-awesome                                                                                                                    | 3.3 kB     00:00     
google-chrome                                                                                                                     |  951 B     00:00     
rpmfusion-free-updates                                                                                                        | 3.3 kB     00:00     
rpmfusion-free-updates/primary_db                                                                                             | 272 kB     00:08     
rpmfusion-nonfree-updates                                                                                                     | 3.3 kB     00:00     
rpmfusion-nonfree-updates/primary_db                                                                                          |  93 kB     00:05     
updates                                                                                                                       | 4.7 kB     00:00     
updates/primary_db                                                                                                            | 4.6 MB     02:35     
updates/group                                                                                                                     | 1.9 MB     00:33     

Por lo tanto, el uso yum install packagename -Ctampoco funciona (se produce el error "no se encuentra la memoria caché" y yum makecacheno da resultados también). Pero solo quiero instalar paquetes sin actualizar db.

Clark
fuente
3
¿Por qué? La actualización de los medios de base de datos que tiene las últimas versiones de la lista de paquetes
Dedo
¿De qué db estamos hablando? El repositorio yum / paquete de caché?
thinice
1
@sam porque mi velocidad de Internet es demasiado lenta para actualizar el repositorio para cada instalación.
Clark
1
@thinice sí, como puede ver en el registro, se produce una actualización para cada repositorio. No lo necesito para hacer, solo quiero instalar el paquete sin actualizar el repositorio.
Clark
1
@purple Entonces debería usar un repositorio local, yum está diseñado para funcionar con acceso completo a los datos del repositorio, ya sea remoto o local, a yum no le importa, pero debería tenerlo.
Mancha

Respuestas:

12

Si desea yumcomportarse como apt-get(no actualizar los metadatos por cada ejecución), edite /etc/yum.confy coloque allí:

metadata_expire=never

o

metadata_expire=7d

en caso de que desee actualizar los metadatos después de una semana. Si ejecuta yum makecache, sus metadatos se actualizarán como apt-get updateen Debian.

Pero tenga en cuenta que si usa "nunca" en el archivo de configuración, tendrá que preocuparse por eso manualmente. Si usa, por ejemplo, "7d", guardará su ancho de banda de datos, pero después de una semana, los metadatos se actualizarán automáticamente.

Aquí está la metadata_expiredocumentación:

También puede cambiar el valor predeterminado de usar segundos para usar días, horas o minutos agregando anuncios, ho m respectivamente. El valor predeterminado es 6 horas, para complementar la ejecución de yum-updatesd una vez por hora. También es posible usar la palabra "nunca", lo que significa que los metadatos nunca caducarán.

Rafael van Horn
fuente
será 2wtrabajar así?
Sebastian Godelet
No 2wno funciona. El valor predeterminado es 6 horas, para complementar la ejecución de yum-updatesd una vez por hora. Puede cambiar el valor predeterminado de usar segundos para usar días, horas o minutos agregando a d, h or mrespectivamente.
Shubham Chaudhary
4

Lo que estás pidiendo está fuera del espíritu de mmm en algunos aspectos. Yum es un paquete integral y administrador de dependencias . Para hacer su trabajo y no arruinar su sistema con paquetes incompatibles de combinación y combinación, necesita tener esos datos que no desea actualizar.

Puede analizar manualmente las dependencias que tiene un paquete mediante su uso deplist <packagename>e instalarlas manualmente.

No tener yum tener una actualización parece una solicitud extraña, independientemente de las circunstancias ...

hielo delgado
fuente
Pero, ¿por qué apt-get no actualiza el repositorio cuando escribe el comando de instalación? Solo actualizará el repositorio y solo cuando escriba actualizar. Quiero que um haga lo mismo.
Clark
1
Si ejecuta apt-get install foo, y la versión del paquete remoto ha cambiado, recibirá mensajes como este: bitbucket.org/ianb/silverlining/issue/26/… - Igualmente con cualquier dependencia que se haya actualizado en el repositorio también. (Básicamente, lo que le obliga a ejecutar la actualización).
thinice
2
Sí, pero cuando ejecuto yum para instalar la aplicación que no ha cambiado, también actualiza db.
Clark
4

Si desea instalar un paquete sin actualizar el db, descargue las rpm directamente (ya sea a través de yumdownloader, ftp o navegador web) y luego instálelo directamente con las rpm:

rpm -ivh packagename

No le recomiendo que haga esto, ya que es mucho más trabajo rastrear las dependencias (es por eso que se crea yum) y podría romper futuras instalaciones a través de yum.

Rilindo
fuente
Sí, pero ¿por qué apt-get, por ejemplo, no actualiza el repositorio cuando solo le dice que instale el paquete? Y para actualizar, use el comando 'apt-get update'.
Clark