Está en la página 1de 55

http://www.gulo.

org

Instalacin y Configuracin de un servidor con FreeBSD

Diego Prez Montes GULO - kabute@gulo.org

Sobre este documento...


http://www.gulo.org Copyright (c) 2007 Diego Prez Montes. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the address http://www.gnu.org/licenses/fdl.txt

Copyright (c) 2007 Diego Prez Montes. Se otorga permiso para copiar, distribuir y/o modificar este documento bajo los trminos de la Licencia de Documentacin Libre de GNU, Versin 1.2 o cualquier otra versin posterior publicada por la Free Software Foundation; sin Secciones Invariantes ni Textos de Cubierta Delantera ni Textos de Cubierta Trasera. Una copia de la licencia est incluida en la direcin http://www.gnu.org/licenses/fdl.txt

* Solo se considerar vlida a efectos legales la versin inglesa de la licencia de este documento.

ndice
http://www.gulo.org

1 - Breve Historia. 2 Licencia. 3 FreeBSD vs GNU/Linux. 4 - Estructura bsica de un sistema FreeBSD. 5 - Instalacin Paso a Paso. 6 - Administracin bsica del sistema. 7 - Instalacin de un FAMP. 8 - Ms informacin

Breve Historia
http://www.gulo.org

- Primera versin liberada en 1993, apoyada por la Universidad de California, Berkeley. - Basada en 386BSD y 4.3BSD-Lite (Net/2). - Versin 2.0 reinventada por problemas legales (entre Novell y la Universidad de Berkeley), us 4.4BSD-Lite y se taparon los agujeros de cdigo incompleto.
RAMAS: -CURRENT: En este momento 7.x -RELEASE : En este momento 6.x -STABLE : En este momento 6.x (con parches)

Breve Historia
http://www.gulo.org

- Objetivos del Proyecto (Jordan Hubbard): -Software para cualquier propsito -Software sin compromiso alguno. -Conseguir que el Software llegue a todo el mundo. - Siempre ha sido una apuesta por parte de los ISP y grandes empresas. - Curosidad: Su mascota se llama Beastie (pronunciado BeeS Dee), ha sido perseguido por entidades religiosas.

Licencia
http://www.gulo.org

- Licencia new BSD (tambin se permite GPL o LGPL si se desea). - No se ofrece ningn tipo de garanta. - No hay restricciones de uso del software, incluso se puede llevar a cdigo cerrado. - Se debe de mantener el aviso de copyright en el cdigo. - Es mucho ms libre (y permisiva) que la propia GPL.

Licencia
http://www.gulo.org

- Ha originado sistemas operativos como MacOS X (Darwin).

- MacOS X tiene una combinacin de software libre (FreeBSD en esencia) y cdigo cerrado (las modificaciones en el nucleo, el interfaz Aqua...)

FreeBSD VS GNU/Linux
http://www.gulo.org

- En FreeBSD se pueden ejecutar binarios de GNU/Linux (y otros sistemas UNIX), pero no al revs. - FreeBSD es mucho ms maduro que GNU/Linux. - Se ha ganado mejor reputacin. - FreeBSD puede dar un rendimiento notablemente superior a GNU/Linux. - GNU/Linux es ms escalable. - Hay mucha ms comunidad tras GNU/Linux. - Muchas ms diferencias en: http://people.freebsd.org/~murray/bsd_flier.html

Estructura bsica
http://www.gulo.org

KERNEL: Monoltico, bastante maduro.

Estructura bsica
http://www.gulo.org

SISTEMA DE FICHEROS: - Sistema Usado: Unix File System (UFS1/UFS2) - Soporta ficheros de tamao ilimitado y puede gestionar hasta 8 Zettabytes (2^33 TB). - Es una gran estructura de directorios. -No existe (a nivel lgico) ninguna separacin entre discos o particiones, solo existe un gran sistema de ficheros. - Todos los discos adicionales deben ser integrados en la estructura ya existente (montando cada particin como un subdirectorio del sistema de ficheros).

Estructura bsica
http://www.gulo.org

SISTEMA DE FICHEROS:

Estructura bsica
http://www.gulo.org

TILES BASE: - Las tpicas para gestionar cualquier sistema UNIX (ls,cd,cp,rm...) - Tambin incluye herramientas propias de BSD (como por ejemplo el manejo del sistema de paquetera). - Libreras del API de C. - La mayora es contribucin del proyecto GNU.

Instalacin Conseguir FreeBSD


http://www.gulo.org

- FreeBSD soporta una amplia gama de arquitecturas (alpha, amd64, i386, ia64, pc98, powerpc y sparc). - El sistema de paquetes ms actualizado es el de i386. - http://www.freebsd.org/where.html - Seleccionar la plataforma, versin y entrar en [ISO] - Para nuestra instalacin nos bastar el cd bootonly (el ltimo -STABLE: 6.2-RELEASE-i386-bootonly.iso para i386) - Se puede probar online en la plataforma Free Live OS Zoo: http://connessi.webminds.cs.unibo.it:8880/

Instalacin Inicio...
http://www.gulo.org

Instalacin Regin
http://www.gulo.org

Instalacin Teclado
http://www.gulo.org

Instalacin sysinstall
http://www.gulo.org

- Seguiremos el tipo de instalacin standard.

Instalacin Particionamiento
http://www.gulo.org

- Todo el sistema de ficheros ir en una nica particin (incluida la SWAP), en este caso son 2 GB.

Instalacin Particionamiento
http://www.gulo.org

Instalacin Boot Manager


http://www.gulo.org

- FreeBSD tiene su propio BootManager (boot0), pero en caso de tener GRUB (o LILO) bastar con seleccionar None y aadir la entrada del nuevo sistema.

Instalacin Etiquetas
http://www.gulo.org

Instalacin Etiquetas
http://www.gulo.org

- Ahora crearemos las etiquetas, las particiones dentro del sistema BSD.

Instalacin Etiquetas
http://www.gulo.org

- La SWAP debera de ser al menos el doble del tamao de la RAM, en este caso supondremos 96 MB de memoria principal.

Instalacin Paquetes
http://www.gulo.org

Instalacin Medio
http://www.gulo.org

Instalacin Por Red...


http://www.gulo.org

Instalacin ltima oportunidad!


http://www.gulo.org

Instalacin Config. de Red


http://www.gulo.org

Instalacin Usuarios
http://www.gulo.org

Instalacin Fin
http://www.gulo.org

- Slo nos queda por escribir el password de root (superusuario). - Tras esto ya tenemos nuestra instalacin lista para empezar a trabajar :)

Instalacin - Fin
http://www.gulo.org

Instalacin Usuarios
http://www.gulo.org

Administracin - Usuarios
http://www.gulo.org

- Aadir Usuario: - adduser - pw useradd nombre_usuario [-g grupo] - Eliminar Usuario: - rmuser [nombre_usuario] - pw userdel nombre_usuario - Crear Grupo: - pw groupadd nombre_grupo - Eliminar Grupo: - pw groupdel nombre_grupo

Administracin - Usuarios
http://www.gulo.org

- Potente utilidad: pw (ver man pw) - Aadir Usuario: - adduser - pw useradd nombre_usuario [-g grupo] - Eliminar Usuario: - rmuser [nombre_usuario] - pw userdel nombre_usuario - Crear Grupo: - pw groupadd nombre_grupo - Eliminar Grupo: - pw groupdel nombre_grupo

Administracin - Usuarios
http://www.gulo.org

- Informacin de un Usuario: - pw usershow nombre_usuario - Bloquear Usuario: - pw block nombre_usuario - Desbloquear Usuario: - pw unblock nombre_usuario - Cambiar Informacin de un Usuario: - chpass nombre_usuario - Cambiar Password de un Usuario: - passwd nombre_usuario

Administracin - Ficheros
http://www.gulo.org

- Cambiar de directorio: - cd directorio - Copiar fichero: - cp fichero_origen fichero_destino - Crear directorio: - mkdir directorio - Borrar fichero/directorio: - Si fichero: rm fichero - Si directorio: rm -r directorio - Cambiar permisos de un fichero/directorio: - chmod modo fichero - Cambiar propietario de un fichero/directorio: - chown usuario[:grupo] fichero [-R]

Administracin - Red
http://www.gulo.org

- La configuracin est en /etc/rc.conf


hostname="guloBSD" ifconfig_ed0="inet 10.0.2.15 netmask 255.255.255.0" defaultrouter="10.0.2.1"

Administracin - sysinstall
http://www.gulo.org

- Utilizada anteriormente en la instalacin del sistema. - Gran potencia y facilidad de uso desde el modo consola. - En la opcin Configure podemos encontrar todas las opciones disponibles:

Administracin - sysinstall
http://www.gulo.org

MENU PRINCIPAL:

Administracin - sysinstall
http://www.gulo.org

SUBMENU CONFIGURE [Parte 1]:

Administracin - sysinstall
http://www.gulo.org

SUBMENU CONFIGURE [Parte 2]:

Administracin - GNU/Linux
http://www.gulo.org

- FreeBSD es altamente compatible con los binarios de Linux (entre otros sistemas UNIX)-> 90% - Basta con dos pasos: - Cargar el mdulo necesario: kldload linux - Instalar las bibliotecas de ejecucin:
[root@GuloBSD]# cd /usr/ports/emulators/linux_base [root@GuloBSD]# make install distclean

- En determinados casos los binarios Linux rinden mejor en FreeBSD que en Linux. - Falla en llamadas especficas i386 (por ejemplo el modo virtual). - Ejecucin:
[root@GuloBSD]# brandelf -t Linux binario_linux

Administracin - Paquetera
http://www.gulo.org

- Instalar un paquete: pkg_add -r nombre_paquete - Eliminar un paquete: pkg_delete nombre_paquete - Ver paquete instalados: pkg_info - Buscar paquete: - http://www.freebsd.org/ports/index.html - Si se tiene un sistema de ports instalado:
[root@GuloBSD]# cd /usr/ports [root@GuloBSD]# make search key='paquete_buscado'

Administracin - Paquetera
http://www.gulo.org

- Por defecto descarga todo de ftp.freebsd.org - Se puede cambiar facilmente el repositorio:


[root@GuloBSD]# export PACKAGEROOT=protocolo://nuevo_repositorio

- Lista de Repositorios: http://mirrorlist.freebsd.org/FBSDsites.php

Administracin - Ports
http://www.gulo.org

- Para Instalarlo, dentro de sysinstall: Configure ->Distributions->Ports - Quedar almacenado en /usr/ports - Para buscar un paquete:
[root@GuloBSD]# cd /usr/ports [root@GuloBSD]# make search key='paquete_buscado'

- Instalar un paquete:
[root@GuloBSD]# cd /usr/ports/tipo_paquete/paquete_buscado [root@GuloBSD]# make install

Administracin - Ports
http://www.gulo.org

- Por ejemplo para buscar e instalar Bash:


[root@GuloBSD]# cd /usr/ports [root@GuloBSD]# make search key='bash' ... Port: bash-3.1.10_1 Path: /usr/ports/shells/bash Info: The GNU Project's Bourne Again SHell Maint: obrien@FreeBSD.org B-deps: gettext-0.14.5_2 libiconv-1.9.2_2 R-deps: gettext-0.14.5_2 libiconv-1.9.2_2 WWW: http://cnswww.cns.cwru.edu/~chet/bash/bashtop.html ... [root@GuloBSD]# cd shells [root@GuloBSD]# cd bash [root@GuloBSD]# make install

Administracin - Ports
http://www.gulo.org

- Para ver la lista de paquetes instalados y poder desinistalarlos es mejor usar el sistema de paqueteria (pkg_info y pkg_delete) - Como apunte final: hay ms de 13.000 ports. - Un buen site para mantenerse al da de actualizaciones de ports: http://www.freshports.org/

Administracin - Kernel
http://www.gulo.org

- Los mdulos estn en /boot/kernel/*.ko - Listar mdulos activos: kldstat


[root@GuloBSD]# kldstat

Id Refs Address Size Name 1 9 0xc0400000 691928 kernel 2 1 0xc0a92000 58554 acpi.ko 3 1 0xc3674000 2000 fire_saver.ko

- Cargar nuevo mdulo: kldload nombre_modulo - Descargar mdulo: klundload nombre_modulo

Administracin - Kernel
http://www.gulo.org

- Gestin de opciones y mdulos a cargar en el arranque del sistema (aadir lineas necesarias): /boot/loader.conf - Se puede encontrar las posibles opciones en /boot/defaults/loader.conf

Administracin - Kernel
http://www.gulo.org

- En FreeBSD /proc no es usado, se debe de usar sysctl . - Se trata de un interfaz para configurar el sistema FreeBSD que est corriendo. - Es posible configurar hasta 500 variables.
Uso: - Ver todas las variables: sysctl -a - Ver una variable: sysctl variable - Cambiar variable: sysctl variable=nuevo_valor

Administracin - Kernel
http://www.gulo.org

- Por ejemplo para modificar el nmero mximo de procesos soportados por el kernel:
[root@GuloBSD]# sysctl kern.maxproc kern.maxproc: 4036 [root@GuloBSD]# sysctl kern.maxproc=4500 kern.maxproc: 4036 -> 4500 [Esto en realidad debera de ser cambiado en /boot/loader.conf]

- Se pueden cambiar cosas como los parmetros de los discos, de TCP/IP, lmites del kernel...

Servicios - FAMP
http://www.gulo.org

- FAMP = FreeBSD & Apache & MySQL & PHP - Instalacin Apache: pkg_add -r apache - Instalacin MySQL: pkg_add mysql40-server - Instalacin PHP4: pkg_add -r php4

- Configuracin de Apache: /usr/local/etc/apache/ - Documento raz web: /usr/local/www/data/ - Manejo de Apache: apachectl [start|stop|restart]

Servicios - FAMP
http://www.gulo.org

- Para que Apache arranque automticamente con el sistema:


[root@GuloBSD]# echo apache_enable="YES" >> /etc/rc.conf

- Instalar el CMS Joomla: pkg_add -r joomla - Quedar instalado en /usr/local/www/data

Ms Informacin...
http://www.gulo.org

En la red: The FreeBSD Project. http://www.freebsd.org/ El Demonio.org. http://www.eldemonio.org/ Google BSD. http://www.google.com/bsd Un Secreto bien guardado:FreeBSD. Enrique Matas
(http://cronopios.net/Textos/freebsd_instalacion_y_primeros_pasos.pdf)

FreeBSD:Instalacin y Primeros Pasos. Enrique Matas


(http://cronopios.net/Textos/freebsd_un_secreto_bien_guardado.pdf)

Evolution of the Unix File System. Brad Schonhorst


(http://www.nycbug.org/uploads/FFS.pdf)

FreeBSD Architecture HandBook.


(http://www.freebsd.org/doc/en_US.ISO8859-1/books/arch-handbook/)

En la Biblioteca: The FreeBSD Corporate Networker's Guide. Ted Mittelstaedt.

Embedded FreeBSD cookbook [Recurso de Internet] . Paul Cevoli.

Fin de la presentacin.
http://www.gulo.org

Muchas gracias por su atencin! Preguntas?

También podría gustarte