Hilft mir ein Mac beim Erlernen von Linux?

10

Ich habe letzte Woche zum ersten Mal mit einem Mac gearbeitet. Mir ist aufgefallen, dass die Shell Linux sehr ähnlich ist. Normalerweise entwickle ich auf einem Windows-Computer und neige dazu, in allen Linux-Dingen ein Noob zu sein. Hilft mir ein Mac dabei oder verschlimmert er die Situation aufgrund geringfügiger Unterschiede im Mac-Betriebssystem?

Orokusaki
quelle
1
Alle drei Antworten sind wahr. Es hängt alles davon ab, was Sie lernen möchten. Als häufiger Terminalbenutzer fühle ich mich wie zu Hause, wenn ich Befehlszeilenaufgaben auf Linux-Computern erledigen muss.
Daniel Beck
2
Sie müssen sich bewusst sein, jedoch, dass viele häufig verwendete Werkzeuge ( cp, top, ...) verschiedene Befehlszeilenoptionen haben, ich glaube , da Mac OS X die BSD - Versionen verwendet.
Daniel Beck

Antworten:

11

Es wird die Dinge sicherlich nicht noch schlimmer machen. Es gibt zahlreiche Ähnlichkeiten zwischen OS X und Linux, und wenn Sie anfangen, sich mit OS X zu beschäftigen, sind die geringfügigen Unterschiede derzeit nicht relevant. Dinge wie die Bash-Shell, Skript-Tools und viele Linux-Shell-Anwendungen sind für OS X verfügbar.

Ich entwickle regelmäßig unter OS X auf meinem MacBook und führe meine Programme auf einer Linux-Workstation aus. Es wird einen Punkt geben, an dem Sie die Unterschiede zwischen Linux und OS X kennenlernen müssen (z. B. wie Dienste verwaltet werden), aber bis Sie diesen Punkt erreicht haben, wissen Sie, wo Sie die benötigten Informationen finden.

Fideli
quelle
2
Konnte nicht mehr zustimmen. Ein Powerbook (vor langer Zeit) und OS X zu bekommen, hat mein Interesse an Unix im Allgemeinen geweckt. Nach ein paar Monaten des Werkzeugs um das Terminal herum war ich bequem genug, um mit dem Werkzeug des Terminals eines Linux-Rechners zu beginnen, und dann gerieten die Dinge irgendwie außer Kontrolle und ich wurde ein riesiger * nix-Nerd ... OS X ist immer noch mein Geschmack der Wahl.
Peelman
5

Bestimmt.

OS X ist ein POSIX-kompatibles UNIX-basiertes Betriebssystem, das auf dem XNU-Kernel basiert und viele Standard-Unix-Tools enthält, die in Terminal.app untersucht werden können. Aufgrund der POSIX-Konformität können viele für Linux geschriebene Programme neu kompiliert werden, um darauf ausgeführt zu werden.

Mit den Projekten Fink und MacPorts können Sie auch die Toolsets erweitern, mit denen Sie lernen können.

CaseyIT
quelle
1
Mit dem Vorbehalt, dass das Fenstersystem völlig anders ist. Wenn Sie nur mit Terminalprogrammen arbeiten, funktionieren diese. Wenn Sie eine grafische Benutzeroberfläche verwenden, müssen Sie sich über alles Gedanken über die X11-Shell machen.
Tarka
3

Linux hilft Ihnen beim Erlernen von Linux. Linux kann Ihnen beim Erlernen des Mac helfen. Ich bin mir nicht sicher, ob Mac Ihnen beim Erlernen von Linux helfen wird.

Sie haben Recht, dass es viele Ähnlichkeiten zwischen Mac OS X und Linux gibt. Dies liegt daran, dass beide auf Unix basieren. Es gibt jedoch große Unterschiede. Mac OS X ist als Consumer-Betriebssystem eingerichtet. Dies bedeutet, dass alle bis auf die detailliertesten und umständlichsten Aufgaben eine grafische Oberfläche haben, die schön und einfach zu bedienen ist. Linux wurde ursprünglich als Hobbyprojekt entwickelt und wird heute hauptsächlich in Servern verwendet. Für normale Desktop-Benutzer wird Linux von Tag zu Tag besser, aber viel mehr Routineaufgaben setzen einfach voraus, dass Sie das Terminal verwenden können. Manchmal gibt es keine GUI oder sie ist nicht standardmäßig installiert. Manchmal gibt es eine grafische Benutzeroberfläche, aber die Anweisungen sind veraltet und beziehen sich immer noch auf das Terminal, oder der Autor verwendet das Terminal nur aus Gewohnheit. In jedem Fall, Wenn Sie von Mac OS X auf Linux umsteigen, haben Sie immer noch eine Lernkurve (wie bei jedem Wechsel des Betriebssystems). Es hängt auch davon ab, wie viel Sie über die Tiefen des Betriebssystems lernen möchten. Wenn Sie Dinge auf niedriger Ebene wie die Treiberprogrammierung ausführen, sind diese sehr unterschiedlich. High-Level-Programmierung wird wahrscheinlich sehr ähnlich sein.

Das heißt, es gibt viele Dinge, die gleich sind. Sie haben bereits bemerkt, dass die Shell - wahrscheinlich basheine übliche Standardeinstellung - dieselbe ist. Ebenso Utility - Programme viele der Befehlszeile wie ssh, rsync, top, ps, grepund die Schale builtins um nur ein paar sind gleich oder sehr ähnlich. Wenn Sie das Terminal unter Mac OS X häufig verwenden, werden Sie sich mit dem Terminal unter Linux wie zu Hause fühlen.

Scott
quelle
2

Ich mag Macs und es gibt eine gute (BSD) UNIX-Erfahrung, aber nur wenn ich eine Linux-Erfahrung auf Ihrem PC bekomme, gibt es meiner Meinung nach bessere Alternativen.

Ich persönlich verwende Cygwin auf jedem Windows-Computer, den ich besitze. Sie laden das Installationsprogramm von http://www.cygwin.com/setup.exe herunter. Die Befehle sind im Grunde die gleichen GNU-Befehle, die Linux ausführt. Daher sollten Skripte Linux ziemlich ähnlich sein (der große Unterschied besteht in der Regel in Pfaden mit Leerzeichen in Dateinamen und $ HOME-Verzeichnispfad viel wahrscheinlicher). Es gibt auch verschiedene Dienstprogramme, mit denen Sie die UNIX / Windows-Erfahrung zusammenführen können, z. B. Cygpath, Cygstart usw.

Sie können auch versuchen, COLinux auszuführen. Ein interessanter Port des Linux-Kernels, um als Windows-Prozess ausgeführt zu werden und sauber mit Windows zu interagieren. Ich habe es noch nie versucht, aber es sieht vielversprechend aus. http://www.colinux.org/

Wenn Sie nur ein bisschen damit spielen möchten, können Sie immer von einer LiveCD oder einem USB-Laufwerk laufen. Wenn Sie es nur ausprobieren möchten, ist LiveCD in Ordnung. Wenn Sie jedoch echte Arbeit leisten möchten, möchten Sie, dass ein USB-Laufwerk gespeichert und Updates abgerufen werden kann.

Und es gibt immer Dual-Boot, aber das ist unter Windows im Vergleich zu Mac Bootcamp schwieriger einzurichten.

Reiche Homolka
quelle
2
Cygwin ist wirklich auf Windows übertragen, was nur allzu offensichtlich wird, wenn Sie versuchen, Dateien, die nicht lokal in Ihrem aktuellen Arbeitsverzeichnis sind, unixy / bashy zu machen. Windows- und Unix-Pfade sprechen kaum miteinander. Bash ist besser als cmd.exe und Windows ist mit Cygwin besser als ohne, aber es ist ein bisschen ein scharfkantiger Hybrid. Ich sage dies als ein sich erholendes Windows-Opfer, das zu MacOS gewechselt ist (und es und sein Unix liebt), jetzt mit einem Fuß zurück im Windows-Lager mit freundlicher Genehmigung meines derzeitigen Arbeitgebers.
JRobert
Ich verstehe Ihren Standpunkt, aber da Sie die Möglichkeit haben, einen großen Teil des UNIX-Toolkits hinzuzufügen und dafür UNIX-Pfade verwendet werden, können Sie in Cygwin immer noch einen großen Teil der UNIX-Aufgaben ausführen. Zugegeben, es bricht zusammen, wenn Sie versuchen, Windows-Dinge zu tun. Unsere Arbeitslasten unterscheiden sich offensichtlich, ich finde es unglaublich nützlich.
Rich Homolka
Ich bestreite Ihre Erfahrung damit nicht und benutze sie weiterhin selbst. Aber ich finde es verwirrend nahe der Grenze zwischen den beiden und denke, dass ein Linux-Lernender es sogar noch mehr finden würde.
JRobert
0

Ich müsste ja sagen, aber nicht ganz. Und das hängt ja davon ab, wie oft Sie die Befehlszeile (Terminal) des Mac verwenden. Für verschiedene Dinge benutze ich häufig die Befehlszeile und sehe die Ähnlichkeiten zwischen der BSD-Basis von OSX und Linux. So sehr, dass ich Macs auch als "Linux richtig gemacht" bezeichne (bitte nicht flammen, ich habe gute Gründe! (Für mich)), aus der Sicht der Stromversorgung / Benutzerfreundlichkeit . Sicher, es gibt einige große Unterschiede zwischen den beiden (z. B. App-Installation), aber auf niedriger Ebene können Sie durch häufige Verwendung der Terminal-Anwendung des Mac ein gutes, grundlegendes Verständnis von Linux erlangen.

Um Linux zu beherrschen, müssen Sie es natürlich regelmäßig verwenden. und aus meiner persönlichen Erfahrung würde ich vermuten, dass das Beherrschen von Linux wie alles andere Jahre des Gebrauchs, Bastelns und Lernens erfordern kann.

Aaron
quelle