System Preferences + LInux (Ubuntu)

  • Themenstarter Themenstarter tuxedo
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
T

tuxedo

Gast
Hallo zusammen,

ich hab ein kleines Problem mit dem Preference Store unter Linux.

Meine Java-Anwendung läuft als "nicht-root" und macht gebrauch von den "System Preferences". Unter Windows XP läuft das prima (da ist der default-user dummerweise auch Administrator).

Unter Ubuntu klappts leider nicht so. Laut Doku werden die systemweiten "Preferences" unter

/etc/.java/.systemPrefs/prefs.xml gespeichert.

Dummerweise hat der "normale" Benutzer da aber keine schreibrechte. Ist das normal? Ist das so gewollt? Kann ich mir nicht vorstellen.

Zugriffsrechte waren/sind bei mir

drwxr-xr-x 2 root root 4,0K 2009-02-23 21:07 .systemPrefs

Demnach "kann" das gar nicht gehen. Ist auch nicht Sinn der Sache die Rechte da zu ändern. Schließlich muss die Anwendung ja mit einem Default-Setup laufen.

Meine Anforderungen sind nunmal: Speichern von ein und denselben Settings die für alle User gelten. Und das mit Userrechten. Sprich: Ich starte Anwendung A unter Benutzer A. Benutzer A kann Programmeinstellungen vornehmen und diese speichern. Dann meldet sich Benutzer A ab, und Benutzer B an. Dieser startet dann ebenfalls Programm A und kann auf die gleichen Settings zurückgreifen und ändern wie Benutzer A. Die Anwendung an sich wird per Webstart ausgeliefert.

Wie stell ich das mit Linux und Java am besten an... Steh gerade etwas auf dem Schlauch.

Gruß
Alex

[update]

Aus der "Preferences" Doku:

Each user has a separate user preference tree, and all users in a given system share the same system preference tree.

Letzteres versuche ich zu benutzen ... bisher erfolglos.

[update2]

Unter Windows XP mit nicht-Administratorrechten krieg ich folgende Meldungen:

...
Could not open windows registry node Software\JavaSoft\Prefs at root 0x80000002. Windows RegOpenKey(...) returned error code 2.
....
flush(): Backing store not available.
 
Zuletzt bearbeitet von einem Moderator:
Ist doch völlig klar:
Ein User darf die Einstellungen anderer User nicht verändern, es sei denn er hat höhere Rechte (oder du erhöhst im Linux Fall die Rechte auf der Datei),
Darum geht es doch beim Rechte Konzept.
 
Dann ist die Info in den API Docs etwas zu allgemein gehalten. Denn:

Each user has a separate user preference tree, and all users in a given system share the same system preference tree.

Aber ich versteh auch deinen Einwand. Demnach sollte es am besten 3 Varianten geben:

1) jeder User hat seinen separaten preference tree
2) es gibt einen (shared) preference tree in dem alle User lesen und schreiben können
3) es gibt einen system preference tree, in dem nur Admins/Root (lesen/)schreiben können

Damit wäre alles abgedeckt. Aber offenschtlich gibts nur 1 + 3, und nicht wie die Doku suggeriert 1 + 2 --> doof.
 
1) jeder User hat seinen separaten preference tree
2) es gibt einen (shared) preference tree in dem alle User lesen und schreiben können
3) es gibt einen system preference tree, in dem nur Admins/Root (lesen/)schreiben können

Damit wäre alles abgedeckt. Aber offenschtlich gibts nur 1 + 3, und nicht wie die Doku suggeriert 1 + 2 --> doof.
Nö. Es gibt 1 + 4:
4) es gibt einen system preference tree, in dem in der Regel alle Benutzer lesen aber nur priviligierte Benutzer schreiben dürfen.

Oder dürfen Deine User unter /etc/** etwa nicht lesen?
[edit] doch dürfen sie... steht ja oben 🙂

Ebenius
 
Zuletzt bearbeitet:
Ja, dürfen sie. Aber da nur die Clientsoftware auf dem Rechner läuft und diese nicht mit root-Rechten läuft: Wer legt dann initiell die Preferences an wenn User nur lese-Rechte haben?

- Alex
 
Aus Preferences-API-Doc:
There are two separate trees of preference nodes, one for user preferences and one for system preferences. Each user has a separate user preference tree, and all users in a given system share the same system preference tree. The precise description of "user" and "system" will vary from implementation to implementation. Typical information stored in the user preference tree might include font choice, color choice, or preferred window location and size for a particular application. Typical information stored in the system preference tree might include installation configuration data for an application.
... orakele ich heraus: System-Nodes werden am besten bei der Installation gesetzt. 🙂

Wollte nur die Aussage richtigstellen, Lösung habe ich keine.

Ebenius
 
Aus Preferences-API-Doc:
... orakele ich heraus: System-Nodes werden am besten bei der Installation gesetzt. 🙂

Wollte nur die Aussage richtigstellen, Lösung habe ich keine.

Ebenius

Hmm, die Orakelei macht die Sache ja nicht "besser". Kann dem User ja nicht vorschreiben sich für den initiellen Download via Webstart root-Rechte zu besorgen. Okay, ich könnte schon. Ich will's aber nicht.

Gruß
Alex
 
Hmm, die Orakelei macht die Sache ja nicht "besser". Kann dem User ja nicht vorschreiben sich für den initiellen Download via Webstart root-Rechte zu besorgen. Okay, ich könnte schon. Ich will's aber nicht.
Würde ich auch nicht wollen. Damit hat sich das Thema SystemRoot für Preferences dann einfach erledigt. 🙂

Ebenius
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben