book freebsd

662
Manual de FreeBSD Proyecto de Documentación de FreeBSD

Upload: angel-fernando-martinez

Post on 01-Dec-2015

147 views

Category:

Documents


8 download

TRANSCRIPT

  • Manual de FreeBSD

    Proyecto de Documentacin de FreeBSD

  • Manual de FreeBSDpor Proyecto de Documentacin de FreeBSDPublicado Febrero 1999Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 TheFreeBSD Documentation Project

    Bienvenido a FreeBSD! Este manual cubre la instalacin y uso diario de FreeBSD 9.1-RELEASE y FreeBSD8.3-RELEASE. Este manual est en constante evolucin y es el resultado del trabajo de muchas personas. Algunassecciones no estn completas y otras necesitan ser actualizadas. Si est interesado en colaborar en este proyectoenve un mensaje de correo electrnico a lista de correo del proyecto de documentacin de FreeBSD(http://lists.FreeBSD.org/mailman/listinfo/freebsd-doc). La ltima versin de este documento est siempredisponible en el sitio web de FreeBSD (http://www.FreeBSD.org). Tambin puede encontrarla en diferentesformatos y opciones de compresin en el servidor FTP de FreeBSD (ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/) o enlas numerosas rplicas. Si prefiere una copia en papel de este manual puede comprarla en FreeBSD Mall(http://www.freebsdmall.com/). Tambin es posible hacer bsquedas (../../../../search/index.html) en este manual.

    La redistribucin y uso en fuente (SGML DocBook) y formatos "compilados" (SGML, HTML, PDF, PostScript, RTF y cualquier otro) con o sinmodificacin, esta permitida siempre y cuando se cumplan las siguientes condiciones:

    1. La redistribucin del cdigo fuente (SGML DocBook) debe contener esta informacin de copyright, esta lista decondiciones y el siguiente texto como las primeras lneas del fichero sin modificar.

    2. La redistribucin en formatos compilados (transformado a otros DTDs, convertidos a PDF, PostScript, RTF yotros formatos) debe reproducir el siguiente texto de copyright, esta lista de condiciones y el siguiente texto enla documentacin y/u otros materiales entregados con la distribucin.

    Importante: THIS DOCUMENTATION IS PROVIDED BY THE FREEBSD DOCUMENTATION PROJECT "AS IS"AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIEDWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. INNO EVENT SHALL THE FREEBSD DOCUMENTATION PROJECT BE LIABLE FOR ANY DIRECT, INDIRECT,INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITEDTO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; ORBUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER INCONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANYWAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCHDAMAGE.

    FreeBSD is a registered trademark of the FreeBSD Foundation.3Com and HomeConnect are registered trademarks of 3Com Corporation.3ware and Escalade are registered trademarks of 3ware Inc.ARM is a registered trademark of ARM Limited.Adaptec is a registered trademark of Adaptec, Inc.

  • Adobe, Acrobat, Acrobat Reader, and PostScript are either registered trademarks or trademarks of Adobe Systems Incorporated in the UnitedStates and/or other countries.Apple, AirPort, FireWire, Mac, Macintosh, Mac OS, Quicktime, and TrueType are trademarks of Apple Computer, Inc., registered in the UnitedStates and other countries.Corel and WordPerfect are trademarks or registered trademarks of Corel Corporation and/or its subsidiaries in Canada, the United States and/orother countries.Sound Blaster is a trademark of Creative Technology Ltd. in the United States and/or other countries.CVSup is a registered trademark of John D. Polstra.Heidelberg, Helvetica, Palatino, and Times Roman are either registered trademarks or trademarks of Heidelberger Druckmaschinen AG in theU.S. and other countries.IBM, AIX, EtherJet, Netfinity, OS/2, PowerPC, PS/2, S/390, and ThinkPad are trademarks of International Business Machines Corporation in theUnited States, other countries, or both.IEEE, POSIX, and 802 are registered trademarks of Institute of Electrical and Electronics Engineers, Inc. in the United States.Intel, Celeron, EtherExpress, i386, i486, Itanium, Pentium, and Xeon are trademarks or registered trademarks of Intel Corporation or itssubsidiaries in the United States and other countries.Intuit and Quicken are registered trademarks and/or registered service marks of Intuit Inc., or one of its subsidiaries, in the United States and othercountries.Linux is a registered trademark of Linus Torvalds.LSI Logic, AcceleRAID, eXtremeRAID, MegaRAID and Mylex are trademarks or registered trademarks of LSI Logic Corp.M-Systems and DiskOnChip are trademarks or registered trademarks of M-Systems Flash Disk Pioneers, Ltd.Macromedia, Flash, and Shockwave are trademarks or registered trademarks of Macromedia, Inc. in the United States and/or other countries.Microsoft, IntelliMouse, MS-DOS, Outlook, Windows, Windows Media and Windows NT are either registered trademarks or trademarks ofMicrosoft Corporation in the United States and/or other countries.Netscape and the Netscape Navigator are registered trademarks of Netscape Communications Corporation in the U.S. and other countries.GateD and NextHop are registered and unregistered trademarks of NextHop in the U.S. and other countries.Motif, OSF/1, and UNIX are registered trademarks and IT DialTone and The Open Group are trademarks of The Open Group in the United Statesand other countries.Oracle is a registered trademark of Oracle Corporation.PowerQuest and PartitionMagic are registered trademarks of PowerQuest Corporation in the United States and/or other countries.RealNetworks, RealPlayer, and RealAudio are the registered trademarks of RealNetworks, Inc.Red Hat, RPM, are trademarks or registered trademarks of Red Hat, Inc. in the United States and other countries.SAP, R/3, and mySAP are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world.Sun, Sun Microsystems, Java, Java Virtual Machine, JavaServer Pages, JDK, JRE, JSP, JVM, Netra, Solaris, StarOffice, Sun Blade, SunEnterprise, Sun Fire, SunOS, and Ultra are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.Symantec and Ghost are registered trademarks of Symantec Corporation in the United States and other countries.MATLAB is a registered trademark of The MathWorks, Inc.SpeedTouch is a trademark of Thomson.U.S. Robotics and Sportster are registered trademarks of U.S. Robotics Corporation.VMware is a trademark of VMware, Inc.Waterloo Maple and Maple are trademarks or registered trademarks of Waterloo Maple Inc.Mathematica is a registered trademark of Wolfram Research, Inc.XFree86 is a trademark of The XFree86 Project, Inc.Ogg Vorbis and Xiph.Org are trademarks of Xiph.Org.Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designationsappear in this document, and the FreeBSD Project was aware of the trademark claim, the designations have been followed by the or the symbol.

  • Tabla de contenidosPrefacio .........................................................................................................................................................................xiI. Primeros pasos..................................................................................................................................................... xviii

    1. Introduccin ......................................................................................................................................................11.1. Sinopsis.................................................................................................................................................11.2. Bienvenido a FreeBSD .........................................................................................................................11.3. Acerca del Proyecto FreeBSD..............................................................................................................5

    2. Instalacin de FreeBSD...................................................................................................................................102.1. Sinopsis...............................................................................................................................................102.2. Requisitos de hardware.......................................................................................................................102.3. Tareas anteriores a la instalacin ........................................................................................................122.4. Inicio de la instalacin........................................................................................................................182.5. ?Qu es sysinstall? ..............................................................................................................................232.6. Asignacin de espacio en disco ..........................................................................................................282.7. Eleccin de qu instalar ......................................................................................................................402.8. Eleccin del medio de instalacin ......................................................................................................432.9. El punto sin retorno ............................................................................................................................442.10. Despus de la instalacin..................................................................................................................462.11. Solucin de problemas......................................................................................................................772.12. Gua avanzada de instalacin............................................................................................................802.13. Cmo preparar su propio medio de instalacin ................................................................................81

    3. Conceptos bsicos de Unix .............................................................................................................................863.1. Sinopsis...............................................................................................................................................863.2. Consolas virtuales y terminales ..........................................................................................................863.3. Permisos..............................................................................................................................................893.4. Estructura de directorios.....................................................................................................................943.5. Organizacin de disco.........................................................................................................................963.6. Montaje y desmontaje de sistemas de ficheros.................................................................................1023.7. Procesos ............................................................................................................................................1053.8. Dmons, seales y cmo matar procesos.........................................................................................1073.9. Shells.................................................................................................................................................1093.10. Editores de texto .............................................................................................................................1113.11. Dispositivos y nodos de dispositivos ..............................................................................................1113.12. Formatos binarios ...........................................................................................................................1123.13. Ms informacin.............................................................................................................................113

    4. Instalacin de aplicaciones: packages y ports ...........................................................................................1164.1. Sinopsis.............................................................................................................................................1164.2. Aproximacin a la instalacin de software.......................................................................................1164.3. Cmo encontrar aplicaciones............................................................................................................1184.4. Uso del sistema de packages.............................................................................................................1194.5. Uso de la coleccin de ports .............................................................................................................1204.6. Despus de instalar un port...............................................................................................................1304.7. Ports que no funcionan .....................................................................................................................130

    5. El sistema X Window....................................................................................................................................1325.1. Sinopsis.............................................................................................................................................1325.2. Entender X........................................................................................................................................132

    iv

  • 5.3. Instalar X11 ......................................................................................................................................1355.4. Configuracin de X11.......................................................................................................................1355.5. Uso de tipos en X11..........................................................................................................................1395.6. El gestor de pantalla X......................................................................................................................1435.7. Entornos de escritorio .......................................................................................................................146

    II. Tareas comunes ....................................................................................................................................................1516. Aplicaciones de escritorio .............................................................................................................................152

    6.1. Sinopsis.............................................................................................................................................1526.2. Navegadores......................................................................................................................................1526.3. Productividad....................................................................................................................................1556.4. Visores de documentos .....................................................................................................................1586.5. Finanzas ............................................................................................................................................1596.6. Resumen ...........................................................................................................................................161

    7. Multimedia ....................................................................................................................................................1627.1. Sinopsis.............................................................................................................................................1627.2. Configuracin de la tarjeta de sonido ...............................................................................................1627.3. Sonido MP3 ......................................................................................................................................1667.4. Reproduccin de vdeo .....................................................................................................................1697.5. Configuracin de tarjetas de TV.......................................................................................................1767.6. Escneres de imgenes .....................................................................................................................178

    8. Configuracin del kernel de FreeBSD...........................................................................................................1838.1. Sinopsis.............................................................................................................................................1838.2. ?Qu razones hay para compilar un kernel personalizado?..............................................................1838.3. Inventario de hardware del sistema...................................................................................................1848.4. Controladores del kernel, subsistemas y mdulos............................................................................1858.5. Compilacin e instalacin de un kernel personalizado.....................................................................1858.6. El fichero de configuracin...............................................................................................................1888.7. Qu hacer si algo va mal...................................................................................................................201

    9. Imprimir ........................................................................................................................................................2039.1. Sinopsis.............................................................................................................................................2039.2. Introduccin......................................................................................................................................2039.3. Configuracin bsica ........................................................................................................................2049.4. Configuracin avanzada de impresoras ............................................................................................2049.5. Cmo utilizar impresoras..................................................................................................................2049.6. Alternativas a LPD............................................................................................................................2059.7. Solucin de problemas......................................................................................................................205

    10. Compatibilidad binaria con Linux...............................................................................................................20610.1. Sinopsis...........................................................................................................................................20610.2. Instalacin.......................................................................................................................................20610.3. Instalacin de Mathematica.........................................................................................................20910.4. Instalacin de Maple...................................................................................................................21110.5. Instalacin de MATLAB .............................................................................................................21310.6. Instalacin de Oracle ...................................................................................................................21610.7. Instalacin de SAP R/3.............................................................................................................21910.8. Temas avanzados ............................................................................................................................240

    v

  • III. Administracin del sistema. ..............................................................................................................................24211. Configuracin y Adaptacin del Sistema ....................................................................................................243

    11.1. Configuracin de Tarjetas de Red...................................................................................................24311.2. Arrancar servicios .......................................................................................................................24311.3. Soft Updates ................................................................................................................................24311.4. Aadir espacio swap .......................................................................................................................243

    12. El proceso de arranque en FreeBSD ...........................................................................................................24412.1. Sinopsis...........................................................................................................................................24412.2. El problema que representa arrancar el sistema .............................................................................24412.3. El RMA y las etapas de arranque uno, dos y tres ...........................................................................24512.4. Interaccin con el kernel durante el arranque.................................................................................24912.5. Device Hints ...................................................................................................................................25012.6. Init: inicializacin del proceso de control.......................................................................................25012.7. Secuencia de apagado.....................................................................................................................251

    13. Usuarios y administracin bsica de cuentas ..............................................................................................25213.1. Sinopsis...........................................................................................................................................25213.2. Introduccin....................................................................................................................................25213.3. La cuenta superusuario ...................................................................................................................25413.4. Cuentas de sistema..........................................................................................................................25413.5. Cuentas de usuario..........................................................................................................................25413.6. Modificacin de cuentas .................................................................................................................25413.7. Limitar a los usuarios......................................................................................................................25913.8. Personalizar a los usuarios..............................................................................................................26113.9. Grupos.............................................................................................................................................261

    14. Seguridad.....................................................................................................................................................26314.1. Sinopsis...........................................................................................................................................26314.2. Introduccin....................................................................................................................................26314.3. Asegurar FreeBSD..........................................................................................................................26514.4. DES, MD5 y Crypt .........................................................................................................................27214.5. Contraseas de un solo uso.............................................................................................................27314.6. TCP Wrappers ................................................................................................................................27814.7. KerberosIV ....................................................................................................................................28114.8. Kerberos5 ......................................................................................................................................28814.9. OpenSSL.........................................................................................................................................29614.10. VPN sobre IPsec ...........................................................................................................................29814.11. OpenSSH ......................................................................................................................................31014.12. Listas de control de acceso a sistemas de ficheros .......................................................................31514.13. Monitorizacin de fallos de seguridad de aplicaciones ................................................................31714.14. FreeBSD Security Advisories.......................................................................................................31814.15. Contabilidad de procesos..............................................................................................................320

    15. Jaulas ...........................................................................................................................................................32215.1. Sinopsis...........................................................................................................................................32215.2. Trminos relacionados con las jaulas .............................................................................................32215.3. Introduccin....................................................................................................................................32315.4. Creacin y gestin de jaulas ...........................................................................................................32415.5. Administracin y personalizacin a fondo .....................................................................................32515.6. Uso de las jaulas .............................................................................................................................327

    16. Mandatory Access Control..........................................................................................................................333

    vi

  • 16.1. Sinopsis...........................................................................................................................................33316.2. Trminos clave en este captulo......................................................................................................33316.3. Explicacin de MAC ......................................................................................................................33316.4. Las etiquetas MAC .........................................................................................................................33316.5. Configuracin de mdulos..............................................................................................................33316.6. El mdulo MAC ifoff......................................................................................................................33316.7. El mdulo MAC portacl .................................................................................................................33316.8. Polticas de etiquetas MAC.............................................................................................................33316.9. El mdulo MAC partition ...............................................................................................................33316.10. El mdulo de seguridad multinivel MAC.....................................................................................33416.11. El mdulo MAC Biba ...................................................................................................................33416.12. El mdulo MAC LOMAC ............................................................................................................33416.13. Implementacin de un entorno seguro con MAC.........................................................................33416.14. Otro ejemplo: Uso de MAC para restringir un servidor web .......................................................33416.15. Depuracin de errores en MAC ....................................................................................................334

    17. Auditora de eventos de seguridad ..............................................................................................................33517.1. * ......................................................................................................................................................335

    18. Almacenamiento..........................................................................................................................................33618.1. Sinopsis...........................................................................................................................................33618.2. Nombres de dispositivo ..................................................................................................................33618.3. Aadir discos ..................................................................................................................................33718.4. RAID...............................................................................................................................................33918.5. Dispositivos de almacenamiento USB............................................................................................34418.6. Creacin y uso de medios pticos (CD) .........................................................................................34618.7. Crear y utilizar medios pticos (DVDs) .........................................................................................35218.8. Creacin y uso de disquetes (floppies) ...........................................................................................35618.9. Creacin y uso de cintas de datos ...................................................................................................35818.10. Respaldos en disquetes .................................................................................................................36118.11. Bases para respaldos.....................................................................................................................36218.12. Sistemas de ficheros en red, memoria y respaldados en fichero...................................................36918.13. Instantneas (snapshots) de sistemas de ficheros ......................................................................37318.14. Cuotas en sistemas de ficheros .....................................................................................................37418.15. Cifrado de particiones de disco.....................................................................................................377

    19. GEOM: Marco de trabajo modular de transformacin de discos................................................................38219.1. Sinopsis...........................................................................................................................................38219.2. Introduccin a GEOM ....................................................................................................................38219.3. RAID0 - Distribucin por bandas...................................................................................................38219.4. RAID1 - Replicacin ......................................................................................................................384

    20. El Gestor de Volmenes Vinum ..................................................................................................................38820.1. Sinopsis...........................................................................................................................................38820.2. Los Discos son Demasiado Pequeos.............................................................................................38820.3. Cuellos de Botella en el Acceso .....................................................................................................38820.4. Integridad de Datos.........................................................................................................................38920.5. Objetos Vinum................................................................................................................................38920.6. Ejemplos .........................................................................................................................................39020.7. Esquema de Nombres de los Objetos .............................................................................................39420.8. Configuracin de Vinum.................................................................................................................39420.9. Uso de Vinum en el Sistema de Ficheros Raz ...............................................................................395

    vii

  • 21. Virtualizacin ..............................................................................................................................................39621.1. * ......................................................................................................................................................396

    22. Localizacin - Uso y configuracin de I18N/L10N....................................................................................39722.1. Sinopsis...........................................................................................................................................39722.2. Lo bsico.........................................................................................................................................39722.3. Uso de la localizacin.....................................................................................................................39822.4. Compilacin de programas con soporte para I18N ........................................................................40422.5. Localizacin de FreeBSD a idiomas especficos ............................................................................404

    23. Lo ltimo de lo ltimo.................................................................................................................................40823.1. Sinopsis...........................................................................................................................................40823.2. FreeBSD-CURRENT vs. FreeBSD-STABLE................................................................................40823.3. Sincronizacin de su cdigo fuente ................................................................................................40823.4. Uso de make world ......................................................................................................................40823.5. Redes pequeas...............................................................................................................................408

    IV. Comunicaciones en red ......................................................................................................................................40924. Comunicaciones serie..................................................................................................................................410

    24.1. Sinopsis...........................................................................................................................................41024.2. Introduccin....................................................................................................................................41024.3. Terminales.......................................................................................................................................41524.4. Servicio dial-in................................................................................................................................41924.5. Servicio dial-out..............................................................................................................................42724.6. Configurando la consola serie.........................................................................................................430

    25. PPP y SLIP ..................................................................................................................................................43925.1. Sinopsis...........................................................................................................................................43925.2. Uso de User PPP.............................................................................................................................43925.3. Uso de Kernel PPP..........................................................................................................................45425.4. Uso de PPP sobre Ethernet (PPPoE)..............................................................................................46125.5. Uso de PPP sobre ATM (PPPoA) ..................................................................................................46325.6. Uso de SLIP....................................................................................................................................465

    26. Cortafuegos .................................................................................................................................................47626.1. * ......................................................................................................................................................476

    27. Correo Electrnico ......................................................................................................................................47727.1. Sinopsis...........................................................................................................................................47727.2. Utilizacin del correo electrnico...................................................................................................47727.3. Configuracin de sendmail ............................................................................................................47927.4. Sustitucin del Agente de Transferencia de Correo .......................................................................48227.5. Depuracin de Problemas...............................................................................................................48527.6. Conceptos Avanzados .....................................................................................................................48927.7. SMTP con UUCP ...........................................................................................................................49127.8. Configuracin para slamente enviar correo ..................................................................................49327.9. Utilizacin del correo con una conexin mediante mdem analgico (dial-up) ............................49427.10. Autentificacin utilizando SMTP .................................................................................................49527.11. Agente de Correo de Usuario .......................................................................................................49727.12. Manejo de fetchmail .....................................................................................................................50327.13. Uso de procmail............................................................................................................................504

    28. Servidores de red.........................................................................................................................................50628.1. * ......................................................................................................................................................506

    viii

  • 29. Networking avanzado..................................................................................................................................50729.1. Resumen .........................................................................................................................................50729.2. Pasarelas y routers.......................................................................................................................50729.3. Redes sin cables (wireless)..........................................................................................................51429.4. Bluetooth.........................................................................................................................................52029.5. Puenteado........................................................................................................................................52829.6. NFS.................................................................................................................................................53129.7. Ejecucin sin disco duro.................................................................................................................53729.8. RDSI ...............................................................................................................................................54629.9. NIS/YP............................................................................................................................................55029.10. DHCP............................................................................................................................................56729.11. DNS ..............................................................................................................................................57129.12. NTP...............................................................................................................................................58429.13. Traduccin de direcciones de red .................................................................................................58729.14. El Superservidor inetd .............................................................................................................59129.15. Lnea IP paralela (PLIP) ...............................................................................................................59529.16. IPv6...............................................................................................................................................59829.17. ATM en FreeBSD 5.X ..................................................................................................................602

    V. Apndices ..............................................................................................................................................................60530. Cmo obtener FreeBSD ..............................................................................................................................606

    30.1. Servidores FTP ...............................................................................................................................60630.2. Uso de CVSup ................................................................................................................................606

    31. Bibliografa..................................................................................................................................................60731.1. Libros y revistas especficas sobre FreeBSD..................................................................................60731.2. Guas de usuario .............................................................................................................................60731.3. Guas de administrador...................................................................................................................60831.4. Guas de programadores .................................................................................................................60831.5. El sistema operativo por dentro ......................................................................................................60931.6. Referencia de seguridad..................................................................................................................60931.7. Referencia de hardware ..................................................................................................................60931.8. Historia de UNIX............................................................................................................................61031.9. Diarios y revistas ............................................................................................................................610

    A. Recursos en Internet .....................................................................................................................................611A.1. Listas de correo................................................................................................................................611A.2. Grupos de noticias de Usenet...........................................................................................................621A.3. Servidores WWW ............................................................................................................................622A.4. Direcciones de correo electrnico....................................................................................................624A.5. Cuentas shell ....................................................................................................................................624

    32. PGP keys .....................................................................................................................................................62532.1. Responsables...................................................................................................................................62532.2. Miembros del Core Team ...............................................................................................................626

    ndice.................................................................................................................................................................634Colofn.......................................................................................................................................................................644

    ix

  • Lista de tablas2-1. Ejemplo de inventario de dispositivos ...................................................................................................................122-2. Estructura de particiones del primer disco ............................................................................................................342-3. Esquema de particiones para varios discos............................................................................................................352-4. Nombres y funciones de las imgenes de FreeBSD 6.X and 7.X ..........................................................................823-1. Cdigos de dispositivos de disco.........................................................................................................................10118-1. Convenciones para nombrar discos fsicos........................................................................................................33629-1. Cableado de una conexin de cable paralelo para redes ...................................................................................59629-2. Direcciones IPv6 reservadas..............................................................................................................................599

    x

  • Prefacio

    A quin va dirigido este textoLa primera seccin de este libro est pensada para guiar a los recin llegados a FreeBSD durante el proceso deinstalacin y presentarles los conceptos y convenciones que dan entidad a UNIX. Para sacar provecho de estaseccin lo nico que el lector necesitar son ganas de explorar y habilidad para ir interiorizando nuevos conceptos amedida que le van planteando.

    La siguiente seccin, la segunda, mucho ms extensa, es una referencia completa de todo tipo de temas de interspara administradores de sistemas FreeBSD. Es posible que alguno de esos captulos requiera que previamente leaotros textos; si es el caso esto se anuncia en la sinopsis situada al principio de cada captulo.

    Hay una lista de fuentes de informacin adicionales en el Captulo 31.

    Cambios desde la segunda edicinEsta tercera edicin es la culminacin de ms de dos aos de trabajo de los miembros del FreeBSD DocumentationProject. Estos son los cambios ms importantes que encontrar en esta nueva edicin:

    Captulo 11, configuracin y adaptacin del sistema, ha sido ampliado con nuevos datos sobre el sistema degestin de energa y recursos ACPI, la utilidad del sistema cron y ms opciones de personalizacin del kernel.

    Captulo 14, seguridad, ha sido ampliado con informacin sobre redes privadas virtuales (VPN), listas de controlde accesos al sistema de ficheros (ms conocidas por ACL) e informacin sobre avisos de seguridad.

    Captulo 16, Mandatory Access Control (MAC), es un captulo nuevo. En l se expone qu es MAC y de quforma puede utilizarse en FreeBSD como complemento de la seguridad del sistema.

    Captulo 18, almacenamiento, se ha ampliado con informacin sobre dispositivos USB de almacenamiento,instantneas (snapshots) de sistemas de ficheros, sistemas de ficheros basados en ficheros y en red, y particionesde disco cifradas.

    Captulo 20, Vinum, es un captulo nuevo. Describe el uso de Vinum, un gestor de volmenes lgicos que permitedisponer de discos lgicos independientes de dispositivo, as como de RAID-0, RAID-1 y RAID-5 por software.

    Se ha aadido una seccin de depuracin de problemas al Captulo 25, PPP y SLIP.

    Captulo 27, correo electrnico, ha sido ampliado con informacin sobre el uso de MTA alternativos,autentificacin SMTP, UUCP, fetchmail, procmail as como otros temas avanzados relacionados con el correo.

    Captulo 28, servidores de red, es un captulo nuevo. En l se incluye informacin sobre la configuracin deApache HTTP Server, ftpd y cmo configurar Samba para su uso con clientes Microsoft Windows. Ciertaspartes de Captulo 29, networking avanzado, se han trasladado a este captulo para dar ms solidez al contenido.

    Captulo 29, networking avanzado, incluye en esta edicin nuevos datos sobre el uso de dispositivos Bluetoothen FreeBSD, la configuracin de redes wireless y el networking ATM (Asynchronous Transfer Mode).

    Se ha creado un glosario para disponer de una ubicacin centralizada donde encontrar definiciones de trminostcnicos que se utilizan a lo largo del libro.

    Las tablas e imgenes que aparecen en el libro han experimentado diversas mejoras estticas.

    xi

  • Prefacio

    Cambios desde la primera edicinLa segunda edicin fue la culminacin de ms de dos aos de trabajo de los miembros del FreeBSD DocumentationProject. Estos son los principales cambios que encontrar en esta edicin:

    Se ha creado un ndice completo.

    Todos los esquemas ASCII han sido reemplazados por diagramas grficos.

    Se ha aadido una sinopsis estndar a cada captulo donde se ofrece un breve sumario del contenido del captulo yqu se espera que sepa el lector para poder sacarle provecho.

    Se ha reorganizado de forma lgica el contenido en tres partes: primeros pasos, administracin del sistema yapndices.

    El Captulo 2 (instalacin de FreeBSD) ha sido reescrito completamente e incluye gran cantidad de capturas depantalla para facilitar su comprensin a los nuevos usuarios.

    El Captulo 3 (conceptos bsicos de UNIX) se ha ampliado con ms informacin sobre procesos, dmons yseales.

    El Captulo 4 (instalacin de aplicaciones) incluye informacin sobre la gestin de paquetes binarios. El Captulo 5, (El sistema X Window) ha sido reescrito totalmente, con especial nfasis en el uso de modernas

    tecnologas de escritorio como KDE y GNOME en XFree86 4.X.

    El Captulo 12 (El proceso de arranque de FreeBSD) ha sido ampliado. El Captulo 18 (Almacenamiento) ha sido el fruto de refundir el contenido de lo eran dos captulos sobre

    discos y copias de seguridad. Pensamos que estos temas eran ms fciles de entender si se trataban en unmismo captulo. Se ha aadido tambin una seccin sobre RAID (tanto hardware como software).

    El Captulo 24 (communicaciones serie) ha sido reorganizado y actualizado completamente con informacinsobre FreeBSD 4.X y 5.X.

    El Captulo 25 (PPP y SLIP) ha sido actualizado en gran parte. Se han aadido muchas secciones nuevas al Captulo 29 (Networking avanzado). El Captulo 27 (correo electrnico incluye ahora ms informacin sobre la configuracin de sendmail. El Captulo 10 (compatibilidad conLinux) se ha ampliado con informacin sobre la instalacin de Oracle y

    SAP R/3.

    En esta segunda edicin se incluyen tambin estos nuevos contenidos:

    Configuracin y adaptacin del sistema (Captulo 11). Multimedia (Captulo 7)

    Cmo se organiza este libroEste libro se divide en cinco secciones lgicamente distintas. La primera, primeros pasos, trata sobre la instalacin yel uso ms bsico de FreeBSD. Est pensada para que el lector los recorra en secuencialmente, aunque puede saltarsealgunos si tratan sobre temas que le resulten familiares. La segunda seccin, Tareas comunes, est dedicada a lascaractersticas de FreeBSD que suelen utilizarse con ms frecuencia. Esta seccin, as como las siguientes, pueden

    xii

  • Prefacio

    leerse en cualquier orden. Cada captulo comienza con una sinopsis sucinta en la que se describe el contenido delcaptulo y qu es lo que se espera que sepa el lector antes de leerlo. Esto se hace para dar ocasin al lector ocasionala que elija el captulo que ms pueda interesarle. La tercera seccin, Administracin del sistema, trata sobre diversosaspectos de la administracin del sistema. La cuarta seccin, Redes y comunicaciones, est dedicada al networkingy temas relacionados con los servidores. La quinta seccin dispone de apndices con informacin de referencia.

    Captulo 1, Presentacin

    Este captulo, como su nombre indica, presenta FreeBSD al usuario. En l se cuenta la historia del ProyectoFreeBSD, sus objetivos y su modelo de desarrollo.

    Captulo 2, Instalacin

    Gua al usuario a travs de un proceso completo de instalacin. Se explican tambin algunos aspectos avanzadoscomo la instalacin a travs de una consola serie.

    Captulo 3, Conceptos bsicos de UNIX

    Se explican los comandos ms bsicos y el funcionamiento del sistema operativo FreeBSD. Si ya se tieneexperiencia con Linux u otro tipo de UNIX posiblemente sea este un captulo que no deba leerse.

    Captulo 4, Instalacin de aplicaciones

    Se explica la instalacin de software desarrollado por personas ajenas al proyecto, tanto mediante la innovadoraColeccin de Ports de FreeBSD como mediante paquetes binarios estndar (packages).

    Captulo 5, El sistema X Window

    Describe el sistema X Windows en general y su uso en FreeBSD en particular. Describe tambin entornos deescritorio de uso comn como KDE y GNOME.

    Captulo 6, Aplicaciones de escritorio

    Se enumeran algunas aplicaciones de escritorio muy comunes, como navegadores web y suites ofimticas, ycmo instalar estas aplicaciones en FreeBSD.

    Captulo 7, Multimedia

    Trata sobre la configuracin la reproduccin de sonido y vdeo en su sistema. Describe tambin algunasaplicaciones de sonido y vdeo.

    Captulo 8, Configuracin del kernel de FreeBSDExplica bajo qu circunstancias tendr que configurar un nuevo kernel y facilita instrucciones detalladas para laconfiguracin, compilacin e instalacin de un kernel personalizado.

    Captulo 9, Imprimir

    Describe la gestin de impresoras en FreeBSD, abarcando aspectos diversos como las pginas banner, lascuentas de impresin as como la configuracin inicial.

    Captulo 10, Compatibilidad binaria con Linux

    Describe las caractersticas de compatibilidad con Linux de FreeBSD. Incluye tambin instrucciones detalladasde instalacin de varias aplicaciones Linux muy populares, como Oracle, SAP R/3 y Mathematica.

    xiii

  • Prefacio

    Captulo 11, Configuracin y adaptacin del sistemaDescribe los parmetros que los administradores de sistemas tienen a su alcance para hacer que FreeBSD rindaal mximo. Describe tambin los diversos ficheros de configuracin que se usan en FreeBSD y dnde estn.

    Captulo 12, El proceso de arranque en FreeBSD

    Describe el proceso de arranque de FreeBSD y explica cmo controlar este proceso mediante opciones deconfiguracin.

    Captulo 13, Usuarios y administracin bsica de cuentas

    Describe la creacin y gestin de cuentas de usuario. Trata tambin sobre la limitacin de recursos que puedeaplicarse sobre los mismos, as como otras tareas administrativas.

    Captulo 14, Seguridad

    Describe las abudantes herramientas diferentes que pueden ayudar a que su sistema FreeBSD est y permanezcaseguro. Entre ellas encontrar a Kerberos, IPsec y OpenSSH.

    Captulo 15, Jaulas

    Describe el uso de jaulas en FreeBSD y el avance que este framework supone respecto al tradicional uso dechroot que se haca en FreeBSD.

    Captulo 16, Mandatory Access Control

    Explica qu es Mandatory Access Control (MAC) y cmo puede usarse este mecanismo para hacer ms seguroFreeBSD

    Captulo 17, Auditora de eventos de seguridad

    Describe qu es la auditora de eventos en FreeBSD cmo instalarla y configurarla y cmo puedeninspeccionarse y monitorizarse dichas auditoras.

    Captulo 18, Almacenamiento

    Describe cmo gestionar medios de almacenamiento y sistemas de ficheros en FreeBSD, tanto discos fsicos,arreglos RAID, medios pticos o en cinta, como discos en memoria y sistemas de ficheros en red.

    Captulo 19, GEOM

    Trata sobre el framework GEOM de FreeBSD y cmo configurar con l alguno de los diversos niveles deRAID que admite.

    Captulo 20, Vinum

    Describe cmo usar Vinum, un gestor de volmenes lgicos que permite tanto el uso de discos lgicosindependientes de dispositivo, como RAID-0, RAID-1 y RAID-5 por software.

    Captulo 21, Virtualizacin

    Describe los sistemas de virtualizacin disponibles en FreeBSD y cmo utilizarlos.

    Captulo 22, Localizacin

    Describe el uso en FreeBSD de idiomas distintos del ingls. Trata tanto la localizacin del sistema como de lasaplicaciones.

    xiv

  • Prefacio

    Captulo 23, Lo ltimo de lo ltimo

    Explica las diferencias existentes entre FreeBSD-STABLE, FreeBSD-CURRENT y las releases de FreeBSD.Describe tambin qu tipos de usuario pueden beneficiarse de seguir el desarrollo contnuo del sistema en supropia mquina y muestra el proceso a seguir.

    Captulo 24, Comunicaciones serie

    Explica cmo conectar terminales serie y mdems a su sistema FreeBSD tanto para conexiones entrantes comosalientes.

    Captulo 25, PPP y SLIP

    Describe cmo usar en FreeBSD PPP, SLIP o PPP sobre Ethernet para conexiones a sistemas remotos.

    Captulo 27, Correo electrnico

    Detalla los distintos elementos que componen un servidor de correo electrnico y explica diversos aspectossencillos de la configuracin del servidor de correo ms extendido: sendmail.

    Captulo 28, Servidores de red

    En este captulo encontrar instrucciones detalladas y ficheros de configuracin de ejemplo que le permitirnconfigurar su sistema FreeBSD como servidor NFS, servidor de nombres, servidor NIS o de sincronizacin dehora.

    Captulo 26, CortafuegosExplica la filosofa que sustenta los cortafuegos por software y facilita informacin detallada sobre laconfiguracin de los distintos cortafuegos disponibles en FreeBSD.

    Captulo 29, Networking avanzado

    Describe diversos temas relacionados con el networking, desde compartir la conexin a Internet con otrasmquinas de su LAN a diversos aspectos avanzados del encaminamiento de trfico, pasando por las redeswireless, Bluetooth, ATM, IPv6 y mucho ms.

    Captulo 30, Cmo conseguir FreeBSD

    Enumera las diferentes fuentes desde la que puede conseguirse FreeBSD en CDROM o DVD, as como losnumerosos sitios de Internet desde los que puede descargar e instalar FreeBSD.

    Captulo 31, BibliografaEste libro toca tantos temas que es muy posible que el lector se quede a falta de una explicacin ms detallada.En la bibliografa muchos libros estupendos relacionados con el contenido de este texto.

    Apndice A, Recursos en Internet

    Describe los abundantes foros de que disponen los usuarios de FreeBSD para enviar preguntas y participar enconversaciones tcnicas sobre FreeBSD.

    Captulo 32, PGP Keys

    Lista las claves pblicas PGP de varios desarrolladores de FreeBSD.

    xv

  • Prefacio

    Convenciones usadas en este libroCon el nimo de mantener la consistencia y facilitar la lectura del texto se siguen varias convenciones a lo largo dellibro.

    Convenciones tipogrficas

    Cursiva

    Se usa un tipo de letracursiva cuando se citan nombres de fichero, URL, texto en el que se quiere hacer nfasis ycuando un trmino tcnico aparece por primera vez en el texto.

    Tipografa de mquina de escribir

    Se usa un tipo de letra de mquina de escribir cuando se muestran mensajes de error, comandos,variables de entorno, nombres de ports, nombres de mquina, nombres de usuario o de grupo, nombres dedispositivo, variables y cuando Se usa un tipo de letra monospaced cuando se muestran mensajes de error,comandos, variables de entorno, nombres de ports, nombres de mquina, nombres de usuario o de grupo,nombres de dispositivo, variables y cuando se muestran fragmentos de cdigo.

    Negrita

    Se usa un tipo de letra negrita en el nombre de aplicaciones, comandos y cuando se muestran claves.

    Datos que introduce el usuarioLas claves se muestran en negrita para distinguirlas de cualquier otro texto. Las combinaciones de teclas queimplican que sean pulsadas simultneamente se muestran con el smbolo + entre una y otra, como en:

    Ctrl+Alt+Supr

    Esto significa que el usuario debe pulsar las teclas Ctrl, Ctrl, Alt y Supr al mismo tiempo.

    Las teclas que deben pulsarse secuencialmente se separan con comas, como en este ejemplo:Ctrl+X, Ctrl+S

    Esto significa que el usuario debe pulsar simultneamente las teclas Ctrl y X y despus pulsar simultneamente Ctrly S.

    EjemplosUn comienzo como E:\> indica un ejemplo de comando de MS-DOS. A menos que se especifique otra cosa, estoscomandos deben ejecutarse en una terminal Command Prompt de un sistema Microsoft Windows moderno.E:\> tools\fdimage floppies\kern.flp A:

    Si hay un # indica que el comando debe ejecutarse como superusuario en FreeBSD. Puede acceder al sistema comoroot y ejecutar el comando o bien con su usuario habitual y utilizar su(1) para disponer de privilegios desuperusuario.

    # dd if=kern.flp of=/dev/fd0

    xvi

  • Prefacio

    Si el ejemplo comienza con un % indica que el comando puede ejecutarse en una cuenta de usuario normal. Salvo quese indique otra cosa se usa la sintaxis de C-shell para asignar valores a variables de entorno u otros comandos.

    % top

    AgradecimientosEste libro representa el esfuerzo de muchos cientos de personas del mundo entero. Tanto si fue en forma de correcinde errores de contenido como gramaticales, o bien fue un captulo entero lo que enviaron, toda contribucin ha sidomuy valiosa.

    Varias compaas han colaborado en el desarrollo de este documento pagando a tiempo completo a varios autores,financiando la publicacin, etc. En especial BSDi (posteriormente adquirida por Wind River Systems(http://www.windriver.com)) pagaron a varios miembros del FreeBSD Documentation Project por trabajar en lamejora lo que fue la primera edicin de este libro, que apareci en marzo de 2000 (ISBN 1-57176-241-8). Ademsde esto, Wind River Systems aport el dinero para que otros autores pudieran realizar gran cantidad de mejoras en laestructura de creacin de material listo para impresin y para pudieran aadir nuevos captulos. Este trabajo culmincon la publicacin de la segunda edicin impresa en noviembre de 2001 (ISBN 1-57176-303-1). En 2003 y 2004FreeBSD Mall, Inc (http://www.freebsdmall.com), pag a varios autores para que se dedicaran a lo que ser latercera edicin.

    xvii

  • I. Primeros pasosEsta parte del manual de FreeBSD es para usuarios y administradores nuevos en FreeBSD. El cometido de estoscaptulos es:

    Ofrecer una introduccin a FreeBSD.

    Guiar a travs de una instalacin de FreeBSD.

    Explicar conceptos bsica de Unix.

    Explicar cmo instalar la gran cantidad de software de terceros disponible para FreeBSD.

    Presentar una introduccin al manejo de X Window, el sistema de ventanas de UNIX, y detallar cmo configurarun entorno de escritorio ms productivo.

    Se ha intentado minimizar el nmero de referencias a otras secciones de este documento para evitar el salto entrepginas y facilitar la lectura continuada.

  • Captulo 1. IntroduccinReesctructurado, reorganizado y con algunas partes reescritas por Jim Mock.

    1.1. SinopsisGracias por su inters en FreeBSD. El siguiente captulo trata varios temas relativos al Proyecto FreeBSD, como suhistoria, objetivos, modelo de desarrollo, etc.Despus de leer este captulo sabr:

    Qu relacin guarda FreeBSD con otros sistemas operativos. La historia del Proyecto FreeBSD.

    Los objetivos del Proyecto FreeBSD. Los fundamentos del modelo de desarrollo de cdigo abierto de FreeBSD.

    Y por supuesto: de dnde procede el nombre FreeBSD.

    1.2. Bienvenido a FreeBSDFreeBSD es un sistema operativo basado en 4.4BSD-Lite para ordenadores Intel (x86 e Itanium), AMD64,Alpha y Sun UltraSPARC. Se est trabajando tambin en versiones para otras arquitecturas. Tambin puede leersobre la historia de FreeBSD, o sobre la distribucin actual. Si cree que puede ayudar al proyecto de algn modo(desarrollando cdigo, donando hardware, dinero, etc) consulte el artculo Contribuir a FreeBSD(../../articles/contributing/index.html).

    1.2.1. ?Qu puede hacer FreeBSD?FreeBSD tiene muchas caractersticas notables. Algunas de ellas son:

    Multitarea expropiativa con prioridades dinmicamente ajustadas para asegurar que distintas aplicaciones yusuarios compartan los recursos del sistema de un modo equitativo, incluso bajo la mayor de las cargas.

    Servicios multiusuario que permiten a mucha gente usar un sistema FreeBSD simultneamente para distintascosas. sto significa, por ejemplo, que los perifricos del sistema como impresoras y dispositivos de cinta soncompartidos adecuadamente por varios usuarios del sistema o la red, y que pueden establecerse lmites sobrerecursos concretos para usuarios o grupos de usuarios, protegiendo los recursos crticos del sistema de un usoabusivo.

    Conexin de redes TCP/IP muy robusta, con soporte para estndares industriales como SCTP, DHCP, NFS, NIS,PPP, SLIP, IPSec e IPv6. Esto quiere decir que su sistema FreeBSD puede interactuar fcilmente con otrossistemas y hacer de servidor en una empresa, proporcionando servicios clave como NFS (acceso a ficheros

    1

  • Captulo 1. Introduccin

    remotos) y servicios de correo electrnico, o proporcinando la presencia en Internet de su organizacin medianteWWW, FTP, servicios de encaminamiento y cortafuegos.

    La proteccin de memoria garantiza que las aplicaciones (o los usuarios) no se estorben los unos a los otros. Unerror catastrfico en una aplicacin no afecta al resto.

    FreeBSD es un sistema operativo de 32-bits (de 64-bits en Alpha, Itanium, AMD64, y UltraSPARC) y fuediseado como tal desde el principio.

    X Window System (X11R6), estndar de la industria, dota a los usuarios una interfaz grfica (GUI) por el coste deuna tarjeta VGA y un monitor comunes, y viene con los fuentes completos.

    Compatibilidad binaria con muchos programas nativos de Linux, SCO, SVR4, BSDI y NetBSD.

    Hay en Internet miles y miles de aplicaciones listas para su uso. FreeBSD es compatible a nivel de cdigo fuentecon la mayora de sistemas UNIX comerciales; por tanto la mayora de aplicaciones requieren poco o ningncambio para compilar en FreeBSD.

    En Internet hay miles de aplicaciones fciles de portar. El cdigo fuente de FreeBSD es compatible con el de lossistemas UNIX comerciales ms populares y por ello la mayora de las aplicaciones tan slo necesitan pocoscambios, si es que necesitan alguno, para compilar.

    El diseo de la memoria virtual con paginacin bajo demanda y de la cach unificada de VM/buffer satisface aaplicaciones que requieren grandes cantidades de memoria de forma eficiente aun dando respuestas interactivas aotros usuarios.

    Soporte para SMP en mquinas con mltiples CPUs.

    Una coleccin completa de herramientas de desarrollo en C, C++, Fortran, y Perl. Podr encontrar muchos otroslenguajes avanzados para investigacin y desarrollo tanto en la la Coleccin de Ports como en forma de packace.

    Disponer del cdigo fuente del sistema entero significa contar con el mayor nivel de control posible sobre suentorno. ?Para qu atarse a una solucin propietaria a merced de un fabricante cuando puede tener un verdaderosistema abierto?

    Documentacin exhaustiva en lnea.

    Y mucho ms!

    FreeBSD est basado en la versin 4.4BSD-Lite del Computer Systems Research Group (CSRG) de la Universidadde California en Berkeley, y contina la distinguida tradicin de desarrollo de sistemas BSD. Adems del excelentetrabajo del CSRG, el Proyecto FreeBSD ha invertido miles de horas en ajustar el sistema para conseguir unrendimiento y una fiabilidad mximas en situaciones de carga reales. Mientras que muchos de los gigantescomerciales se esfuerzan en dotar a los sistemas operativos para PC de esas caractersticas, rendimiento y fiabilidad,FreeBSD puede ofrecerlas ya!

    2

  • Captulo 1. Introduccin

    Los usos que pueda darle a FreeBSD se ven limitados tan slo por su imaginacin. Desde el desarrollo de programashasta la automatizacin de fbricas, desde control de inventarios hasta correccin de azimut de antenas de satlitesremotos; Si puede hacerse con un UNIX comercial lo ms seguro es que tambin pueda llevarse a cabo conFreeBSD. FreeBSD tambin hace buen uso de las literalmente miles de aplicaciones de alta calidad que sedesarrollan en centros de investigacin y universidades de todo el mundo, frecuentemente disponibles por poco oningn coste. Tambin existen aplicaciones comerciales, cuyo nmero aumenta cada dia.

    Dado que el cdigo fuente de FreeBSD est disponible para todo el mundo el sistema puede personalizarse en ungrado nunca visto para aplicaciones o proyectos especiales, y de maneras generalmente imposibles con los sistemasoperativos de la mayora de los fabricantes comerciales. Aqu damos tan slo una muestra de aplicaciones en las quese est usando actualmente FreeBSD:

    Servicios de Internet: La robusta conectividad TCP/IP integrada en FreeBSD hace de este sistema una plataformaideal para servicios de Internet como:

    Servidores FTP

    Servidores web (estndares o seguros [SSL])

    Cortafuegos y pasarelas NAT (enmascaramiento IP).

    Servidores de correo electrnico

    USENET y BBSs

    y muchos ms.

    Con FreeBSD puede empezar fcilmente con un pequeo y econmico PC de tipo 386 e ir actualizando su equipohasta un tetraprocesador Xeon con almacenamiento RAID a medida que su proyecto crezca.

    Educacin: ?Es estudiante de informtica o de algn campo relacionado con la ingeniera? No hay mejor modo deestudiar sistemas operativos, arquitectura de computadores y redes que la experiencia a bajo nivel que FreeBSDpuede aportar. Para aqullos cuyo principal inters en los ordenadores no es otro que el de poder realizar su trabajoexiste una serie de paquetes gratuitos de CAD, matemticas y diseo grfico que hacen de FreeBSD un sistemaverdaderamente til.

    Investigacin: Encontrndose disponible el cdigo fuente del sistema entero FreeBSD es una excelente plataformapara la investigacin en sistemas operativos y otras ramas de la informtica. El hecho de que FreeBSD estdisponible gratutamente hace posible que grupos remotos puedan colaborar con ideas o compartan desarrollos sintener que preocuparse de acuerdos de licencias especiales o de limitaciones acerca de lo que puede discutirse enforos pblicos.

    Redes: ?Necesita un nuevo router? ?Un servidor de nombres (DNS)? ?Un cortafuegos que haga ms segura sured interna? FreeBSD puede convertir ese PC 386 o 486 que tiene arrinconado en un router avanzado consofisticadas capacidades de filtrado de paquetes.

    3

  • Captulo 1. Introduccin

    Estacin de trabajo X: FreeBSD es una magnfica eleccin como terminal X de bajo coste gracias al servidor libreX11. A diferencia de las terminales X FreeBSD permite ejecutar muchas aplicaciones en local si as se quiere,aligerando de este modo la carga soportada por el servidor central. FreeBSD puede incluso arrancar sin disco,permitiendo que las estaciones sean an ms econmicas y fciles de administrar.

    Desarrollo de software: El sistema base de FreeBSD incluye una completa coleccin de herramientas dedesarrollo que incluyen el famoso compilador y depurador de C/C++ de GNU.

    Puede conseguir FreeBSD tanto en forma de cdigo fuente como binaria por FTP annimo o en CDROM. Por favor,consulte el Captulo 30 para ms informacin.

    1.2.2. ?Quin usa FreeBSD?Algunos de los mayores sitios web de Internet utilizan FreeBSD; he aqu algunos de ellos:

    Yahoo! (http://www.yahoo.com/)

    Apache (http://www.apache.org/)

    Blue Mountain Arts (http://www.bluemountain.com/)

    Pair Networks (http://www.pair.com/)

    Sony Japn (http://www.sony.co.jp/)

    Netcraft (http://www.netcraft.com/)

    Weathernews (http://www.wni.com/)

    Supervalu (http://www.supervalu.com/)

    TELEHOUSE America (http://www.telehouse.com/)

    Sophos Anti-Virus (http://www.sophos.com/)

    JMA Wired (http://www.jmawired.com/)y muchos ms.

    4

  • Captulo 1. Introduccin

    1.3. Acerca del Proyecto FreeBSDEn la siguiente seccin se explican ciertos aspectos bsicos del Proyecto, una breve historia, sus objetivos y elmodelo de desarrollo del mismo.

    1.3.1. Breve historia de FreeBSDElaborado por Jordan Hubbard.

    La gnesis del proyecto FreeBSD se remonta a comienzos de 1993, en parte como una extensin del Unofficial386BSD Patchkit debida a los tres ltimos coordinadores del patchkit: Nate Williams, Rod Grimes y yo mismo.

    Nuestro objetivo original era producir una instantnea de 386BSD intermedia para arreglar una serie de problemasque no se podan solventar con uno de nuestros parches. Quizs haya quien recuerde que el primer nombre delproyecto fue 386BSD 0.5 o 386BSD Interim debido a esto.

    386BSD era el sistema operativo de Bill Jolitz, que hasta ese punto haba estado sufriendo severamente lasconsecuencias de prcticamente un ao que ms valdra olvidar. A medida que el patchkit se iba haciendohaciendo ms incmodo cada dia que pasaba, as que acordamos ayudar a Bill con una instantnea del sistema. Estosplanes se vieron bruscamente interrumpidos cuando Bill Jolitz decidi repentinamente retirar su aprobacin alproyecto sin dejar ninguna indicacin clara de qu deba hacerse a continuacin.No tardamos mucho en decidir que el objetivo segua valiendo la pena, aun sin el soporte de Bill, as que adoptamosel nombre de FreeBSD, una idea de David Greenman. Nuestros objetivos iniciales se fijaron tras consultar a losusuarios del sistema y cuando qued claro que el proyecto estaba en marcha y que poda llegar a ser una realidadcontact con Walnut Creek CDROM con idea de mejorar los canales de distribucin de FreeBSD y hacer ms fcilllegar a aquellas personas que no tenan la suerte de tener acceso a Internet. Walnut Creek CDROM no solo nosayud con la idea de distribuir FreeBSD en CD; tambin facilit al Proyecto una mquina en la que trabajar y unaconexin rpida a Internet. Sin la fe casi sin precedentes que tuvo Walnut Creek CDROM en lo que era en aqulmomento un proyecto completamente desconocido, es bastante improbable que FreeBSD hubiera logrado tanto y tanrpido como ha logrado hasta el dia de hoy.

    La primera distribucin en CDROM (y disponible por la red) fue FreeBSD 1.0, publicado en diciembre de 1993.Estaba basado en la cinta de U.C. Berkeley del 4.3BSD-Lite (Net/2), con bastantes componentes de 386BSD y detrabajos proveniente de la Free Software Foundation. Fue un logro bastante apreciable para una primera versin;pronto le sigui FreeBSD 1.1 en mayo de 1994, que tuvo un gran xito.

    Por entonces se formaron unos inesperados nubarrones en el horizonte ya que Novell y la Universidad de Berkeleyresolvieron el largo juicio acerca del estatus legal de la cinta de Berkeley Net/2. Una condicin del acuerdo fue laconcesin por parte de Berkeley de que una gran parte de Net/2 era cdigo gravado y propiedad de Novell, quien asu vez lo haba adquirido de AT&T anteriormente. Berkeley obtuvo a cambio de Novell el beneplcito para que4.4BSD-Lite, cuando saliera, fuera declarado como no gravado y se instara a los usuarios de Net/2 a cambiar. Estorepercuti sobre el Proyecto FreeBSD, a quienes se dio hasta julio de 1994 para dejar de sacar su producto basado enNet/2. Bajo los trminos de aquel acuerdo se permita al Proyecto sacar una ltima versin antes de la fecha lmite:esa versin fue FreeBSD 1.1.5.1.

    FreeBSD tuvo entonces que acometer la ardua tarea de (literalmente) reinventarse a s mismo a partir de partesnuevas y bastante incompletas de 4.4BSD-Lite. Las versiones Lite eran ligeras en parte porque el CSRG deBerkeley quit grandes partes del cdigo necesario para construir un sistema que pudiera arrancar (debido a diversosrequisitos legales) y porque la versin del 4.4 para Intel era muy incompleta. Hasta noviembre de 1994 el proyecto alfin realiz esa transicin; apareci FreeBSD 2.0 en la red y (a finales de diciembre) en CDROM. A pesar de no estar

    5

  • Captulo 1. Introduccin

    suficientemente pulida esta distribucin fue un xito significativo, al cual sigui el ms robusto y fcil de instalarFreeBSD 2.0.5; era junio de 1995.Sacamos FreeBSD 2.1.5 en Agosto de 1996; pareci ser suficientemente popular entre ISPs y otras comunidadescomerciales como para que mereciera otra versin de la rama 2.1-STABLE. Fue FreeBSD 2.1.7.1, publicada enfebrero de 1997, que marc el final de la lnea principal de desarrollo en 2-1.STABLE. Una vez en puesta enmantenimiento, en esa rama (RELENG_2_1_0) slo se haran ya mejoras en seguridad y se corregiran errorescrticos.

    FreeBSD se ramific desde la lnea principal de desarrollo (-CURRENT) en noviembre de 1996 como la ramaRELENG_2_2, y la primera versin completa (2.2.1) sali en abril de 1997. Se hicieron ms versiones de la rama 2.2en verano y otoo de 1997, la ltima de las cuales (2.2.8) apareci en noviembre de 1998. La primera versin 3.0oficial sali en octubre de 1998 y marc el inicio del fin de la rama 2.2.

    El rbol se ramific de nuevo el 20 de Enero de 1999, dando lugar a las ramas 4.0-CURRENT y 3.X-STABLE. Apartir de la 3.X-STABLE sali 3.1 el 15 de febrero de 1999, 3.2 el 15 de mayo de 1999, 3.3 el 16 de septiembre de1999, 3.4 el 20 de diciembre de 1999 y 3.5 el 24 de junio de 2000. Pocos dias despus de esta apareci unaactualizacin menor, la 3.5.1, que incorporaba parches de seguridad de ltima hora para Kerberos. Esa fue la ltimaversin de la rama 3.X.

    Hubo otra ramificacin el 13 de Marzo de 2000 que dio lugar a la rama 4.X-STABLE. Ha habido varias versiones dela misma desde entonces: 4.0-RELEASE sali en marzo de 2000 y la ltima versin de la rama, 4.11-RELEASE,apareci en enero de 2005.

    La largamente esperada 5.0-RELEASE se anunci el 19 de enero de 2003, culminando casi tres aos de trabajo; estaversin situ a FreeBSD en el escenario del multiproceso avanzado y el soporte de hilos para las aplicaciones, eintrodujo soporte para las plataformas UltraSPARC y ia64. Sigui a esta la versin 5.1 lanzada en Junio de 2003. Laltima versin de 5.X como la rama -CURRENT fu 5.2.1-RELEASE, que sali en febrero de 2004.

    La rama RELENG_5, creada en agosto de 2004, desemboc en 5.3-RELEASE, que marc el inicio de la rama deversiones 5-STABLE. La versin 5.5-RELEASE ms reciente apareci en mayo de 2006. No aparecern msversiones a partir de la rama RELENG_5.

    El rbol se dividi de nuevo en julio de 2005, en esta ocasin para crear RELENG_6. 6.0-RELEASE, la primeraversin de la rama 6.X, apareci en noviembre de 2005. 8.3-RELEASE apareci en April 2012. Irn apareciendoms versiones a partir de la rama RELENG_6.

    La rama RELENG_7

    1.3.2. Objetivos del Proyecto FreeBSDTexto original de Jordan Hubbard.

    Los objetivos del Proyecto FreeBSD son producir software que pueda usarse con cualquier propsito y sin ningntipo de restriccin. Muchos de nosotros participamos de forma significativa en el cdigo (y en el proyecto) yciertamente no nos importara recibir una pequea compensacin econmica de vez en cuando, pero no vamos ainsistir en ello. Creemos que nuestra misin ms importante y primordial es facilitar el acceso al cdigo acualquiera, para lo que quiera usarlo y de forma que se use tanto y para sacarle tanto provecho para sea posible. Creoque ste es uno de los objetivos ms fundamentales del software libre y algo que nosotros apoyamos con entusiasmo.El cdigo fuente de nuestro rbol que se halla bajo la GNU General Public License (GPL) o la Library GeneralPublic License (LGPL) viene con algunas restricciones ms, si bien para garantizar acceso al mismo, y no alcontrario como es lo habitual. Debido a las complicaciones adicionales que pueden surgir en el uso comercial de

    6

  • Captulo 1. Introduccin

    software con licencia GPL preferimos que el software que incluyamos en el rbol venga bajo la licencia BSD, menosrestrictiva, siempre y cuando sea una opcin razonable.

    1.3.3. El modelo de desarrollo de FreeBSDTexto de Satoshi Asami.

    El desarrollo de FreeBSD es un proceso muy abierto y flexible: FreeBSD est literalmente compuesto de parteshechas por centenares de personas de todo el mundo, como puede verse en este texto(http://www.freebsd.org/doc/en_US.ISO8859-1/articles/contributors/article.html). la infraestructura de desarrollo delproyecto FreeBSD permite a estos cientos de desarrolladores trabajar a travs de Internet. Estamos buscandoconstantemente de nuevos desarrolladores e ideas. Las personas interesadas en vincularse ms al proyecto tienen queponerse en contacto con nosotros en la lista de correo de discusiones tcnicas en FreeBSD(http://lists.FreeBSD.org/mailman/listinfo/freebsd-hackers). La lista de anuncios importantes del Proyecto FreeBSD(http://lists.FreeBSD.org/mailman/listinfo/freebsd-announce) est a disposicin de quienes deseen dar a conocer aotros usuarios de FreeBSD grandes reas de trabajo.Veamos unas cuantas cosas tiles sobre el Proyecto FreeBSD y su proceso de desarrollo, ya sea trabajando de formaindependiente o en estrecha cooperacin:

    Los repositorios SVN y CVS

    El rbol central de cdigo de FreeBSD se ha mantenido mediante CVS (http://ximbiot.com/cvs/wiki/)(Concurrent Versions System, o sistema concurrente de versiones), una herramienta de control de cdigototalmente libre que forma parte de FreeBSD. En junio de 2008 el Proyecto adopt SVN(http://subversion.tigris.org) (Subversion). La necesidad de un cambio como este vena de largo a medida quelas limitaciones tcnicas que el uso de CVS impona se iban haciendo ms y ms obvias con la rpida expansindel rbol de cdigo y de la cantidad de historial de cambios que hay que almacenar y gestionar. Aunque elrepositorio principal use SVN las aplicaciones del lado del cliente como CVSup y csup, que dependen de lainfraestructura anterior basada en CVS, siguen funcionando normalmente; los cambios que se hacen en elrepositorio SVN se van replicando en el repositorio CVS con este fin. Actualmente (octubre 2008) solamente elrbol central de cdigo usa SVN. Los repositorios de documentacin, WWW y Ports siguen usando still usingCVS. El repositorio (http://www.FreeBSD.org/cgi/cvsweb.cgi) primario est alojado en una mquina en SantaClara (California, EEUU), que constituye el original del que todas las rplicas (a las que llamamos a vecesmirrors) son copias exactas actualizadas cada muy poco tiempo. El rbol SVN, que contiene tambin losrboles -CURRENT y -STABLE, puede replicarse muy fcilmente en local en su mquina. Consulte la seccinSincronizacin del rbol de cdigo para ms informacin.

    La lista de committers

    Los committers son la gente que tienen permisos de escritura en el los fuentes de FreeBSD (el trminocommitter viene de la orden commit de cvs(1), que sirve para hacer cambios en el repositorio CVS). Lamejor manera de enviar aportaciones para que sean revisadas por los committers es usar send-pr(1). Si le pareceque si pareciera que algo va mal en el sistema tambin puede enviar correo electrnico a la lista de correo paracommitters de FreeBSD.

    7

  • Captulo 1. Introduccin

    El Core Team de FreeBSD

    El Core Team de FreeBSD sera el equivalente a una junta directiva si el Proyecto FreeBSD fuese una compaa.La tarea principal del Core Team es la de garantizar que el Proyecto como un todo tenga salud y se mueva en lasdirecciones adecuadas. Otra de sus funciones es invitar a desarrolladores comprometidos y responsables a quese unan a nuestro equipo, adems de reclutar nuevos miembros del Core Team cuando alguno se va. El CoreTeam actual fue elegido entre un conjunto de candidatos committers en julio de 2008. Se celebran eleccionescada dos aos.

    Algunos miembros del Core Team tienen tambin reas especficas de responsabilidad, pues se encargan degarantizar que grandes secciones del sistema funcionen segn lo previsto. Hay una lista completa dedesarrolladores de FreeBSD con sus reas de responsabilidad en la lista de colaboradores(http://www.freebsd.org/doc/en_US.ISO8859-1/articles/contributors/article.html). .

    Nota: La mayora de los miembros del Core Team trabaja de forma altrusta en el desarrollo de FreeBSD yno reciben beneficio econmico del Proyecto; es por esto que compromiso no debe confundirse consoporte garantizado. La anterior analoga de la junta directiva en realidad no es del todo exacta; quizfuera ms acertado decir que esa es la gente que dedica su vida a FreeBSD en contra de lo que lesaconseja su propio sentido comn.

    Contribuidores externos

    Por ltimo, y no por ello menos importante, el mayor grupo de desarrolladores est formado por los mismosusuarios, quienes constantemente nos aportan comentarios y correccin de errores. La mejor manera de seguirde cerca el desarrollo (al estilo descentralizado de FreeBSD) es suscribirse a la lista de correo de discusionestcnicas en FreeBSD (http://lists.FreeBSD.org/mailman/listinfo/freebsd-hackers), que es donde se habla de estetipo de cosas. Consulte el Apndice A si necesita ms informacin sobre las diferentes listas de correo deFreeBSD.

    La lista de colaboradores es larga y no para de crecer. ?Por qu no apuntarse y hacer algo en FreeBSD hoymismo?

    Aportar cdigo no es la nica manera de ayudar al proyecto; hay una lista completa de tareas pendientes en elsitio web del Proyecto FreeBSD (http://www.freebsd.org/index.html).

    En resumen, nuestro modelo de desarrollo est organizado como un conjunto de crculos concntricos. El modelocentralizado est diseado pensando el la comodidad de los usuarios de FreeBSD, que as tienen un modo sencillode estar al dia con una base de cdigo central y por supuesto no para excluir a quien quiera ayudar. Nuestro afn esofrecer un sistema operativo estable con un gran conjunto de aplicaciones coherentes que los usuarios puedaninstalar y usar fcilmente (y este