Elektra (Software)

Elektra (Software)

Elektra (auch als Elektra-Initiative bezeichnet) ist ein Projekt mit dem Ziel, eine einheitliche Schnittstelle zu Konfigurationinformationen von GNU/Linux-Software zu schaffen. Die Konfigurationsinformationen sollen dabei in einem einheitlichen Format an zentralen Stellen gespeichert werden; Anwendungen können dann über das Elektra-API darauf zugreifen.

Inhaltsverzeichnis

Hintergrund

Programme, die für Linux-Systeme entwickelt werden, arbeiten zur Zeit nicht mit einem einheitlichen Konfigurationssystem, wie man es zum Beispiel von Windows (die Registrierungsdatenbank) kennt. Das wird hauptsächlich als Vorteil betrachtet, es ergeben sich dadurch jedoch auch Nachteile:

  • Die Aufbau von Konfigurationsdateien ist nicht standardisiert und ist daher von Programm zu Programm unterschiedlich.
  • Die Position von Konfigurationsdateien innerhalb des Systems ist nicht standardisiert und ist daher von System zu System unterschiedlich.
  • Aus den beiden obigen Problemen ergibt sich automatisch, dass es keine einheitliche Schnittstelle (API) gibt, mit der Programme auf die Konfigurationsinformationen zugreifen können. Jedes Programm kennt in erster Linie nur die eigene Konfiguration; der Zugriff auf die Konfiguration anderer Programme ist nicht oder nur eingeschränkt möglich. Vor allem Änderungen, die von einem Programm in programmfremde Konfigurationen geschrieben werden könnten, müssen oftmals vom Benutzer selber durchgeführt werden.

Funktionalität von Elektra

Elektra ist in erster Linie eine Bibliothek, die den Anwendungen als Schnittstelle zu den Konfigurationsinformationen dient. Wo und in welchem Format diese Informationen letztendlich gespeichert werden, lässt sich durch Auswahl eines entsprechenden Back-ends beeinflussen. Damit die Elektra-Bibliothek möglichst vielseitig verwendbar ist, hat sie keine besonderen Abhängigkeiten. Auf die Verwendung eines Daemons wurde absichtlich verzichtet, um keinen "Single Point of Failure" zu schaffen.

Neben der Bibliothek bietet Elektra auch Tools (sowohl mit grafischer Oberfläche als auch als Kommandozeilentool), mit der Benutzer die Konfigurationsinformationen einsehen und bearbeiten können. Wird ein Backend verwendet, das auf Textdateien aufbaut, sind diese mit den gewohnten Tools wie vi, cat, grep, und so weiter einzusehen und zu bearbeiten. Zusätzlich bietet Elektra eine XML-Unterstützung, mit der alle gespeicherten Informationen exportiert und importiert werden können.

Backends

Backend Beschreibung Status
Filesys Speichert Schlüssel als Ordner und Werte als Dateien im Dateisystem. Fully featured, well tested; searching for maintainer.
INI Speichert Werte in INI-Dateien. Not fully featured; actively developed.
BerkeleyDB Speichert Werte in einer Berkeley-Datenbank. Eine Datenbank enthält alle Einstellungen aus /system, die benutzerspezifischen Einstellungen werden in einzelnen Datenbanken in den jeweiligen Homeverzeichnissen gespeichert. Not tested; searching for maintainer.
GConf ? ?
Network ? Noch in der Planung.
Uniconf ? ?

Aufbau der Informationsstruktur

Schlüssel

Ähnlich wie die Windows-Registrierungsdatenbank verwendet Elektra eine Baumstruktur aus Schlüsseln, in der die Konfigurationsinformationen gespeichert werden. Schlüssel können, wie Ordner im Dateisystem, beliebig verschachtelt werden. Schlüssel, die mit einem Punkt . anfangen, sind inaktiv - sie können zwar über die Elektra-API ausgelesen werden, sollten aber von den Anwendungen ignoriert werden. Dies entspricht dem Auskommentieren in Textdateien.

Elektra Linux Windows
Schlüssel /system Ordner /etc Schlüssel HKEY_LOCAL_MACHINE
Schlüssel /user Ordner $HOME Schlüssel HKEY_CURRENT_USER
Schlüssel user:Benutzername 1 Ordner /home/Benutzername 1 Datei C:\Dokumente und Einstellungen\Benutzername 1\ntuser.dat
Schlüssel user:Benutzername 2 Ordner /home/Benutzername 2 Datei C:\Dokumente und Einstellungen\Benutzername 2\ntuser.dat
Schlüssel user:Benutzername n Ordner /home/Benutzername n Datei C:\Dokumente und Einstellungen\Benutzername n\ntuser.dat

Werte

Elektra unterstützt aus Einfachheitsgründen nur drei Datentypen, nämlich String (Text), Binary (Binärdaten, werden in Hexadezimalschreibweise ebenfalls als String gespeichert) und Links. Von der Verwendung von Binary wird jedoch abgeraten, da sie als „unmanageable blackboxes“[1] betrachtet werden. Elektra arbeitet intern mit UTF8, daher werden alle Strings vor der Speicherung in UTF8 konvertiert.

Weblinks

Referenzen

  1. http://www.libelektra.org/Key%27s_Value_and_Metadata

Wikimedia Foundation.

Игры ⚽ Поможем сделать НИР

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Elektra — (griech. Ἠλέκτρα) bezeichnet: in der griechischen Mythologie: Elektra (Mykene), die Tochter des Agamemnon Elektra (Theben), Schwester des Kadmos Elektra (Tochter des Atlas), eine der Plejaden Elektra (Tochter des Latinus), Frau des Italos Ozomene …   Deutsch Wikipedia

  • Elektra-Initiative — Elektra (auch als Elektra Initiative bezeichnet) ist ein Projekt mit dem Ziel, eine einheitliche Schnittstelle zu Konfigurationinformationen von GNU/Linux Software zu schaffen. Die Konfigurationsinformationen sollen dabei in einem einheitlichen… …   Deutsch Wikipedia

  • Elektra Initiative — Elektra (auch als Elektra Initiative bezeichnet) ist ein Projekt mit dem Ziel, eine einheitliche Schnittstelle zu Konfigurationinformationen von GNU/Linux Software zu schaffen. Die Konfigurationsinformationen sollen dabei in einem einheitlichen… …   Deutsch Wikipedia

  • Elektra Birseck Münchenstein — Elektra Birseck (EBM) Rechtsform Genossenschaft Gründung 1897 Sitz …   Deutsch Wikipedia

  • Elektra Initiative — The Elektra Initiative provides an alternative back end for text configuration files for the Linux operating system.Instead of each program having its own text configuration files, with a variety of formats, Elektra tries to provide a universal,… …   Wikipedia

  • Elektra (moteur de rendu) — Opera Pour les articles homonymes, voir Opéra. Opera …   Wikipédia en Français

  • Elektra (moteur de rendu HTML) — Opera Pour les articles homonymes, voir Opéra. Opera …   Wikipédia en Français

  • Creamware (software company) — Creamware Audio GmbH was a manufacturer of DSP based sound cards and synthesizers. These cards are used to create synthesized sounds for audio production in music and other audio environments. The company was founded in 1992 and operated until… …   Wikipedia

  • Santangelo v. RIAA — Elektra v. Santangelo (2005) was a case heard before the United States District Court for the Southern District of New York, filed by Elektra Entertainment Group as one of approximately 13,000 lawsuits that the Recording Industry Association of… …   Wikipedia

  • Trade group efforts against file sharing — Arts and media industry trade groups such as the Recording Industry Association of America (RIAA) and Motion Picture Association of America (MPAA) strongly oppose and attempt to prevent copyright infringement through file sharing. The… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”