¿Me ayudará una Mac a aprender Linux?

10

Trabajé con una Mac la semana pasada por primera vez. Noté que el shell es muy similar a Linux. Normalmente desarrollo en una máquina Windows y tiendo a ser un novato en todo lo relacionado con Linux. ¿Me ayudará una Mac con esto o empeorará las cosas debido a pequeñas diferencias en el sistema operativo de Mac?

orokusaki
fuente
1
Las tres respuestas son ciertas. Todo depende de lo que quieras aprender. Como usuario frecuente de Terminal, me siento como en casa cuando necesito hacer cosas de línea de comandos en máquinas Linux.
Daniel Beck
2
Es necesario tener en cuenta, sin embargo, que muchas herramientas de uso frecuente ( cp, top, ...) tienen diferentes modificadores de línea de comandos, creo que porque Mac OS X utiliza las versiones de BSD.
Daniel Beck

Respuestas:

11

Ciertamente no empeorará las cosas. Existen numerosas similitudes entre OS X y Linux y si está comenzando a incursionar en OS X, las pequeñas diferencias no serán relevantes en este momento. Cosas como el shell bash, las herramientas de secuencias de comandos y muchas aplicaciones shell de Linux están disponibles para OS X.

Regularmente desarrollo en OS X en mi MacBook y ejecuto mis programas en una estación de trabajo Linux. Habrá un punto en el que necesitará aprender las diferencias entre Linux y OS X (por ejemplo, cómo se administran los servicios), pero cuando llegue a ese punto, sabrá dónde encontrar la información que necesita.

fideli
fuente
2
No podría estar más de acuerdo. Obtener un Powerbook (cuando era anterior) y OS X es lo que despertó mi interés en Unix en general. Después de unos meses de herramientas alrededor de la Terminal, me sentí lo suficientemente cómodo como para comenzar a usar herramientas alrededor de la terminal de una máquina Linux, y luego las cosas se descontrolaron a partir de ahí y me convertí en un gran * nix nerd ... OS X sigue siendo mi sabor de elección sin embargo.
peelman el
5

Ciertamente.

OS X es un sistema operativo basado en UNIX compatible con POSIX construido sobre el núcleo XNU, que incluye muchas herramientas estándar de Unix que se pueden explorar desde Terminal.app. Debido al cumplimiento de POSIX, muchos programas escritos para Linux pueden recompilarse para ejecutarse en él.

Los proyectos Fink y MacPorts también pueden ayudar a ampliar los conjuntos de herramientas con los que puede aprender.

CaseyIT
fuente
1
Con la advertencia de que el sistema de ventanas es completamente diferente. Si está trabajando exclusivamente con programas de terminal, funcionarán. Si está utilizando una GUI, debe preocuparse por el shell X11 además de todo.
Tarka
3

Linux te ayudará a aprender Linux. Linux bien puede ayudarte a aprender Mac. Sin embargo, no estoy seguro de que Mac te ayude a aprender Linux.

Tienes razón en que hay muchas similitudes entre Mac OS X y Linux. Esto se debe a que ambos están basados ​​en Unix. Sin embargo, hay grandes diferencias. Mac OS X está configurado para ser un sistema operativo de consumo. Esto significa que todas las tareas menos las más detalladas y complicadas tienen una interfaz gráfica que es agradable y fácil de usar. Linux fue originalmente diseñado como un proyecto de hobby y ahora se usa principalmente en servidores. Para los usuarios normales de escritorio, Linux está mejorando cada día, pero muchas más tareas rutinarias simplemente suponen que puede usar el terminal. A veces no hay una GUI, o no está instalada por defecto. A veces hay una GUI, pero las instrucciones están desactualizadas y aún se refieren al terminal, o el autor simplemente usa el terminal por costumbre. De cualquier manera, pasar de Mac OS X a Linux aún te dejará con una curva de aprendizaje (como ocurre con cualquier cambio de sistema operativo). También depende de cuánto quieras aprender sobre las profundidades del sistema operativo: si estás haciendo cosas de bajo nivel como la programación de controladores, serán muy diferentes. La programación de alto nivel probablemente será muy similar.

Dicho esto, hay muchas cosas que son iguales. Ya has notado que el shell, probablemente bash, que es un valor predeterminado común, es el mismo. Del mismo modo, muchos de los programas de línea de comandos de servicios públicos como ssh, rsync, top, ps, grepy las órdenes internas, por nombrar sólo unos pocos son los mismos o muy similares. Si terminas usando mucho el terminal en Mac OS X, te sentirás como en casa con el terminal en Linux.

Scott
fuente
2

Me gustan las Mac, y ofrece una buena experiencia de UNIX (BSD), pero estrictamente al obtener una experiencia de Linux en su PC, creo que hay mejores alternativas.

Yo personalmente uso Cygwin en cualquier máquina con Windows que poseo. Descargue el instalador desde http://www.cygwin.com/setup.exe. Los comandos son básicamente los mismos GNU que ejecuta Linux, por lo que los scripts deben ejecutarse bastante similares a Linux (la gran diferencia tiende a ser rutas, con espacios en nombres de archivo y ruta de directorio $ HOME mucho más probable). También hay varias utilidades para ayudar a combinar la experiencia UNIX / Windows, como cygpath, cygstart, etc.

También puede intentar ejecutar COLinux. Un puerto interesante del kernel de Linux para ejecutarse como un proceso de Windows e interactuar limpiamente con Windows. Nunca lo he intentado, pero parece prometedor. http://www.colinux.org/

Si solo quieres jugar un poco, siempre puedes ejecutarlo desde un LiveCD o una unidad USB. Si solo quieres probarlo, LiveCD está bien, pero si quieres hacer un trabajo real, querrás una unidad USB para poder guardar y obtener actualizaciones.

Y siempre hay un arranque dual, pero eso tiende a ser más difícil de configurar en Windows frente a Mac Bootcamp.

Rich Homolka
fuente
2
Cygwin está realmente injertado en Windows, lo que se vuelve demasiado evidente cuando intentas hacer cosas unixy / bashy en archivos que no son locales en tu directorio de trabajo actual. Las rutas de Windows y las rutas de Unix apenas se hablan. Bash es mejor que cmd.exe y Windows es mejor con Cygwin que sin él, pero es un híbrido un poco irregular. Digo esto como una víctima de Windows en recuperación, se mudó a MacOS (y lo amaba a él y a su Unix), ahora con un pie atrás en el campamento de Windows por cortesía de mi empleador actual.
JRobert
Entiendo su punto de vista, pero dado que tiene la capacidad de agregar una gran parte del kit de herramientas de UNIX, y utiliza rutas de UNIX para estos, aún puede hacer una gran parte de las cosas de UNIX en Cygwin. De acuerdo, se descompone si intentas hacer las cosas de Windows. Nuestras cargas de trabajo difieren obviamente, lo encuentro increíblemente útil.
Rich Homolka
No cuestiono su experiencia con él y sigo usándolo yo mismo. Pero me resulta confuso cerca del límite entre los dos y pensar que un alumno de Linux lo encontraría aún más.
JRobert
0

Tendría que decir que sí, pero no por completo. Y eso sí depende de la frecuencia con la que use la línea de comandos de Mac (Terminal). Para varias cosas, he venido a usar la línea de comandos a menudo y veo las similitudes entre la base BSD de OSX y Linux. Tanto es así que también he llegado a referirme a las Mac como "linux hecho bien" (por favor, no llame, ¡tengo buenas razones! (Para mí)), hablando desde un punto de vista de potencia / facilidad de uso . Claro, hay algunas grandes diferencias entre los dos (instalación de la aplicación, por ejemplo), pero en el nivel bajo, puede obtener una buena comprensión básica de Linux a través del uso frecuente de la aplicación Terminal de Mac.

Por supuesto, para dominar Linux deberá usarlo regularmente; y desde mi experiencia personal, supongo que dominar Linux, como cualquier otra cosa, puede llevar años de uso, retoques y aprendizaje.

Aaron
fuente