Usar Yum para instalar paquetes solo para mi usuario


23

Me gustaría poder instalar paquetes usando un administrador de paquetes (Yum está disponible en mi servidor), pero no tengo acceso de root. Técnicamente no necesito acceso root, solo quiero que los paquetes se instalen en mi directorio de inicio.

¿Hay alguna manera de que pueda hacer esto?

Respuestas:


9

Como señala Ignacio, puedes usar yumdownloader.

Pero para el segundo paso

rpm -ivh --relocate /usr=/home/username/usr --relocate /etc=/home/username/etc

o

rpm -ivh --relocate /=/home/username/progname

Probablemente sea más fácil.

Si el RPM tiene algún script que asume que se está ejecutando como root, es posible que también deba agregar la --noscriptsopción.

Además, puede agregar la --aidopción para resolver dependencias.

Otra opción útil en este caso es --rootevitar que rpm escriba en la /varruta (ya que no es root), por lo que el comando será algo como:

rpm -ivh --relocate /=/home/username/progname --root /home/username/progname

1
Tenga en cuenta la siguiente directriz de Fedora : "Se desaconseja el uso de las instalaciones de RPM para generar paquetes reubicables. Es difícil hacer el trabajo correctamente, imposible de usar desde el instalador o desde yum, y generalmente no es necesario si hay otras pautas de empaque Sin embargo, en el improbable caso de que tenga una buena razón para hacer que un paquete sea reubicable, DEBE indicar esta intención y razonamiento en la solicitud de revisión del paquete ".
Cristian Ciupitu

Bien, bien, bien. La primera opción con relocalizar no funcionó, porque necesita acceso a / var como root. La segunda opción no funcionó porque parece que necesita acceso root para hacerlo. Aparece el siguiente mensaje de error: error: no se puede cambiar el directorio raíz: operación no permitida
Sylvain

11

No estoy usando mmm. Sin embargo, puede usar yumdownloader, y luego pasar los paquetes rpm2cpio ... | cpio -idpara extraer su contenido, y luego colocar los archivos en las ubicaciones apropiadas.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.