¿Para qué se utiliza una caja de Linux dedicada?

9

Entonces, esta es probablemente una pregunta muy básica y obvia para la mayoría de las personas, pero mi google-fu me está fallando y parece que algo está pasando por mi cabeza. He escuchado que muchas personas se refieren a tener una 'caja de Linux dedicada' como parte central de la configuración de un desarrollador.

He estado haciendo programación de desarrollo web durante aproximadamente un año y entiendo los beneficios de programar en un sistema Unix / Linux. Pero parece que me falta el papel que desempeña una 'caja de Linux dedicada' en el proceso de desarrollo.

Supongo que se usa como un servidor de algún tipo, pero todavía tengo que encontrar cualquier necesidad de tener una computadora dedicada a ejecutar un servidor Linux. ¿Estoy siendo nieve y confundiendo la comunidad de programadores que prefieren trabajar en Linux para una herramienta utilizada por los desarrolladores? ¿Para qué utilizan la mayoría de los desarrolladores su 'caja de Linux dedicada'?

DanLeaningphp
fuente
44
Depende absolutamente a qué se dedique. Podría estar probando, podría ser una base de datos, podría ser VCS. En general, una caja no está dedicada a Linux.
user281377
Correcto, un cuadro está dedicado a una funcionalidad / tarea / propósito. Linux debajo como sistema operativo es una víctima de la tarea deseada. No olvidemos que si está ejecutando un enrutador Linksys / Cisco es muy probable que tenga una caja de Linux dedicada en su casa.
Chris
¿Qué papel juega un linux box dedicado en el desarrollo de software? Ejecutando Emacs.
Mike Sherrill 'Cat Recall'
Jaja, error de análisis! Creo que su significado previsto es "una computadora con Linux dedicada a algún propósito" y no "una computadora dedicada a ejecutar Linux" como parece haberlo entendido.
Zhehao Mao
@Catcall Así que tenemos otro devoto de emacs ... No olvides que Linux tiene toneladas de herramientas de desarrollo, y casi todas son gratuitas, a diferencia de las ventanas donde una instalación nueva no tiene nada para que comiences a desarrollar, mientras que en Linux tener al menos un compilador C / C ++, una biblioteca C / C ++ y un editor que sea vim. Pero sí, la mayoría de las personas usan una caja de Linux dedicada para probar cosas, principalmente software destinado a ser multiplataforma. Apache y Mozilla vienen a la mente ...
Coyote21

Respuestas:

4

La naturaleza abierta de Linux le permite realizar una variedad de tareas.

Podría actuar como:

  • Un servidor web personal / repositorio de código

  • Una plataforma de prueba para el código beta antes de subirlo a las interwebs.

  • Un cortafuegos de hardware

  • Un cuadro de descarga de torrents

  • Un reproductor multimedia glorificado (con Boxee o XBMC)

  • Una estación de compilación de código

  • Una caja para ejecutar emuladores de videojuegos mientras se compila el código en su máquina de 'trabajo'

  • Un lugar para probar nuevas herramientas de codificación antes de agregarlas a su cinturón de herramientas.

Debido a que Linux es gratuito y de código abierto, si uno de estos casos de uso ya no es relevante para sus necesidades, puede formatear el cuadro y comenzar de nuevo con un objetivo diferente en mente. Sin daño, sin falta.

¿Buscas más usos? Intente revisar Linux Journal , particularmente sus artículos enfocados en la programación en Linux.

Zoot
fuente
10

En pocas palabras, una caja de Linux "dedicada" es a lo que uno decide dedicarla. :)

Noche oscura
fuente
De acuerdo, tengo una caja de Linux para fines de almacenamiento (copias de seguridad y medios y documentos) que ejecuta Samba para que los usuarios en la LAN tengan acceso. También tengo una caja de Linux para el desarrollo y otra caja de Linux para el enrutamiento.
Chris
6

Realizo un desarrollo dirigido al hardware que ejecuta Linux, por lo que una caja de Linux dedicada (es decir, no una máquina virtual) es esencial para mi trabajo.

También tenemos un servidor de compilación de Linux dedicado que se utiliza para garantizar que todas nuestras compilaciones se construyan a partir de un estado del sistema conocido.

Pero puede tener servidores de bases de datos dedicados, servidores web, etc. Depende completamente de lo que esté tratando de hacer en cuanto a si necesita una caja dedicada o si una VM lo haría.

fwgx
fuente
5

Se utiliza una máquina Linux dedicada para el desarrollo continuo y es una máquina que permite a uno o más usuarios personalizar todo el software de acuerdo con sus necesidades.

Por ejemplo, si se utilizara una caja de Linux para el desarrollo web, como mínimo, alojaría un servidor web (por ejemplo, Apache) con todos los módulos necesarios, accedería a un sistema de control de versiones y proporcionaría acceso remoto. Esto le ahorra tener que ejecutar todo en su propia computadora y solo poder desarrollar cuando su computadora está encendida.

Además de ofrecer comodidad, también garantiza el mismo entorno que el sistema de producción. Esto elimina cualquier problema involuntario que surja de retoques con su computadora.

JK
fuente
2

La caja de Linux dedicada es básicamente una máquina que ejecuta Linux y solo Linux. En el contexto del desarrollo web, probablemente significa un servidor de prueba, que emula el entorno de destino. En otras palabras, empujaría su trabajo a la caja de Linux, lo probaría allí y solo luego lo empujaría al servidor de producción.

vartec
fuente
1

Nunca he escuchado esto, pero supongo que significa tener una caja Linux siempre disponible, en lugar de tener una máquina Windows con una imagen VM de Linux. Esto realmente no tiene sentido para mí, pero luego, donde trabajo, tenemos un puñado de servidores realmente grandes que solo alojan máquinas virtuales, por lo que en lugar de cuatro servidores enormes, tenemos diecisiete +/- cinco virtuales para varios propósitos y proyectos. Para todos los fines prácticos, la mayoría son cajas "dedicadas", porque siempre están en ejecución.

Supongo que lo que la gente realmente quiere decir es que debe tener un servidor separado (que ejecute lo que sea) disponible para la implementación de prueba, hospedar grandes bases de datos y otras tareas intensivas en recursos que no desea ralentizar su máquina de desarrollo.

TMN
fuente
+1 para "Nunca he escuchado esto": no creo que sea un término estándar. En mi empresa, tenemos escritorios Linux, servidores de archivos Linux y demás, a través de los cuales nos conectamos a máquinas virtuales Linux en el sitio del cliente para realizar el desarrollo, registrando el código en el control de origen que ejecuta una caja Linux, desde donde está construido por Jenkins en una caja de Linux a varios servidores de destino que ejecutan Linux (¡y la mayoría de nosotros tenemos teléfonos Android!). Algunos son virtuales, otros físicos, pero básicamente es Linux completamente inactivo. Nunca escuché a nadie describir ninguna de las máquinas como una "caja de Linux dedicada".
Tom Anderson
0

Un cuadro de Linux dedicado es un cuadro que ejecuta Linux y está dedicado a una tarea específica.

En el contexto de su pregunta, esta sería una máquina (podría ser una máquina virtual podría ser física) que está disponible para el desarrollador y el desarrollador solo para desarrollar y probar aplicaciones que se espera que se ejecuten en Linux. Sin embargo, lo fundamental es que se usa únicamente para este propósito y no habrá disputas en términos de que otras personas o para otras cosas lo necesiten.

La razón por la que esto es útil / necesario en algunas situaciones es que para maximizar la productividad de los desarrolladores no debería tener que esperar si necesita probar algo en Linux, o preocuparse porque su instalación o cambios de configuración causen problemas a algún otro usuario o aplicación. Básicamente, usted no debe responder ante nadie por lo que sucede en ese cuadro.

Entonces, en contraste con tener acceso a un cuadro de Linux pero tener que organizar el tiempo para usarlo, acuerde los cambios que se pueden hacer, etc. Esto es factible (por lo general), pero dará como resultado una pérdida de tiempo mientras intenta obtener tiempo y tiene que sortear las restricciones que otros le imponen.

¿Es necesario? Depende: ¿desarrolla algo que se espera que se ejecute en Linux? Si no, entonces no, es completamente irrelevante, si es así, probablemente sí.

Y realmente no debería haber una cuestión de costo: puede ejecutar Linux perfectamente bien en una caja de $ 500 y la licencia obviamente no cuesta nada, por lo que realmente no debería ser un problema.

Jon Hopkins
fuente
0

En el contexto del desarrollo web, "caja de Linux dedicada" generalmente se refiere a un servidor propiedad de otra persona. Usted arrienda el hardware y, por lo general, algunos servicios de soporte (a menudo mínimos). No compartes el hardware con nadie más. Es posible que se le permita o no elegir el sistema operativo y las aplicaciones.

Un servidor dedicado generalmente tiene más que ver con la implementación que con el desarrollo.

Opuesto al "servidor compartido" o al "entorno de alojamiento virtual compartido", donde varias compañías (que comúnmente significan múltiples sitios web) comparten el hardware, pero están aisladas por el software. Compartir hardware significa que otras personas (a las que normalmente no puede identificar o contactar) realmente pueden dificultarle la vida al monopolizar la CPU, el disco, etc.

Mike Sherrill 'Cat Recall'
fuente
0

Si no le gustan las implementaciones fallidas, quiere la copia más cercana posible de su entorno de producción. Por lo general, es una máquina virtual, y ejecutar una máquina virtual de este tipo en una computadora portátil, por ejemplo, no es divertido. (Al menos, debe almacenar la imagen para que todos la usen.) Además, desea un entorno de integración / prueba común para todos en su equipo, por ejemplo, con una base de datos común, un repositorio central de VCS (conveniente incluso con un DVCS ), almacenar para todas las dependencias (de versiones exactas), etc.

Todo esto podría tomar una caja dedicada, no necesariamente Linux, mientras que Linux es el más fácil de todos.

9000
fuente