La instalación de software en servidores Linux es crucial para el rendimiento y funcionalidad de sistemas empresariales. Los administradores de sistemas deben estar familiarizados con diversas estrategias para garantizar que el software sea legítimo, seguro y adecuado para su entorno. Aquí te mostraremos diferentes métodos para instalar software en un servidor, incluido el uso de manejadores de paquetes, scripts y tiendas de software.
¿Qué son los manejadores de paquetes?
Los manejadores de paquetes son herramientas que facilitan la instalación, actualización y eliminación de software en sistemas operativos basados en Linux. Las distribuciones utilizan manejadores como YUM, DNF o APT para garantizar la gestión de software de manera eficiente. Sin embargo, no siempre el software deseado se encuentra en los repositorios oficiales, por lo que a veces es necesario buscar alternativas.
¿Cómo instalar paquetes RPM en distribuciones basadas en Red Hat?
Para instalar software no presente en los repositorios oficiales:
Buscar el paquete RPM: Puedes utilizar herramientas como RPM Finder. Este método implica ciertos riesgos, por lo que es crucial verificar la legitimidad del software.
Descargar y instalar el paquete: Usa curl para descargar el archivo desde la terminal. Luego, instálalo con DNF especificando la ruta del archivo.
A veces, el software se puede instalar ejecutando scripts de Shell. ¿Cómo hacerlo de forma segura?
Verifica la fuente: Solo descarga scripts de sitios confiables que ofrezcan respaldo de la comunidad.
Ejecuta el script: Usa curl para descargar y ejecutar:
sh -c "$(curl -fsSL <URL_del_script>)"
¿Cómo manejar versiones específicas de software?
Para administrar versiones recientes de software como Node.js, NVM es una excelente opción, especialmente útil para garantizar instalaciones compatibles y actualizadas con mínimo esfuerzo.
Instala NVM: Sigue las instrucciones para descargar NVM, asegurando su correcta configuración en el archivo de inicio de la terminal.
Gestiona versiones de Node.js: Con NVM, puedes alternar entre diferentes versiones fácilmente y asegurarte de estar usando la más actual.
nvm install --lts
¿Qué alternativas existen a los manejadores de sistemas?
Las consolas en Linux se benefician de entornos como Snapcraft y Flatpak, ambas tiendas de software que facilitan la instalación de paquetes más actuales.
Snapcraft: Ya integrado en Ubuntu Server, permite instalar paquetes de manera sencilla y confiable.
Flatpak: Una alternativa similar a Snapcraft, ideal para distribuciones distintas de Ubuntu.
sudo snap install<nombre_del_paquete>
¿Qué hacer cuando el software no está disponible?
Si todo lo demás falla, puedes descargar directamente binarios ejecutables y colocarlos en el directorio de binarios del sistema. Ten en cuenta los posibles riesgos y revisa siempre la procedencia del software.
mv<nombre_del_binario> /usr/local/bin/
Ser meticuloso en la selección y gestión del software para servidores es vital en la administración de sistemas. Aprender y practicar estas técnicas no solo mejora tus habilidades, sino que también garantiza la seguridad y eficiencia de tus entornos operativos. Sigue explorando y aprendiendo para optimizar cada vez más tus configuraciones.
En Linux, es común instalar software desde la línea de comandos utilizando el manejador de paquetes de la distribución que estés utilizando. El proceso para instalar un paquete es bastante sencillo y se realiza en unos pocos pasos:
Actualiza la lista de paquetes disponibles en los repositorios utilizando el siguiente comando:
En distribuciones basadas en Debian, como Ubuntu o Linux Mint, utiliza:
sudo apt update
En distribuciones basadas en Red Hat, como Fedora o CentOS, utiliza:
sudo dnf update
Busca el paquete que quieres instalar utilizando el comando de búsqueda correspondiente:
En distribuciones basadas en Debian, utiliza:
apt search <nombre_del_paquete>
En distribuciones basadas en Red Hat, utiliza:
dnf search <nombre_del_paquete>
Una vez que encuentres el paquete que quieres instalar, utiliza el comando correspondiente para instalarlo:
En distribuciones basadas en Debian, utiliza:
sudo apt install <nombre_del_paquete>
En distribuciones basadas en Red Hat, utiliza:
sudo dnf install <nombre_del_paquete>
Espera a que se complete la instalación del paquete. En algunos casos, se te pedirá que confirmes la instalación o que ingreses tu contraseña de administrador.
Y eso es todo, ahora deberías tener el paquete instalado en tu sistema Linux y listo para ser utilizado. Ten en cuenta que, dependiendo del paquete que estés instalando, es posible que necesites reiniciar ciertos servicios o aplicaciones para que los cambios tengan efecto.
Gracias por el aporte.
Hola!!, al ejecutar nvm -v obtenía este mensaje
➜ ~ nvm -v
zsh: command not found: nvm
Luego de revisar en varios lugares encontré la solución ejecutando este comando
➜ ~ source ~/.zshrc
Ahora tengo
➜ ~ nvm -v
0.39.4
Espero sea útil!!!
Gracias por el aporte
En caso de no se encuentren las tres ultimas lineas cuando edites
➜ ~ vim .zshrc
Las agregas > presionas la tecla esc dos puntos :qw y ENTER
Y ejecuta source .zshrc para asi poder utilizar nvm
➜ ~ source .zshrc
gracias , si se pudo
Que buena clase desconocía esos Repositorios Extra. 👏
esta clase me enredo un poco, la revisaré unas cuentas veces y así espero entender un poco mejor...
No te preocupes, eso es poco a poco, solamente debes tener en cuenta qué sistemas utilizas y aplicarle las instrucciones
Si quieres que screenfetch se inicie cada vez que abres tu terminal pudes hacerlo agregando en la ultima línea la palabra screenfetch en la siguiente dirección: sudo nano /etc/bash.bashrc
Es muy facil y practico para cuando tengas muchas distribuciones y no tengas que consultar cual es.
Excelente tip Luis, gracias por compartirlo.
se centro mucho en RH y yo slo uso Ubuntu jajaja pero muy vacana la clase
Hay alguna herramienta que te permita notificarte mediante alertas las actualizaciones de los paquetes y dependencias de nuestras aplicaciones? lo consulto pensando cómo gestionarán eso las personas sysadmin o devops que trabajan con grandes aplicaciones desarrolladas
Normalmente eso se delega a cron jobs :)
Si después de instalar nvm, les sale "zsh: command not found: nvm". Una posible solución sea recargar la Shell de nuevo, de esta manera:
source ~/.zshrc
Para que un archivo ejecutable sea accesible en todo el sistema, debe moverse a la carpeta /bin. Al hacerlo, se garantiza que el archivo pueda ser ejecutado desde cualquier ubicación en la terminal. Esto se debe a que /bin forma parte de la variable de entorno PATH, que permite al sistema operativo localizar ejecutables sin necesidad de especificar su ruta completa.
Si estan utilizando Ubuntu o Fedora (o cualquier distro con escritorio Gnome) les recomiendo Console (https://apps.gnome.org/Console/), se torna de diferente color cuando estas en normal/sudo/ssh.
normalmente nunca se debe hacer lo ultimo. Una vez por payaso descargue un emulador de N64 en un video de youtube y me provocaba que se me calentara el procesador y crasheara mientras revisaba los logs era por que se ejecutaba en segundo plano para hacer quien sabe que... SI tambien crashea linux... Impensable
¿Cómo instalar software?
Podemos usar RPM Finder (bajo tu propio riesgo ⚠️)
Snapcraft
Flatpak
Está clase es un éxito
Para los atentos en la clase, se podrán dar cuenta qué contraseña está usando el profe en el curso 😅🤭
A alguien le salio este mensaje "... is not in the sudoers file. This incident will be reported."?
Screenfetch y Neofetch hacen lo mismo o tienen alguna diferencia?
Encontré esto, es lago viejo:
LINK-REDDIT
Una duda que no he encontrado respuesta, Mamba a diferencia de anaconda se dice que es mas rápido, pero, puede esta primera causar problemas a diferencia de mamba?
cuando corro el comando para instalar screenfetch con wget me sale falló: Expiró el tiempo de conexión. alguien sabe a que se debe esto, lo intenté en la terminal conectada con ubuntu y en la terminal conectada con red hat
¿Tienes configurada la opción bridge en virtual box? :D