Linux-Äquivalent zur Windows-Registrierung

57

Was ist das Linux-Äquivalent zur Windows-Registrierung? Wenn es unter Linux keine äquivalente oder ähnliche Struktur gibt, wie wird die Windows-Registrierung unter Linux behandelt?

Serena
quelle

Antworten:

54

Linux-Anwendungen speichern ihre Konfiguration normalerweise in einer anwendungsspezifischen Textdatei. Maschinenspezifische Konfigurationen werden normalerweise im Verzeichnisbaum / etc gespeichert. Benutzerspezifische Einstellungen befinden sich normalerweise im Basisverzeichnis des Benutzers und häufig in "versteckten" Dateien, die mit einem "." Beginnen. (benutze 'ls -a' um sie zu sehen).

uSlackr
quelle
5
Wir könnten auch hinzufügen, dass diese Textdateien für Menschen lesbar sind und häufig Kommentare enthalten, die das jeweilige Konfigurationselement beschreiben. So ist die Dokumentation oft direkt vor Ihnen, wenn Sie etwas ändern müssen. Sie können auch eigene Notizen hinzufügen, zum Beispiel, warum Sie etwas geändert haben. Die Windows-Registrierung enthält keine derartigen "Metadaten".
Keith
Sicherlich ist diese Antwort fehlerhaft, weil der Zweck der Registrierung nicht darin besteht, Einstellungen zu speichern, sondern Komponenten wie DLLs und Shell-Erweiterungen beim Betriebssystem zu registrieren. Die Programmkonfiguration dort zu speichern ist eine verpönte Technik.
Adam Casey
12
Ich bin nicht sicher, ob ich "verpönt" bin, aber es wird regelmäßig gemacht. Die meisten MS-Programme und viele Drittanbieter speichern dort Konfigurationsdaten.
uSlackr
7
@ Dotmister: Das war in der Tat sein Zweck ... in den Tagen von Windows 3.1. Beginnend mit 32-Bit-Windows (95 und NT) wurde die Registrierung zu einer Datenbank für Konfigurationsdaten .
Grawity
Heh ... also macht Linux im Wesentlichen das, was die Windows-Registrierung verhindern soll?
Iszi
11

/proc für Kernel-bezogene Sachen

/etc für Software-bezogene Sachen

Die Gnome-Konfiguration kann auch als ähnlich wie die Windows-Registrierung angesehen werden.

Da sich die Kernphilosophien von Linux und Windows diametral unterscheiden (Linux ~ offen und kompatibel, Windows ~ geschlossen und hinderlich), gibt es keine direkte Parallele.

Bearbeiten: für diejenigen, die nicht einverstanden sind, ist hier ein bisschen Geschichte für Sie: http://www.faqs.org/docs/artu/ (tolle Lektüre, egal was Ihr Hintergrund ist)

Lass mich sein
quelle
28
Ich verstehe nicht, was die Philosophie des Software-Designs mit den Besonderheiten bestimmter Implementierungen des Konfigurationsspeichers zu tun hat. Der Grund, warum es keine direkte Parallele gibt, liegt darin, dass es sich um grundlegend unterschiedliche Architekturen handelt, nicht nur, weil Microsoft Freiheit hasst.
Shinrai
8
@Shinrai Die grundlegende Designphilosophie von Unix (und Linux) verwendet standardisierte Textformate. Die Windows-Registrierung ist ein proprietäres Binärformat. "Microsoft hasst Freiheit" ist hier völlig aus dem Zusammenhang geraten. Windows wurde so konzipiert, dass es so wenig wie möglich mit Unix kompatibel ist, und hat alle möglichen internationalen Standards ignoriert (während es eigene erstellt). Dies ist eine alte Geschichte, aber hier kommt die Windows-Registrierung her.
Let_Me_Be
7
@Let_Me_Be - Es tut mir leid, in Ihrer Formulierung stand, dass Sie gemeint haben: "Open Source ist das Beste! Microsoft ist böse verkörpert!" wie so viele * nix-Fanatiker im Web, anstatt über das wörtliche Format des Inhalts zu diskutieren. Kommentar zurückgezogen, aber Sie könnten das Wort umformulieren, um es ein wenig klarer zu machen, da einige Leute es offenbar genauso gelesen haben wie ich. (Ich denke, "obstruktiv" macht hier besonders den falschen Eindruck.)
Shinrai
12
@Let_Me_Be: Standartized Textformate? Du machst Witze. Windows ist in vielerlei Hinsicht mies, aber eine gemeinsame Registrierungs-API ist eine Sache, die es gut macht.
Grawity
7
@Let_Me_Be: Das Wort wurde "standardisiert", nicht "dokumentiert". Ich würde verteilen eher eine .regDatei (oder .ini, .xml, .json, was Sie wollen) über X Maschinen als die Hölle zu regexp habe aus zwanzig verschiedenen Konfigurationsdateien in /etc/bei dem Versuch , die netzwerkweite Einstellungen zu ändern , aber nicht verwandte lokale Ergänzungen behalten ... , während Sie Für Windows-Registrierungsstrukturen wird keine vollständige Erklärung gefunden. Ihre Struktur ist nicht vollständig geheim . (verlässt den Flammenkrieg)
Grawity
7

Systemweite Einstellungen befinden sich in Dateien in /etc. Benutzereinstellungen befinden sich normalerweise als versteckte Dateien (Start w / a.) Im Basisverzeichnis des Benutzers. Weitere Informationen zu einem bestimmten Programm finden Sie in der Manpage - man [program name].

daalbert
quelle
Möglicherweise möchten Sie .*rcDateien im Home-Verzeichnis des Benutzers erwähnen . /etcist nur das systemweite Zeug.
Mike DeSimone
5

Die meisten Anwendungen verwenden textbasierte Konfigurationsdateien (normalerweise hat jedes Programm ein eigenes Format, obwohl einige XML oder JSON verwenden). Die systemweite Konfiguration bleibt unter /etc.

Die Benutzerkonfiguration wird normalerweise im Home-Verzeichnis des Benutzers in sogenannten "Punktedateien" gespeichert (Dateinamen, die mit einem " ." beginnen; ls -azur Anzeige verwenden). Um "Dotfile Creep" zu vermeiden, haben kürzlich Programme begonnen, ihre Konfiguration ~/.config/gemäß der XDG Base Directory- Spezifikation beizubehalten .

Verschiedene Desktop-Umgebungen haben ihre eigenen Registry-ähnlichen APIs: Gconf (veraltet) und dconf / GSettings (neu) in GNOME; Xfconf in Xfce.

Grawity
quelle
3

Es ist unter Linux aufgeteilt. Es gibt keinen einzigen Ort.

Bei Programmen, die von Benutzern ausgeführt werden, befindet sich diese normalerweise in $ HOME / .someprogramrc, wenn es sich um eine Datei handelt, oder in $ HOME / .somedirname, wenn sie so kompliziert sind, dass sie ein Unterverzeichnis rechtfertigen. KDE-Apps finden alle Unterbereiche von $ HOME / .kde, ich glaube, generieren normalerweise kein eigenes Verzeichnis.

Die übliche Aktion zum Auflisten von Verzeichnissen besteht darin, Dateien, die mit " .versteckt" beginnen, so zu behandeln , dass Sie sie ls -Aüber die Befehlszeile oder über die show hidden filesEinstellung Ihrer GUI verwenden müssen.

Bei Programmen, die vom System ausgeführt werden, handelt es sich normalerweise um eine Datei in /etc/Es gibt keine echte Namenskonvention in etc, obwohl Verzeichnisse normalerweise .dam Ende durch gekennzeichnet sind.

Für den Kernel ist es in /etc/sysconfig.confoder ein Startskript in /etc/init.d, das nach / proc / sys / * schreibt.

Die meisten Systemkonfigurationen dienen dazu, das Sichern /etceines Systems zu vereinfachen. Wenn Sie nur Konfigurationsdateien und keine Binärdateien speichern, sind diese normalerweise /etc/klein.

Reiche Homolka
quelle
0

Es gibt keine Registry unter Linux. Sie sollten sich jedoch den gconf-editor und den dconf-editor ansehen ... sowie versteckte Dateien / Ordner in Ihrem Ausgangsverzeichnis (deren Namen mit einem Punkt beginnen), meist einfache (TXT) Dateien, die einige Konfigurationen für ein bestimmtes Programm enthalten.

saeedgnu
quelle
-1

Die Windows-Registrierung wurde erstellt, um die verschiedenen INI- und anderen Konfigurationsdateien für Betriebssysteme und Programme zu automatisieren, damit sie schneller geladen werden können. Alle Informationen in der Registrierung sind auch an anderer Stelle im Computer enthalten, aber heute sind sie in der Regel schreibgeschützt. Linux verwendet Vi (Visual Editor) oder einen anderen Editor, um auf diese Konfigurationsdateien in Linux zuzugreifen und sie zu bearbeiten.

builder7
quelle
2
Hallo und willkommen bei superuser.com. Obwohl ich glaube, dass das, was Sie zu sagen versuchen, das Plakat richtig ist, kommt es in Ihrer Antwort nicht sehr gut heraus. Wenn Sie nicht genau wissen, wie Linux und Windows funktionieren, ist es meines Erachtens schwierig zu verstehen, worauf Sie abzielen. Bitte überdenken Sie Ihre Antwort und schreiben Sie sie neu, damit sie jeder verstehen kann.
Mogget
-1

Windows: - Speichert die Daten in Dateien innerhalb der Verzeichnishierarchie. - Diese Dateien entsprechen der genannten DLL und anderen unterstützenden Dateien. - Anschließend werden die Dateien über Verwaltungssysteme wie Datenbanken (die Registrierung) verwaltet, um die Interaktion mit den Benutzern zu erleichtern. . - Das heißt, wir zeigen und klicken, aber TONNEN von Daten werden im Hintergrund aufgezeichnet, um die Verwendung zu vereinfachen, den Zugriff zu beschleunigen und unnötige Datenspeicherung im Namen der einfacheren Verwendung zu ermöglichen.

Linux: - Dateien werden in den getrennten Partitionen gespeichert (wir müssen bedenken, dass wir unter Linux direkter auf Hardware zugreifen können, einschließlich des Bildschirms - auf alles kann über die CLI zugegriffen werden). - Diese Dateien befinden sich in den bereits vorhandenen Verzeichnishierarchien (im Speichersystem des Betriebssystems, ähnlich wie Windows, jedoch nicht nur durch Ordner getrennt). - Die Dateien sind lesbarer und leichter zugänglich, erfordern jedoch die Kenntnis der CLIs in der Lage sein, sie zu nutzen.

Primärer Unterschied: Windows fügt der OS-Oberfläche die "Ebene" der Datenbanken hinzu, um die Interaktionen von Benutzer, System usw. zu verwalten. Dies erleichtert die Verwendung der GUI für den Zugriff und die Ausführung aller Aufgaben, aber auch für Benutzer und System Die meisten Funktionen sind stark von diesem Datenbanksystem abhängig. Auf der anderen Seite ermöglicht Linus die direkte Schnittstelle zu den Komponenten, dh Sie müssen die "Sprache" kennen, um anstelle der Windows-Point-and-Click-Methoden tippen zu können. Ja, Sie können eine CLI über Windows verwenden, aber dann vergleichen Sie den Vergleich von Windows mit Linux nicht wirklich. Die Unterschiede bestehen darin, wie der Benutzer auf die Daten zugreift, wie das System die Daten verwendet und wie Windows einfach mehr "Verwaltung" (durch das System) hinzufügt, um eine "einfachere" zu erzeugen.

Es ist ein verständlicher Vergleich, jemanden zu bewerten, der in der CLI / Linux-Umgebung neu ist, aber es ist viel sinnvoller, wenn Sie zuerst die Absicht beider Systeme anwenden. Linux "untergräbt nicht die Versuche, die Microsvck mit der Integration einer Registrierung unternommen hat", sondern gibt dem Benutzer mehr Macht, indem es Abstraktionsebenen zwischen Benutzer und Hardware beseitigt.

Um sich das vorzustellen, denken Sie an eine Schreibmaschine. Sie drücken die Tasten, sie bewegen die Zahnräder und Sie hämmern die Tinte auf Papier, um Daten zu erzeugen. Unter Linux gibt ein Benutzer Befehle zur Verbindung mit dem Systemkern ein, um Aktionen in der Hardware auszuführen. In einer Windows-Umgebung haben Sie mehr potenzielle Schichten zwischen dem Benutzer und der Hardware. Anwendungen können Befehle aufrufen, die mit dem Betriebssystem kommunizieren, mit dem System / Kernel kommunizieren und dann mit der Hardware arbeiten. Dieser Prozess wird in Windows komplizierter, wenn mehr Variablen in die Gleichung eingegeben werden, beispielsweise die Befehle, die mit der Registrierung interagieren müssen, um Informationen abzurufen, bevor sie ausgeführt werden können. Aus diesem Grund verwendet Windows mehr Ressourcen zum Ausführen, Ausführen von grundlegenden und komplexe aufgaben. Vorinstallierte Dienste und Prozesse werden geladen, um die Verwaltung von Funktionen zu ermöglichen, die der Benutzer unter Linux aufrufen müsste. Und ja, es gibt Prozesse, die unter Linux ausgeführt werden, aber ich versuche nur eine grundlegende Vorstellung davon zu geben, wie sich die Systeme unterscheiden, um besser darzustellen, warum einige andere Kommentare ungenau waren. Die Idee bei der Verwendung von Linux ist es, die Schnittstellen zwischen Benutzer und Hardware zu minimieren, um die Dinge einfacher und mit weniger Unordnung zu gestalten. Windows ist auf die Benutzer zugeschnitten und versucht, mehr Funktionen auf einfachere Weise verfügbar zu machen. Dies geht jedoch zu Lasten komplexer Verwaltungssysteme (die leicht unübersichtlich und problematisch werden können). Die Registrierung kann auch eine digitale Aufzeichnung aller physischen Verbindungen und anderen physischen Interaktionen mit Hardware bereitstellen, die gerade gespeichert und gespeichert wird (sofern sie nicht von einem Benutzer / Programm bereinigt wurde). ICH' Ich bevorzuge lesbare Dateien, die ich manuell löschen kann, wenn sie nicht verwendet werden, im Vergleich zu den verschiedenen / vielen Stellen, die unter Windows regelmäßig gereinigt werden müssen (und möglicherweise große Probleme mit der Registrierung verursachen). Es ist nur eine weitere Ebene, um die Dinge hinter den Kulissen zu managen und mehr digitale Spuren zu erstellen, die der Benutzer nicht mehr speichern kann.

Leider sind viele Benutzer auf Windows eingestellt und fürchten sich vor dem Test zu sehr vor Linux. Es gibt so viele Geschmacksrichtungen, einige mit unterschiedlichen Befehlen, Muscheln usw., dass es für Anfänger schwierig wird, diese zu wählen. Sobald wir unsere "Windows-Konditionierung" entfernen, wird klarer, dass Linux-Distributionen in vielerlei Hinsicht überlegen sind (ohne die aufgeblähte Software). Das einzige Szenario, in dem Windows meiner Meinung nach überlegen ist, ist das Spielen von Spielen. Es wird immer beunruhigender, wenn MS mehr Anstrengungen unternimmt, um sich auf jeweils 1 Betriebssystem zu vereinheitlichen, und immer mehr Daten von Ihnen erhalten möchte. Es ist eine gute Fähigkeit, und das Spielen mit einer Linux-Distribution kann diese Fragen möglicherweise für neue Benutzer beantworten, die diese Beiträge lesen.

Mike Hawk
quelle
3
Dies liest sich eher wie ein Schimpfen als wie eine Antwort. Es ist zweifelhaft, ob es überhaupt versucht, die gestellte Frage tatsächlich zu beantworten. Es ist auch an mehreren Stellen geradezu falsch . (Dateien in Linux gespeichert auf separate Partitionen? Dateien in Linux Kenntnisse über die CLI erfordern zugreifen? Linux Hardware Abstraction Eliminieren Vergleich zu Windows? Linux - Anwender interagieren direkt mit dem Kernel? Wirklich, WTF?) Ich möchte Sie ermutigen , die Website nehmen Tour zu Erfahren Sie, wie wir Dinge tun und durchlesen Wie schreibe ich eine gute Antwort für Vorschläge. Sie können dies dann bearbeiten .
ein Lebenslauf
1
@ MichaelKjörling: obwohl du über die Qualität dieser Antwort recht hast, enthält sie eine Sache, die sehr wichtig ist: Die Windows-Registrierung (regedit-Programm) ist eine Anwendung, die die Interna anzeigt, als ob sie in einer Konfigurationsdatenbank gespeichert wären, obwohl diese tatsächlich vorhanden sind Dateien sind über den gesamten PC verteilt. Dies verwandelt die ursprüngliche Frage in "Gibt es ein Linux-Tool, das eine Zusammenfassung der Gesamtkonfiguration des Computers gibt, so etwas wie regedit in Windows?"
Dominique