Traducción(es): Dutch - English - Español - Français - Italiano - Polish - Русский - 简体中文

(!) ?Discusión


Una pregunta que podrías hacerte es ¿por qué Debian?, siendo que Debian es otra de las tantas distribuciones GNU/linux existentes y otro sistema igual a unix más. Entonces, ¿qué la hace mejor al resto? ¿Por qué debería usar Linux para todo?. Estas son algunas de las interrogantes que el documento mostrado en el enlace trata de explicar

http://people.debian.org/~srivasta/talks/why_debian/talk.html

No obstante, para asegurar que dicho documento esté disponible a todos, el mismo ha sido archivado acá.

¿Por qué Linux? ¿Por qué Debian?

Por Manoj Srivastava (srivasta at debian.org)

Quizás yo no sea la persona más indicada para hacer una comparación imparcial entre los sistemas operativos seleccionados, ya que, parcialmente, no soy imparcial y, porque, mi experiencia con otros sistemas operativos, diferentes a los de mi elección primaria, es muy limitada. Tampoco, quizás, sea el candidato ideal para abogar por mi elección, en tanto que las razones que he escogido no puedan ser definidas como universales, además de que el ambiente original sobre el que baso mi decisión (ya que existe un poco de inercia histórica que me mantiene donde estoy - quizás atascado en el tiempo) ya no existe.

No obstante, he intentado que esta disertación tenga una perspectiva más amplia que la mía y, para ello, he solicitado la opinión de otras personas que han hecho la misma selección; No obstante, en virtud de lo subjetivo que es esta discusión, hablaré, mayormente, desde mi perspectiva, y desde la perspectiva de aquellos que ya han seleccionado Debian.

Dada la naturaleza de la audiencia primaria de esta charla, no me detendré explicando mucho porque se debería seleccionar cualquier sistema operativo *nix sobre los sistemas operativos de Microsoft. Suficiente es decir que los siguientes criterios me han mantenido alejado de Windows: seguridad, flexibilidad, control de características, filosofía, costo, rapidez, eficiencia, confiabilidad, disponibilidad y elección de las aplicaciones de software a utilizar , susceptibilidad a gusanos informáticos y virus, apertura y rapidez en la resolución de problemas conocidos, clustering, sistema operativo multiusuario, no tener una GUI ('interfaz gráfica de usuario') y un navegador web como parte integral del sistema operativo.

http://www.michaelhorowitz.com/Linux.vs.Windows.html proporciona una comparación relativamente imparcial de Linux y Windows, y puede servir como una introducción de Linux a los usuarios de Windows.Tiene una inclinación más comercial de lo apropiado para esta charla (la preocupación del éxito de mercado de las distribuciones/compañías, por ejemplo).

Filosofía y Comunidad

En última instancia, la filosofía es el criterio más duradero de diferenciación entre los sistemas operativos que estamos considerando. Las cifras de rendimiento cambian. La facilidad de uso, la seguridad, la disponibilidad de software - todas estas características cambian con el tiempo, se tiene que salir y con el tiempo volver a evaluar.

Debo confesar que la filosofía y de la comunidad es lo que me llevó originalmente dentro del mundo Linux, y luego a Debian, y creo que siguen siendo los criterios más importantes, y son a menudo subestimados.

¿Por qué el software libre es algo bueno? Durante las casi dos décadas que he estado involucrado con el software libre, he pedido a la gente que conteste a esta pregunta (y muchas veces he quedado sorprendido por las respuestas). La respuesta popular parece ser debido a que es atractivo, o porque tiene costo cero. Las motivaciones de los autores también son variadas, pero la moneda con que se les paga a menudo es el reconocimiento, la fama del grupo de pares o por la experiencia de que pueden ser comercializados en el lugar de trabajo.

Pero creo que le falta la razón de ser fundamental para el software libre - el aspecto de estar sobre el hombro de gigantes. Me gusta tratar la analogía de la misma manera en que se lleva a cabo la investigación académica. Si los investigadores estuvieran condenados a reinventar la rueda y descubrir por sí mismos más allá todo lo que existía en los libros de texto, entonces el progreso en la comunidad de investigación se atrofiará. La mayoría de mis compañeros tuvieron su inicio en la investigación por hacer búsquedas en la literatura, en busca de investigaciones interesantes , y tal vez la correlación de los documentos relacionados, a partir de las ideas y técnicas de otros investigadores en el campo. El secretismo que envuelve la investigación en la mayoría de los laboratorios sólo existe hasta el momento de la publicación - y luego la gente comparte sus técnicas e ideas, y los resultados - de hecho, la reproducibilidad es un criterio importante de éxito.

Contraste esto con el software propietario, donde todos empezamos al principio -- Creo que podríamos salir disparados, con tan solo poder compartir libremente y construir sobre las ideas y trabajos de otros. Esto reduciría los tiempos esfuerzo y costes de la innovación, permitiendo a las mejores prácticas y patrones de diseño desarrollarse y madurar, y la programación bruta que crea barreras para desarrollar soluciones en casa.

Debemos asegurar que el incentivo para el éxito aun existe (y no necesita ser puramente un motivo de lucro).

Esta creencia me llevó a escoger la GPL, y la visión de las cosas de la "Free Software Foundation", en oposición a la licencia BSD, la cual también es licencia de software libre, y ello me abocó a escoger en cierto momento Debian. Según mi opinión personal, la licencia BSD versa más sobre el orgullo personal al escribir software libre, sin importarle donde acabe el software; Yo quiero más que eso. Quiero que mis trabajos ayuden a construir una comunidad de sinergias; que retroalimente un pozo que mane software útil.

Debian es un ejercicio de construcción de un granero comunitario; juntos, podemos alcanzar más que por nuestra cuenta. El contrato social de Debian es un factor importante en mi elección de Debian, con su mezcla de compromiso con el software libre, y reconocimiento pragmático de que habrá casos en los que la usabilidad demande software que no cumpla nuestras pautas.

La comunidad es otra razón por las que fui a Linux en vez de a los de BSD. En ese momento estaba buscando un SO como UNIX libre para poner en mi nuevísimo 386 dado por la universidad, los de BSD eran bastante mas robustos, y funcionaban mucho mejor, y tenia amigos que juraban lealtad por los BSD. Lo que me echo para atrás fue la estructura de sistema piramidal que permeaba la comunidad BSD. Estaban los desarrolladores principales en la cima, y te tocaba entrar con los novatos que pretendían ser contribuidores. La comunidad Linux, aunque bulliciosa, parecía ser más incluyente -- el pedigrí importaba menos que el código que producías. Y podía contribuir inmediatamente a desarrollar el SO que iba a manejar. Creo que esa es otra razón por la que me gusta Debian -- Ya llevo bastante como para guiarlo en ser el SO que se hace del modo que pienso.

Utilidad y usabilidad

Asumiendo que no he perdido a los pragmáticos entre ustedes, los criterios que la mayoría tenemos mas altos cuando escogen un SO son, tras el coste, la utilidad y la usabilidad. Por supuesto, la utilidad depende de cuales son sus objetivos y requisitos, pero hay amplias áreas que podemos abordar.

Hay mucho más con respecto a un SO que un núcleo con un puñado de software por encima - la integración de sistemas es un asunto al que se le presta poco caso cuando se discute de los méritos del SO. Pero un sistema bien integrado -en donde cada pieza se ajusta acomodándose a otras partes del sistema - aumenta su utilidad sobre los que no.

Debian, por mi experiencia,y la de otros muchos de mis encuestados, es el SO mejor integrado que hay. Los paquetes de Debian siguen sus relaciones entre ellos no meramente a través de un sistema plano de un mecanismo de dependencias/conflictos, sino por un conjunto mas rico de relaciones matizadas - Predependencias, dependencias ordinarias, recomendaciones, sugerencias, conflictos, y relaciones mejoradas. Aparte de esto, se categorizan los paquetes de acuerdo a la prioridad (Essential a través de los extra), y su función. Esta riqueza de relaciones, de las cuales el sistema de empaquetamient0 esta atento y les presta atención, indica el nivel al cual los paquetes encajan unos con otros.

Debian se desarrolla por unos 1000 voluntarios. Lo que significa que cada desarrollador es libre de mantener programas en los que esté interesado o necesite para una tarea en especial de su vida real. Eso es por lo cual Debian es capaz de cubrir diferentes campos de especializaciones - sus desarrolladores justo quieren solucionar sus propios problemas especiales. Este amplio enfoque es diferente de las distribuciones comerciales las cuales justo intentan cubrir las tareas más comunes.

He encontrado que las máquinas Debian del trabajo necesitan menos cuidados, son más fáciles de actualizar, y justamente no se estropean con tanta frecuencia como las de Red Hat y Mandrake que gestiono. Me han dicho que tratar con SunOS, por ejemplo, es bastante mas, humm, interesante.

Una de las razones para seleccionar Debian sobre otras distribuciones es la inmenso tamaño del proyecto lo que fuertemente sugiere que Debian no desaparecerá de repente y uno se quedará sin soporte. Debian no puede quebrar en bancarrota. Su contrato social no permite al proyecto decidir abruptamente dejar de dar soporte a las versiones no empresariales de la distribución. ¡Yo no quiero que mi SO sea rehén del plan de negocio de nadie!

Se puede afinar el grado de riesgo que se quiera tomar, ya que Debian presenta tres publicaciones separadas: Stable (estable), Testing (pruebas), y Unstable (inestable). En algunas de nuestras máquinas (el servidor, las máquinas quiosco) ejecutamos 'stable'. Algunos otros sistemas (estaciones personales de trabajo) ejecutan varias combinaciones de testing/unstable. (Note que no existen actualizaciones de seguridad para testing). Yo ejecuto alguna cosa de experimental en mi estación de trabajo misma. Lo que es genial es la capacidad de graduar decisiones finamente para diferentes máquinas que sirvan para diferentes funciones. Pero incluso las elecciones más aventuradas son suficientemente solidas como para que virtualmente nunca se estropeen. Y `stable' nunca se estropea ;-).

Debian proporciona una gran cantidad de retroalimentación hacia arriba. Por ejemplo, el proyecto XFree no se mantiene o depura X por si mismo en todas las arquitecturas que Debian soporta -- delega en Debian para eso. Ha habido un montón de arreglos profundos a libc (hubo una fallo de contabilidad de referencias reciente en glibc cuando dlopening un objeto compartido con ciertas dependencias ELF descubierto por los desarrolladores de Debian). Esta atención por el detalle es difícil de conseguir en cualquier otra distribución Linux. El nivel de ayuda con conocimiento, rápida y amistosa disponible para el usuario final es justamente extraordinaria -- y nada que haya sido capaz de coincidir de las clásicas empresas comerciales como DEC -- a menos que les estés pagando muchísimo dinero. Esto puede proporcionar soluciones, por terceros, sin pericia local, para negocios que se formen sobre Debian.

Para sistemas derivados, DFSG y "main" simplifican la construcción de sistemas con licencias predecibles.

Calidad de implementación

La gente dice a menudo cómo llegaron a Debian debido a apt-get, o que apt es la aplicación indispensable de Debian. Pero apt-get no es lo que hace la experiencia tan grande: apt-get es una característica prontamente reproducida (y, en mi opinión, nunca igualada), por otras distribuciones -- llámese urpmi, apt4rpm, yum, o lo que sea. El factor diferencial es la política de Debian, y el riguroso proceso de calidad del formato de paquetes (mire cosas como apt-listchanges, apt-list-bugs, dpkg-builddeps, pbuilder, pbuilder-uml -- ningina de las cuales podría ser implementada tan preparada faltando una política (imagine listchangelog sin un robusto formato de registro de cambios)). Es realmente realmente realmente fácil instalar software en una máquina Debian .

Esto parece las religiones de culto del cargamento (http://en.wikipedia.org/wiki/Cargo_cult): esto es que, apt-get es el aspecto visible del sistema de políticas de Debian, del mismo modo que las prácticas de culto-al-cargamento veían las pistas de aterrizaje y otras características como el origen de los dioses occidentales ("cargamento"), y construían sus réplicas, completas com falsos auriculares de madera para las torres de control. Del mismo modo, otras distribuciones han creado el aspecto hueco visible de la infraestructura de empaquetamiento de Debian, sin profundizar en las cuestiones de política. Peor: los conflictos de los requisitos técnicos y los imperativos de mercadotecnia y económicos a menudo funcionan con propósitos opuestos. Menos perversamente para la mayoría de las distribuciones GNU/Linux que para el software privativo, pero aun así claramente presentes.

Red Hat, Mandrake, y otras distribuciones en el aula tienen realmente instalaciones base masivas. ¿Porqué? Creo que se debe a que es un "PITA" instalar software. Incluso con RPM, es un procedimiento farragoso, imposible de codificar. Con Debian, era un soplo de brisa.

Así pues la aplicación imprescindible es realmente la política de Debian, el equipo de seguridad, los mecanismos formales de prioridad de fallos, y la política sobre fallos (dígase: cualquier binario sin página man da automáticamente un informe de bug. Cualquier interacción con que el usuario no use debconf es un bug). Tal como lo pone la pagina Wiki de Porqué mola Debian( Why Debian Rocks) (http://twiki.iwethey.org/Main/WhyDebianRocks):

Esta es la cruz, el nártex, el corazón palpitante de Debian y lo que lo hace ulteriormente superior a todos los demás SO. La Política queda definida. Está clara. Se fuerza sobre las herramientas que usa a diario. Cuando pide apt-get install foo, no está solamente instalando software. Está aplicando la política - y el objetivo de esa política es darle el mejor sistema posible.

Lo que la Política define son los límites de Debian, no las acciones propias de ud. sobre el sistema. La Política declara qué partes del sistema  puede cambiar el sistema de gestión de paquetes, y qué no, cómo manipular los ficheros de configuración , etc. Delimitando el alcance de la distribución de este modo, es posible para el administrador hacer modificaciones fuera de ese área sin temor a que los paquetes de Debian afectaran a tales cambios. En esencia, la Política introduce una nueva clase de bugs, los errores de política (policy bugs). Los errores de política son críticos para la publicación -- un paquete que viole la política no se incluirá en la publicación oficial estable de Debian.

Déjeme que lo reitere, puesto que este es el secreto en concreto: Un paquete que viole la política no será incluido en la publicación oficial estable de Debian.

Añádale a eso que el equipo de calidad de Debian que hace las cargas de no mantenedor (NMU non maintainer uploads), ayuda con la limpieza de bugs, realiza actualizaciones de seguridad, y asegura que ha alguien mirando el sistema holísticamente, y trabajando para crear un SO integrado, en oposición a simplemente arreglar paquetes individuales de modo aislado. Esto es lo que a la gente le hace dar juramento por Debian. Hay un montón de herramientas en el subsistema de calidad que ayudan a los desarrolladores a cuidar de sus paquetes -- justo mire en http://qa.debian.org/developer.php?login=srivasta

El proceso de evaluación en el que cada paquete tiene que someterse a la distribución inestable antes de pasar a la de pruebas suma en calidad al producto final. Una vez que el paquete no ha mostrado ningún problema importante durante cierto periodo, pasa a la distribución de pruebas. Esta distribución es la candidata a publicación para la futura distribución estable, la cual se publica solo cuando todos los bugs críticos de la publicación han sido resueltos. Este cuidadoso proceso de pruebas es la razón por la que Debian tiene un mayor ciclo de publicación que otras distribuciones. Sin embargo, en términos de estabilidad esto es una ventaja. (Note: RH Enterprise Linux está aparentemente apuntando a ciclos de publicación cada 12 - 24 meses. Más cerca de lo que ha tenido históricamente Debian.)

El hecho de que Debian de soporte a tantas arquitecturas como lo hace también alimenta la calidad de los paquetes: Migrar software a menudo destapa fallos en el código existente. Añada el hecho de que todo el software pasa por un endurecimiento de unos 10, o así, demonios de construcción automática, y necesita estar libre de bugs cuando se construyen en esos otros entornos, requiere que los scripts de construcción e instalación sean muy robustos, y requiere un seguimiento muy estricto de las dependencias en el momento de construcción. Añada espejos de archivos de fuentes y seguimiento de versiones, y tiene un sistema completamente robusto (snapshot.debian.org permite revertir fácilmente)

El sistema de seguimiento de fallos de Debian es clave para la calidad de la distribución. Ya que las publicaciones están ligadas a cantidades de bugs de publicación críticos del sistema, asegura que la calidad de la publicación es mejor que cualquier UNIX propietario que yo haya usado. El gestor de publicaciones (Release Manager) es completamente implacable con deshacerse de paquetes no esenciales que tengan RC bugs si no se arreglan -- o retrasando la publicación si es un paquete crítico el que tiene el fallo.

Comparada con distribuciones comerciales de Linux, Debian tiene un mayor ratio de desarrolladores por paquete. Añadida la falta de fechas de plazo impuestas por un ciclo de negocio, Debian tiende ha hacer las cosas bien, en vez de hacer cosas para conseguir una versión nueva a tiempo para Navidad.

De acuerdo con una historia reciente de Slashdot, hay más distribuciones basadas en Debian ahora de las que existen del lider del mercado, ?RedHat (63 y subiendo, incluyendo Ubuntu, Xandros, Knoppix, Lycoris, Lindows (Lind--s ?), Libranet, mophix ...).

La recuperación de fallos es absolutamente imbatible (véase http://www.linuxworld.com/story/32607.htm) Véase también el script (http://linuxmafia.com/faq/Debian/package-database-rebuild.html) sobre recuperar un sistema Debian sin tener respaldo de /var/lib/dpkg.

Conjunto de características y selección de Software

Debian ahora tiene más de 10000. Hay posibilidad de que todo lo que necesite ya esté empaquetado e integrado en el sistema, con una persona dedicada a mantenerlo (y una pequeña cantidad de otros paquetes) actualizado, integrado, y libre de errores.

Debian tiene un enorme esfuerzo de internacionalización, traducciendo no sólo la documentación (tengo gente que me envía páginas de manual traducidas para paquetes que mantengo), sino también de scripts de configuración e instalación (toda la interacción de debconf puede ser completamente internacionalizada). Ayuda el tener una comunidad masiva y geográficamente distribuida -- tenemos gente nativa que hablan toneladas de idiomas. Creo que el esfuerzo de internacionalización de Debian está a la par con el que hay para Gnome y KDE.

Otras cosas notables, para las cuales dispongo de poco tiempo para darles la atencion apropiada, son: El proyecto de documentación de Debian, Alioth, el instalador de Debian, Debian CD, Lintian, y el sistema de seguimiento de paquetes.

Algunas otras cosas que me mantendrán usando Debian hasta que sean soportadas por otras también:

  1. debconf y la capacidad de pre-sembrar la base de datos
  2. make-kpkg cono todos los avisos apagados en tiempo de instalación
  3. /usr/share/doc/{Changelog.Debian,changelog,copyright,README.Debian}

Debian también tiene un gran conjunto de herramientas para el kernel o hackers de distribución y integradores de sistemas debbootstrap, chroots, Linux en modo usuario, Xen. Todo tipo de esmeradas herramientas para ayudar a hackear en mecanismos de instalación, kernels y controladores.

Existen cantidad de comunidades nicho que han hallado un hogar con Debian. Estos son subproyectos; Debian-Jr, Debian-med, Debian-Edu, Debian-non-profit, y Debian-lex. Cantidad de desarrolladores de Debian son ciegos, y como resultado, Debian es muy muy amistoso para con los ciegos. Hay material adicional sobre distribuciones Debian personalizadas (http://people.debian.org/~tille/debian-med/talks/paper-cdd/debian-cdd.html/)

Kernels

Los kernels de BSD, desde cualquier punto, parecen más estables, y de mejor calidad que lo que parecen ser los kernels de Linux. Los BSD kernels son mucho más fáciles de leer y entender. La otra cara de la moneda, los Linux kernels son más ricos en características, y la calidad ha mejorado significativamente, parecen rendir mucho más y tener mejor soporte de hardware del que tienen los BSD kernels. De hecho, he escuchado comentarios que en lo que concierne a soporte de controladores, los BSD están donde Linux estuvo hace 5 años. Hablaré más sobre el soporte de hardware después. Personalmente, la supuesta falibilidad de los kernels Linux no ha superado mi nivel de aceptabilidad. Y, sobretodo,no creo que un cacharro Debian se sienta menos robusto y estable que, digamos, un cacharro FreeBSD. Por supuesto, la reciente ola de agujeros en los núcleos de Linux están empezando a forzar eso. (Sin embargo, deberíamos recordad que tener mas características es un factor contributivo: los últimos agujeros estaban en la llamada mremap(2) que no está disponible en ningún *BSD.)

Por supuesto, Debian Gnu/FreeBSD puede proporcionar lo mejor de ambos mundos.

Área de usuario (User Land)

El área de usuario de BSD es diferente de la de GNU. He crecido con el área de usuario de GNU instalada en cacharros Ultrix/Aix/HP-UX por consistencia, y para mí el área de usuario de GNU se siente mucho más cómoda.

Debería hacerse saber que se puede instalar el área d eusuario de GNU en un cacharro BSD, y cantidad de gente lo hace (/usr/local/gnu/*, por ejemplo). Sobre las instalaciones que tienen ambos conjuntos instalados, los informes dicen que la base de usuarios mayoritáriamente usa las utilidades GNU, incluso aunque no son las predeterminadas. En general, las utilidades FreeBSD parecen ser más ligeras pero de peores características, y en el hardware moderno los ahorros peuqeños de memoria ya no cuentan.

Tampoco ayuda que no provean de buena ayuda de línea de órdenes; es más fácil decirle a un novato que si escribe foo --help tendrán algo que probablemente les sea útil.

El área de usuario básica de OpenBSD es bastante completa. Yo prefiero el área de usuario GNU porque estoy acostumbrado a ella, pero el sistema base de OBSD es bastante funcional. FBSD es harina de otro costal- En FBSD se esfuerzan por producir un sistema base mínimo, y no esperan que la gente sólo use eso - esperan que la gente se instale muchas migraciones. FreeBSD se convierte en el sistema más como Debian de la familia BSD - se tiene un sistema base y se construye sobre ello. Su área de usuario es lo que se quiera escoger.

Mantenimiento y administración

Las actualizaciones se han dicho que son la ventaja clave competitiva de Debian. Más que de la mayoría de otros SO, la red es el mecanismo de distribución y actualización para Debian. La política, el pensamiento que ha ido dentro de los scripts de mantenedores, y las formas en las que se pueden usar, la completa ordenación topográfica sobre la tela de araña de dependencias hecha por apt y amigos, todo trabaja conjuntamente para asegurar que las actualizaciones que haya funcionen suavemente (Nunca he tenido que reinstalar mis máquinas, aunque algunas han sido actualizadas en el sitio durante más de 5 años). Reinstalaciones no son inéditas en el camino de una actualización recomendada de BSD (Desde 2.8 o 2.9, OpenBSD dijo al menos dos veces a los usuarios "Actualizar no se soporta / no se recomienda, haga una instalación fresca").

Esta facilidad de actualizar también participa en la seguridad del sistema; las actualizaciones de seguridad son mucho más convenientes en Debian de lo que puedan ser en otros sistemas, gracias al Equipo de Seguridad. Para nosotros meros mortales no puestos en vendor-sec, tener security.debian.org en nuestras fuentes asegura que nuestros cacharros se actualicen convenientemente y velózmente, tras que se haga público cualquier exploit -- puesto que el equipo de seguridad estaba trabajando en un arreglo antes de que se hiciesen públicos los detalles. Esto significa que los sistemas se actualizan en minutos, mientras que el modo recomendado de hacer una actualización en SO de BSD involucra recompilar el sistema entero (al menos, el "world").

Debian intenta asegurar suaves actualizaciones evitando una publicación mayor - Lo cual no es algo que yo haya visto soportado en ningún otro lugar. Sigo refiriéndome a la calidad de empaquetamiento.

Administrar Debian es la razón primaria por la que la mayoría de la gente se queda con ella. No conozco otra distribución donde puedas escribir apt-get install sendmail, y marcharte con un servidor de correo totalmente funcional, completo con SASL y TLS, totalmente configurado, completo con certificados. Toda la administración puede hacerse sobre SSH dadas las velocidades de módems telefónicos.

Debian garantiza que se preservarán los cambios por los usuarios a los ficheros de configuración, y que todos los ficheros de configuración convivan en /etc (en oposición a estar por todo el sistema de archivos) hacer más fácil respaldar en copias de seguridad (tengo mi /etc viviendo bajo un sistema de control de versiones).

Debian cumple con la FHS, y el cumplir con LSB es un objetivo de publicación.

La naturaleza distribuida del desarrollo y distribución de Debian hace muy fácil establecer un repositorio separado de paquetes personalizados que pueden entonces ser distribuidos en casa; y los mecanismos de política y construcción aseguran que terceros puedan construir el sistema con la misma facilidad de una manera reproducible.

Portabilidad y soporte de hardware

Linux tiende a soportar más hardware esotérico de lo que soporta BSD. Si es o no un problema, depende de las necesidades de usted. El soporte para hardware de alta calidad es mayoritariamente lo mismo. Una excepción notable es para el hardware RAID; las tarjetas RAID de terceros están empezando a ser soportadas en BSD, pero han estado soportadas por un largo tiempo en Linux. La seguridad de que IBM de soporte Linux de todo su hardware, y también el de HP, es una ventaja para Linux. También me gustan los sistemas de ficheros de diarios múltiples (multiple journaling file systems) que han llegado recientemente al kernel Linux. Para el escritorio, el factor imprescindible son los controladores. Y linux deja atrás a todos los otros X86 Unixes por una gran distancia.

En lo que viene a ser portabilidad, NetBSD se supone que es el prototipo. Sin embargo, fui y di un buen y duro vistazo a lo que se soporta por NetBSD, y Debian: He encontrado que Debian soporta ibm s/390 y ia64, mientras que NetBSD tiene soporte para sun2 (m68010), PC532 (lo que quiera que sea [aparentemente una máquina personalizada e la cual se hicieron solo 200 modelo]), y VAX. Estoy seguro de en cual conjunto estoy más interesado (aunque sería una pasada tener un VAX holgazaneando por ahí en el sótano). Note que lo que NetBSD llama arquitecturas son con frecuencia tildadas de subarquitecturas por Debian, y por tanto no cuentan en las 11 arquitecturas soportadas contadas.

Construcciones fuente

He oído un montón de cosas sobre los mecanismos de migración de BSD, y los sistemas de migración de Gentoo. También he oído acerca de como la gente tiene problemas realmente al conseguir que compilen las cosas en el sistemas de migración. Aparte del hecho de que compilar todo, rápidamente se queda anticuado (he pasado por eso, cuando utilicé la distribución Soft Landing Systems (SLS) allá por el '93).

No es como si no se pudiera hacer una migración como auto construcción de Debian -- tenemos autoconstructores en 11 arquitecturas que lo hacen, contínuamente, cada día -- la pregunta es porque se querría hacerlo? Tengo que ver un único test replicable que demuestre una mejora de rendimiento palpable por compilaciones optimizadas a nivel local -- y ciertamente ninguna justifica, a mis ojos, el tiempo pasado ajustando y construyendo por completo el software.

Algunos dirían que cuando eran jóvenes y sentían la necesidad de hacer alguna broma ajustarían algunos parámetros sin sentido en el ordenador de otra persona y les dirían que "esto va a hacer que corra un 5% más rápido, pero probablemente usted no lo va a notar". Con tal desafío les responderían normalmente volviéndose totalmente convencidos de que sus máquinas habían sido mejoradas considerablemente y ¡que podrían notar la diferencia del 5% !

La sabiduría convencional parece indicar que los incrementos de rendimiento general del sistema son menores al 1%. Programas específicos pueden beneficiarse grandemente, aun así, y siempre se puede afinar una aplicación crítica para tu entorno en Debian. Creo que cualquiera que sea el tiempo salvado por la ejecución es más que compensado por el tiempo invertido en la construcción del sistema, y construir actualizaciones del sistema (he oído de gente corriendo en segundo plano la construcción de su actualización mientras hacen otras cosas en primer plano.)

Sin mencionar como la integración sufre por no tener una ubicación central donde la interoperabilidad de las piezas puedan ser también comprobada, ya que cada sistema diferiría salvajemente del de referencia.

Un sistema de construcción fuente es también bastante más problemático cuando se trata de actualizaciones mayores -- Tengo evidencia anecdótica de que ello no es tan seguro y sensato como los mecanismos de actualización de Debian.

De todas formas, si quiero construir paquetes desde las fuentes en Debian, puedo usar apt-get source -b, apt-src, o cualquiera de las numerosas herramientas. Y en haciendo construcciones locales confío en que los deb localmente construidos se instalarán de un modo seguro y sensato, reemplazando apropiadamente las cosas viejas. La construcción meterá las dependencias requeridas de las que dependa, y yo rutinariamente construyo en pbuilder-user-mode-linux para asegurar construcciones uniformes.

El punto real aquí es que Gentoo es una distro para aficionados y usuarios duros de Linux y übergeeks, que puedan permitirse el tiempo de construir sus propias aplicaciones. Sé que Gentoo también provee binarios precompilados -- pero ¿no elimina eso su supuesta ventaja? Para un entorno de empresa donde el tiempo de parada cuesta dinero esto simplemente es inadmisible y Debian provee la mejor solución. Aquellos de nosotros que administremos mas de un puñado de máquinas podemos realmente apreciar cuan conveniente es ser capaz de emitir apt-get update && apt-get upgrade de un golpe en vez de tener que descargar, configurar, compilar e instalar software máquina a máquina, sin ningún timpo de ayuda automatizada ( No estoy haciendo justicia total con emerge / portage aquí, pero está claro el punto, espero ). Puedo enfatizar esto lo suficiente: para uso "serio"/de producción, las distros binarias son la mejor y única solución viable; Entre todas ellas, Debian ( no solo debido a APT pero también debido a todo el duro trabajo hecho por DD para asegurar la corrección del empaquetamiento) es la mejor [he probado SuSE, ?RedHat y Mandrake, y no regresaría a ninguan incluso si me dieran mucho dinero; Gentoo tampoco es una opción]

Seguridad y confiabilidad

Siempre hay un intercambio entre seguridad y conveniencia -- El más seguro de los ordenadores es aquél que no nunca sea encendido. Seguro, pero no muy útil. Se debe decidir dónde reside la zona de confort.

¿Qúe se piensa cuando uno dice seguridad y un SO como Unix? OpenBSD, con alguna justificación. Está auditado y tiene un pequeño tamaño, pequeños requisitos de sistema Y la instalación basada en puro texto. Ajustándose al centro de la instalación, se tiene un sistema auditado, sin servicios encendidos por defecto y la aseguración de que no hay agujeros en la instalación por defecto que puedan dirigir a un comprometer remotamente el root. Sin embargo, se tiende a acabar con software viejo, y la instalación por defecto realmente hace muy poco. W^X y protección contra desbordamientos de pila (?ProPolice) en OpenBSD http://www.openbsd.org/33.html, y parches de protección de ejecución exec-shield y Adamantix (PaX) para Linux (puede que tengas que recompilar el kernel de Debian para estos). La mayoría de la gente está de acuerdo con que la porción segura y auditada de OpenBSD no proporciona todo el software que se pide. También, los números de rendimiento de OpenBSD son, humm, pobres, comparados con SELinux en un kernel 2.6.3.

La reputación como seguro de OpenBSD esta justificada -pero solo cuando conoces el proyecto, cuando estás completamente familiarizado con lo que realmente cubre. OpenBSD puede ser un gran cortafuegos, puede que también un gran servidor de correo o de web estático - Siempre y cuando se mantenga fuera del árbol de migraciones, se tiene un sistema auditado, al tanto de la seguridad. Conozco pocas aplicaciones, sin embargo, para tal sistema. la migración de la zona de usuario de OpenBSD se estropea más a menudo que la Debian estable -- pero, en OpenBSD, las migraciones no son oficialmente parte del sistema, caso de que aparezca un problema de seguridad en una de ellas, estará es sus manos.

Discutiblemente, Debian estable iguala o supera esas mismas expectativas -- y parece haber poca diferencia en el mundo real entre Debian y OpenBSD esta vez. Uno tiene que trabajar un poco para endurecer la instalación por defecto del sistema Debian justo con las paquetes estándar de prioridad, paro eso lleva unos pocos minutos de trabajo para administradores con experiencia. Las auditorías de código están en un estadío mas avanzado para OpenBSD; aunque se debe recordar que a pesar de todas las auditorías ha habido muchos bugs de alto perfil recientemente en OpenSSH -- así que tome la etiqueta de auditado con un poco de precaución.

La distribución Debian GNU/Linux tiene un enfoque fuerte sobre la seguridad y la estabilidad. Tenemos un equipo de Seguridad, sistemas de construcción automáticos para ayudar al equipo de seguridad a construir rápidamente versiones para todas las arquitecturas soportadas, y políticas creadas hacia esos objetivos. Aquí verá más sobre una comparación de seguridad entre (http://lists.debian.org/debian-user/2003/debian-user-200308/msg00541.html) OpenBSD y Debian.

Incluso si no se necesita una cadena de herramientas para cada sistema BSD objetivo para desplegar actualizaciones de seguridad ("make release", o "make package" para construir en una máquina e instalar en cualquiera), es bastánte más inconveniente que el sistema de empaquetamiento de Debian. Debian manipula la distribución de paquetes binarios mucho mejor. Se puede tener su propio archivo aptable archive y alimentar a todos los servidores productivos desde el, usando los mecanismos nativos de Debian.

En lo que es la verdadera seguridad, sin embargo, sin sitemas de control de accesos obligatorios se tiene muy poca seguridad. Así pues SELinux (y el aún naciente TrustedBSD) serían muchas mejores opciones que OpenBSD o la Debian estable básica.

Incluso sin SELinux, encuentro que la estabilidad de Debian estable es como una roca, con la paz mental que traen los parches de seguridad migrados por el equipo de seguridad, muy persuasivo. Es fácil para el receptor no entrenado mantenerse al día con la seguridad; y reduce la posibilidad de quedar comprometido. Esto es muy importante en un entorno comercial de gran cantidad de computadores, donde es importante que el software NO se actualice cada pocos meses.

Hay otro beneficio del equipo de seguridad de Debian en lo que se refiere a la distribución estable. Hay, sin embargo, solo una version del arbol de migraciones.Mientras que en debian se tiene múltiples versiones de, p.ej: apache, KDE, y X11 -una por cada juego con actualizaciones de seguridad para el juego estable - no hay tal cosa para FreeBSD. Aunque, por supuesto, el makefile de migración será actualizado si se ha descubierto un fallo de seguridad en dicho paquete, el único modo de tapar el agujero de su sistema en tal situación es instalar la nueva versión, con los problemas que eso pueda acarrear. Compare con Debian, donde se tiene la capacidad de instalar la misma versión del software, con el arreglo de seguridad retroimportado. También, si se está trabajando con una versión instalada de migraciones del paquete vulnerable, se será vulnerable durante el rato que se esté ejecutando la compilación instalada, que puede ser una considerable cantidad de tiempo o no.

Tengo algunos datos comparando distribuciones Linux y el tiempo necesitado para parchear vulnerabilidades de seguridad conocidas, no tengo datos de BSD, sin embargo. Está disponible en http://people.debian.org/~jfs/debconf3/security/data/.

Escalabilidad y rendimiento

Inicialmente no iba a hablar nada sobre rendimiento y números, ya que personalmente me han importado poco, y los números de rendimiento cambian de versión en versión. Sin embargo, me doy cuenta de que son criterios importantes de decisión para cierta gente, y he intentado buscar un vistazo reciente de los números.

El conjunto total de benchmarks, completo con código, está disponible aquí. http://bulk.fefe.de/scalability/ He aquí sus palabras , de la sección de conclusión, actualizadas para reflejar las últimas estadísticas benchmark.

Linux 2.6 escala O(1) en todas las benchmarks. Me faltan las palabras para decir cuán impresionante es esto. Si estás usando Linux 2.4 ahora, ¡cambia Linux 2.6 ya!

NetBSD tiene mejor escalabilidad que FreeBSD.

FreeBSD 5.1 tiene un rendimiento y escalabilidad muy impresionantes . (Note que está como aun por publicar) Tontamente he asumido que todos los BSDs juegan en la misma liga en cuanto a rendimiento, ya que comparten un montón de código y pueden incorporar el código unos de otros fácilmente. Me equivoque. FreeBSD tiene el segundo mejor rendimiento de los BSDs e incluso es aproxima al de Linux 2.6.

Linux 2.4 no es demasiado malo, pero escala málamente para mmap y fork.

OpenBSD 3.4 rindió en verdad pobremente en estas pruebas. El rendimiento de disco apesta, el kernel era inestable, y en la parte de la escalabilidad de red era superado incluso por su progenitor, NetBSD. OpenBSD tambien tiene deducción de puntos por el sabotaje que hicieron a su pila IPv6. Si estas usando OpenBSD, huye de él.

Conclusión

No hay otro SO o distribución que yo conozca que posea esta mezcla de propiedades (facilidad de mantenimiento, asequibilidad, estabilidad, tamaño, personalización, fuerte soporte). For the most part, I do not want to tinker with and Debug my workstation, I want to get my job done, easily, safely, and with minimal concern about the infrastructure I use. Debian helps me accomplish that.

Y esto es todavía la razón principal por la que lo uso hoy, desde el punto de vista técnico. La instalación y actualización de Software. Los paquetes son lo cumbre, como regla general se instalan y actualizan perfectamente. El mantenimiento del software es realmente todavía una gran labor del administrador del sistema, y con Debian es simplemente trivial. No es un problema. Ni siquiera lo menciones cuando hables de cualquier problema en Debian, no merece la pena ese esfuerzo. La frontera de lo impecable.

Reconocimientos

  1. Wouter Verhelst <wouter@grep.be>

  2. José Luis Tallón <jltallon@adv-solutions.net>

  3. Andrew Suffield <asuffield@debian.org>

  4. Javier Fernández-Sanguino Peña <jfs@computer.org>

  5. Russell Coker <russell@coker.com.au>

  6. Andreas Metzler <ametzler@downhill.at.eu.org>

  7. Steve <sgbirch@imsmail.org>

  8. Toni Mueller <toni@debian.org>

  9. Marc Haber <mh+debian-devel@zugschlus.de>

  1. George Danchev <danchev@spnet.net>

  2. Lionel Elie Mamane <lionel@mamane.lu>

  3. Greg Folkert <greg@gregfolkert.net>

  4. Rudy Godoy <rudy@kernel-panik.org>

  5. Andreas Tille <tillea@rki.de>

  6. Nathanael Nerode <neroden@twcny.rr.com>

  7. Mark Ferlatte <ferlatte@cryptio.net>

  8. Gunnar Wolf <gwolf@gwolf.cx>

  9. Jim ?McCloskey <mcclosk@ucsc.edu>

  10. Bill Wohler <wohler@newt.com>

  11. Bill Richardson <bill@bothan.net>

  12. Alex Perry <alex.perry@qm.com>

  13. Woodrow Kirton <wkirton@surfwayx.net>

  14. David B Harris <dbharris@eelf.ddts.net>

  15. Joost van Baal <joostvb@mdcc.cx>

  16. Bill Allombert <allomber@math.u-bordeaux.fr>

  17. <root.man@earthlink.net>

  18. Viktor Rosenfeld <rosenfel@informatik.hu-berlin.de>

  19. "Adrian 'Dagurashibanipal' von Bidder <avbidder@fortytwo.ch>

  20. Razvan Petrescu <rpetrescu@montran.ro>

  21. s. keeling <keeling@spots.ab.ca>

  22. Karsten M. Self <kmself@ix.netcom.com>

Gracias también a los participantes en el hilo (http://lists.debian.org//debian-devel/2004/02/thrd2.html#00594) de la lista de desarrolladores por su respuesta.

Otros recursos