BSDes

ezine 2

Centralizando los ports

Víctor Balada Díazenlace_articulo01


Optimizaciones de PostgreSQL

Borja López Río (Wu)enlace_articulo02


Instalando OpenBSD

Oscar M. Lage (r0sk)enlace_articulo03



5. Posibles trucos para el servidor

  1. Se podría poner un cron o en /etc/periodic/daily un pequeño script que descargue automaticamente las actualizaciones de los ports con algo similar a esto:

    # cat /root/shellscripts/srcandports.sh
    #!/bin/sh
    cvsupcmd="/usr/local/bin/cvsup -g -L 0"
    ${cvsupcmd} /root/cvsup/standard-supfile
    ${cvsupcmd} /root/cvsup/ports-supfile
            

    y una entrada en el cron:

    # crontab -e
    @daily    /root/shellscripts/srcandports.sh
  2. Hacer que semanal, o mensualmente se produzcan paquetes binarios para todos los ports sin necesidad de interacción por parte del administrador, para ello podemos usar un shell script como este:

    	
    # cat /root/shellscripts/buildports.sh
    #!/bin/sh
    # variable para evitar que salgan diálogos como los de los ports
    # www/mod_php4 o /print/ghostscript-gnu, intentará coger valores por 
    # defecto si el port esta bien construido, o si no, simplemente lo 
    # ignorará y lo dejará para que si se lanza con la variable de 
    # entorno INTERACTIVE puesta solo compilen esos ports.
    
    export BATCH=1
    cd /usr/ports
    
    # creamos los paquetes
    make package > /dev/null
    
    # limpiamos los directorios de trabajo
    make clean > /dev/null
    
    # hacemos propiedad de ports:ports los distfiles, no hay peligro de 
    # que un usuario con permisos a esos ficheros cambie uno por una 
    # version con backdoor porque al compilar daría checksum mismatch y 
    # no compilaría el port, recuerde que el usuario ports no tiene
    # permisos de escritura sobre el arbol de ports.
    chown -R ports:ports /usr/ports/distfiles

    y su correspondiente entrada en el cron:

    	 
    # crontab -e
    @monthly  /root/shellscripts/buildports.sh
  3. También sería posible hacer lo mismo con la documentación, es simplemente compartir otro directorio, añadir el supfile y hacer otro pequeño shell script para rehacer los pdfs, htmls, o el formato que interese apartir del fichero sgml.