Gestión de Paquetes RPM y Yum en Linux: Instalación, Runlevels, Compresión y Conexión PHP-MySQL
Gestión de Paquetes con Yum y RPM
Yum es el front-end de RPM.
- Trabaja en red y busca paquetes en repositorios (directorios de paquetes ubicados en algún servidor de la red).
- Utiliza los servidores HTTP (puerto 80) y FTP (puerto 21).
- Sus archivos de configuración, con extensión .repo, contienen las direcciones de los repositorios.
Comandos básicos:
yum grouplist | more: muestra el contenido disponible en el disco.yum groupinstall "servidor de base de datos": instala el grupo indicado.service mysql start: inicia el programa.service mysql stop: detiene el programa.
Creación de un repositorio local desde el disco
# mkdir /mnt/disco # mount -t iso9660 /dev/sr0 /mnt/disco # cp /etc/yum.repos.d/rhel-source.repo /etc/yum.repos.d/rhel-alumno.repo # nano /etc/yum.repos.d/rhel-alumno.repo
Dentro del archivo, cambiar los valores de permisos (0 por 1 y 1 por 0) y colocar gato en las líneas indicadas para que el repositorio quede en modo lectura.
Nota: el DVD se monta automáticamente en /media/rhel.
Instalación de XAMPP
# tar xvzf /root/descargas/xampp-linux-1.7.7.tar.gz -C /opt/ # /opt/lampp/lampp start
RPM (Red Hat Package Manager)
RPM es el administrador de paquetes de Red Hat.
1. Paquetes
Un paquete es un conjunto de archivos precompilados con metadatos, distribuido a través de la red o de Internet local (versión 6.x).
Formato del nombre: nombre_paquete-version-release.arquitectura.rpm
2. Base de datos
La base de datos de RPM se encuentra en /var/lib/rpm. Para consultarla:
# file /var/lib/rpm/*
3. Comando rpm
# rpm -qa | wc -L
rpm -i: instalarrpm -e: desinstalarrpm -U: actualizarrpm -F: actualizar solo si ya está instaladorpm -V: verificar
Run Levels
Los run levels (niveles de ejecución) determinan qué servicios se inician al arrancar el sistema.
- 0 = apagado (off)
- 1 = modo texto, modo usuario (monousuario)
- 2 = modo texto, algunos servicios de red
- 3 = modo texto multiusuario
- 4 = no utilizado
- 5 = modo gráfico multiusuario
Para revisar los servicios de un nivel determinado (N entre 0 y 6):
# ls -l /etc/rc.d/rcN.d/
Prefijos de los enlaces simbólicos:
- S (start): el servicio se inicia.
- K (kill): el servicio se detiene.
Ejemplo:
# ls -l /etc/rc1.d/K10cups # mv /etc/rc1.d/K10cups /etc/rc.d/S10cups # chkconfig --list # chkconfig --level 235 samba on|off # service httpd start # service httpd stop|restart|status # system-config-services # nano /var/www/html/supagina.php # nano /etc/httpd/conf/httpd.conf # service httpd restart
Empaquetado y Compresión
Empaquetar y desempaquetar con tar
El comando tar empaqueta y desempaqueta archivos.
# tar cvf contenedor.tar arch1 arch2 arch3 # empaquetar # tar xvf contenedor.tar # desempaquetar
Compresión
Los comandos gzip y bzip2 son los adecuados para comprimir:
- gzip genera archivos
.gz - bzip2 genera archivos
.bz2
# tar cvzf contenedor.tar.gz arch1 arch2 arch3 # empaquetar y comprimir # tar xvzf contenedor.tar.gz # descomprimir y desempaquetar
Conexión entre Servicios
Se busca lograr conexión entre:
- a) La base de datos MySQL y el programa PHP.
- b) Un servidor FTP y una máquina cliente.
Componentes necesarios
- a) Servidor web: Apache (
httpd) - b) Servidor de base de datos: MySQL (incluido en
xampp.tar.gz) - c) Soporte para PHP
# /opt/lampp/lampp start
Script de conexión PHP-MySQL
Crear el archivo con:
# nano /opt/lampp/htdocs/clientes.php
<?php
$i = 0;
$conex = mysql_connect("localhost", "root", "");
mysql_select_db("clientes", $conex);
$datos = mysql_query("SELECT * FROM clientes_santiago", $conex);
while ($fila = mysql_fetch_array($datos)) {
$i++;
}
echo "El n° de clientes es: " . $i;
?>