Frage Was ist die beste Ressource, um Linux wirklich tief zu verstehen?


Ich bin seit vielen Jahren ein Linux-Benutzer. Vor kurzem habe ich es täglich benutzt. Ich suche nach Vorschlägen für Medien; kommerzielle Bücher, kostenlose Informationen, Online-Videos usw., die mir helfen werden, das Betriebssystem auf einer viel tieferen Ebene zu verstehen. Ihre Vorschläge bitte.


10
2018-06-06 03:36


Ursprung




Antworten:


Sie finden einige kostenlose Anleitungen im Linux Documentation Project, Handbuchseite. Dies ist eine kurze Liste, die ich von dort auswähle, aber Sie sollten durch die Seite scrollen, um zu finden, was Sie brauchen.

  • Einführung in Linux - Ein Hands on Guide; Juni 2008
  • Linux auf der Straße; Nov 2005
  • Das Linux-Systemadministratorhandbuch; Juli 2005
  • Erweiterte Bash-Scripting-Anleitung; Mrz 2009 (Ja, das ist auch gut, um Linux zu verstehen)

Sie sollten nach bestimmten suchen HOWTOs für Themen, die Sie interessieren. Ein weiteres Datum sortiert HOWTO-Liste.

Es gibt einige Vorspeisen am Linux Bewertungen Anfänger Seite.

Schließlich ist dies ein kleines Buch online verfügbar - Linux Kernel in Kürze. Es ist in PDF-Form der Ausgabe 2007.

Sie sollten diese Referenzen nur als Fühler verwenden, um Ihre eigene Suche nach Dingen zu starten, die Sie benötigen.


6
2018-06-06 04:00



Danke an alle für die tollen Antworten. Der Kernel in Kürze ist ein echtes Juwel. Das ist die Art von Buch, nach der ich gesucht habe. - Stuart Woodward


Der beste Weg, Linux zu verstehen, besteht darin, es zu kaputt zu machen und es dann zu beheben.


16
2018-06-06 03:53



Tee-hee ... Ich mag das. Ich liebe es, Dinge zu brechen. - Evan Anderson
-1 Das ist ein guter Rat, aber es ist keine Ressource. - username
gute Antwort. Ich habe so viel über Linux gelernt, nur weil ich damit herumgespielt habe und Dinge ausprobiert habe. Nachdem Sie es vermasselt haben, suchen Sie im Internet nach Möglichkeiten, es zu beheben. Da "Linux" so weit gefasst ist, dass es in diesem Fall wahrscheinlich eher auf das gesamte Betriebssystem und die darauf ausgeführten Anwendungen als auf den Linux-Kernel verweist, gibt es nicht wirklich eine gute Ressource, die Sie empfehlen könnten. - Kibbee
Aber es gibt einige Richtlinien für jede Art von Person, die wir auflisten könnten. Mein persönlicher Favorit beginnt mit der schwierigsten Distribution und installiert dann eine automatische Distribution. Das Brechen von Dingen ist großartig zum Lernen, aber zu wissen, was man an erster Stelle brechen muss, um spezifisches Wissen zu erlangen, ist viel schwieriger. Die meiste Zeit, wenn wir Dinge brechen, lernen wir Dinge, von denen wir nicht einmal wussten, dass wir lernen mussten. - voyager
Linux ist in den meisten Fällen kostenlos und leicht reparierbar ist definitiv eine Ressource. Die Erfahrung, mit einem kaputten System zu beginnen und in der Lage zu sein, in alle seine Teile zu sehen (im Gegensatz zu einem kommerziellen Betriebssystem), ist eine enorme Stärke, und die einzige Art, wie man ein Problem erforscht und sich durchfühlt, ist es, es zu tun. - Karl Katzke


Ich bin mir nicht sicher, wenn du eine "tiefere Ebene" sagst, wenn du darüber sprichst, mehr in die Befehlszeile zu bekommen (manche Leute verlassen nie die GUI, die mit ihrer Distribution kommt, wenn du es dir vorstellen kannst) oder mit wirklich grobkörniges Low-Level-Zeug wie das Schreiben von Kernel-Treibern. Ich werde mehr vom ersten als vom letzten übernehmen.

Ich würde Ihnen raten, vernünftige Ziele für Dinge zu setzen, die Sie mit Linux und Anwendungen, die unter Linux laufen, ausführen (einen Webserver ausführen, Dateien an Windows-Hosts senden, DHCP bereitstellen, einen grafischen Desktop ausführen usw.). Es ist meine feste Überzeugung, dass du nur lernst, wenn du "tust". Sobald Sie ein Ziel vor Augen haben, verfolgen Sie es. Das bedeutet das Lesen von Manpages (viele und viele Manpages), "HOWTO" -Dokumentationen, Mailinglisten-Archies, zufällige Blogposts und natürlich die Dokumentation, die mit den verschiedenen Programmen geliefert wird, die Sie installieren oder kompilieren, um auf Ihrem laufen zu können Boxen.

Ich glaube, dass ich mit einem gewissen Grad an Autorität darüber verfüge, dass die Studenten, die ich gesehen habe, am meisten Fortschritte machten, diejenigen, die verrückte Projekte ihres eigenen Designs machten und an den Sitzen lernten von ihren Hosen.

Wie ich schon sagte, man pages, "HOWTO" -Dokumentation (http://tldp.org/docs.html und in vielen, vielen anderen Orten im Netz und Mailinglistenarchiven sind deine Freunde. Ich würde mich von irgendwelchen Büchern fernhalten, die zumindest in diesem Stadium über Kernel-Internals sprechen. Du brauchst kein tiefes Wissen, um loszulegen.

Sprich mit anderen Leuten. Server Fault sieht aus, als sei es ein guter Ort, um gute Ratschläge zu erhalten. Stellen Sie Fragen hier und denken Sie nicht, dass Sie dabei dumm aussehen werden. Wenn Sie mit Leuten, die sich mit Linux auskennen, etwas Zeit gewinnen können, sollten Sie es tun. (Obwohl ich Ihnen empfehlen würde, versuchen Sie die Meinung von der Tatsache zu trennen. Es gibt so viele "heilige Kriege" in der Linux-Gemeinschaft über unterschiedliche Meinungen, wie man Dinge tut wie in jeder anderen Gemeinschaft - vielleicht mehr angesichts der Natur der Gemeinschaft .)

Um wirklich "tiefes" Wissen über das Unix-Erbe von Linux zu erlangen, sollten Sie ältere Unix-spezifische Verwaltungs- oder Referenzhandbücher verwenden. Ich würde mich früh von ihnen fernhalten (zumindest solange, bis man die historische Natur der "Pfade, die nicht mit Linux gemacht wurden" im Vergleich zu einigen der Unix-abgeleiteten Betriebssysteme zu schätzen weiß).

Da ich nicht weiß, wie hoch dein gesamtes Können ist, werde ich einen Ausruf an ein Buch richten, das meine oder vielleicht nicht sehr hilfreich ist. Ich empfehle "TCP / IP Illustrated" (http://www.amazon.com/Illustrated-Volumes-Addison-Wesley-Professional-Computing/dp/0201776316). Es ist überhaupt nicht Linux-spezifisch, aber Sie werden so viele Dinge tun, die mit TCP / IP zu tun haben, dass das Wissen, dass es "kalt" ist, ein Kinderspiel ist.

Ich schätze, kurz gesagt, es gibt kein Zauberbuch oder keine Bücher, keine super-geheimen Videos, von denen die "Meister" gelernt haben, aber absolut keine Grenzen für das, was man lernen kann, wenn man sich daran hält und keine Angst hat um deine Hände schmutzig zu machen.


10
2018-06-06 03:53





Nur jahrelange Erfahrung mit einzelnen Komponenten wird Ihnen ein tiefes Verständnis vermitteln. Allerdings sind die meisten Bücher von Oreilly Press sehr gut geschrieben und perfekt, wenn Sie kein Dummy sind und mehr als 24 Stunden haben. :)

Es gibt ein Projekt namens Linux von Grund auf, die zeigt, wie man eine Linux-Distribution aus dem Nichts erstellt. Vielleicht finden Sie es einmal lehrreich. Es wird zeitaufwendig sein, da Sie alles aus der Quelle kompilieren müssen und am Ende alles wegwerfen.

ich finde LWN.netDie Kernel-Seite ist von unschätzbarem Wert, um auf einer hohen Ebene mit der Funktionsweise des Kernels Schritt halten zu können.


10
2018-06-06 05:04



+1 wählte LFS FTW - bandi


Abgesehen davon, dass ich es jeden Tag benutze (was ich für eine großartige Sache halte!), Empfehle ich dir, über Dienste nachzudenken, die für dein Netzwerk auf einer Linux-Box implementiert werden könnten. Beginnen Sie mit der Gestaltung auf Basis von Linux-Diensten, recherchieren und implementieren Sie sobald Sie bereit sind. Es wird hoffentlich Fehler in diesem Prozess geben, und diese Erfahrung wird Ihnen helfen, das Betriebssystem auf einer tieferen Ebene zu verstehen.


7
2018-06-06 03:59



Selbst Linux von Grund auf neu zu bauen macht Sinn. Versuche dies : linuxfromscratch.org - Caterpillar
Beeindruckend! Definitiv +1 darauf! - l0c0b0x
+1 für Linux von scrach. Ich habe eine Bootladung über den Linux-Boot-Prozess, Toolchains und die quasi-eingebettete Entwicklung mit uclibc entwickelt, die in den späten 90ern Floppy-Disketten-basierte Linux-Installationen herstellten. Bootstrapping von einem Linux-Rechner aus dem Kernel "von Grund auf" wird Ihnen definitiv eine Menge toller Erfahrung geben. - Evan Anderson


Für die allgemeine Unix-Philosophie und eine ausgezeichnete Einführung in die Befehlszeile gibt es Brian Kernighan und Rob Pikes Klassiker Die Unix-Programmierumgebung.

Auch von IBM EntwicklerWorks Website hat über 900 Artikel in seinem Linux-Bereich. Sie können die Artikelliste nach Themen durchsuchen, die Sie interessieren.

Schließlich, wenn Sie bereit sind, ins Wesentliche zu gehen, gehen Sie zur Quelle. Besorgen Sie sich den Quellcode für die Kernel-Version, mit der Sie arbeiten kernel.org (Ihre Distribution enthält auch Kernel-Quellpakete, die Sie installieren können), und lesen Sie das Verzeichnis Documentation. Sie finden eine Menge Referenzmaterial zu den Interna und Konfigurationseinstellungen des Kernels.


5
2018-06-06 10:30





Schule. Um das Linux-System wirklich zu verstehen, benötigen Sie eine breite Palette von Computer-Systemen. Compiler, Computerarchitektur und Betriebssysteme. Und Sie brauchen einen Führer, der Ihnen zeigen kann, was wichtig ist, und Missverständnisse korrigieren, die Sie haben oder sich bilden.

Wenn Sie einmal verstanden haben, wie moderne Prozessoren funktionieren und wie C-Compiler sie ausnutzen, können Sie in Bücher wie Minix 3:

Minix3


4
2018-06-06 05:02



+1 für die Erwähnung "Und du brauchst einen Guide, der dir zeigen kann, was wichtig ist und Missverständnisse, die du hast oder die du hast, korrigieren kannst." Es ist wirklich ein Betriebssystem, das am besten durch mündliche Überlieferung (leider) verstanden wird. - Avery Payne


Das Quelle.

Das, natürlich, wenn du das meinst Kernel.

Wenn Sie versuchen, das System über den Kernel und die API zu lernen, würde ich anfangen, alte Schule zu lernen Unix. Vielleicht versuchen Sie es FreeBSD/OpenBSD/NetBSD/LibelleBSD. Ein bisschen Minix könnte auch helfen. Dann gehe zu Slackware, Bogen, Debian und Gentoo. Sie sind alle verschieden (und  Kommen Sie  mit  großartig  Dokumentation), und in diesen Divergenzen wird Ihre Neugier Sie suchen lassen, warum es so ist, Sie werden viel technisches, kommerzielles, politisches und historisches Wissen gewinnen.

Ein anderer Weg wäre, hinein zu gehen /etc, alte Unix-Handbücher und natürlich Google.

Linux von Grund auf neu ist eine großartige Möglichkeit learning GNU / Linux.


3
2018-06-07 01:49





Fange einfach an, deine eigene Distribution aufzubauen. Ich habe es für dich selbst gemacht und weißt du was? Nach 4 Monaten, die ich damit verbracht habe, kenne ich Linux Interna mehr als Leute um mich herum, die mehr als 10 Jahre Linux benutzen.


3
2018-06-06 17:19