Rechte /var/lock 11.3

Moin,

ich arbeite gerade an einer deutschen Kurzanleitung für die Installation der Arduino-IDE unter OpenSuSE 11.3.

Da ja die Devices (USB/Ser. Port) durch UDV “on the fly” erstellt werden, muß der Benutzer Mitglied der Gruppe DIALOUT und UUCP sein. Richtig?

Weiterhin muß ein Lockfile in /var/lock erstellt werden.

Bei der Installation (des Systems) werden die Rechte folgendermaßen gesetzt:

drwxrwxr-x

Gibt es grundsätzliche Bedenken bezüglich der Sicherheit, wenn die Rechte geändert werden wie folgt:

chmod o+rwx /var/lock

sprich “Others” ebenfalls Schreibrechte auf das Verzeichnis einzuräumen?

Im Prinzip sollten doch - unabhängig von den gesetzten Rechten, nur die Owner Dateien in diesem Verzeichnis löschen könnten.

Oder mache ich einen Denkfehler?

Schönes Wochenende

caerdu

Hallo

eigentlich sollte nur der Admin rechte auf dieses Verzeichnis haben.

grundsätzlich dürfte es aber kein problem sein ausser du legst wichtige sysconfig-dateien ab, oder du mit lvm arbeitest, wieso willst du eigentlich rechte auf diesen ordner geben ?

Hallo,

von wollen kann nicht die Rede sein …

Die Arduino-IDE (Entwicklingsumgebung für Arduino-Mikroprozessoren) benötigt Schreibrechte auf /var/lock bei der Erstellung serieller Schnittstellen “on the fly”. Ohne Schreibrechte keine Schnittstellen.

Vielen Dank!

caerdu

Hallo caerdu,

nur mal so ein paar Gedanken ins Blaue hinein (Brainstorming) - ich weiß ehrlich gesagt nicht einmal, was eine Arduino-IDE so macht oder wie man sie installiert…):

A) Kannst Du der Arduino-IDE bzw. vielleicht vorübergehend und für diesen Zweck root bzw. Admin-Rechte oder gar nur Schreib-Rechte einräumen?

B) Muss die Arduino-IDE eigentlich “others” sein oder kann sie zumindest durch einen extra dafür geschaffenen privilegierten (virtuellen) Benutzer (sudoer also Mitglied von sudoers) ausgeführt werden?

C) Oder könnte man den ganzen Rechte-Vergabe-Kram auch (noch genauer?) über Polkit bzw. Polkit-1 steuern?
Artikel zu der neuen Version von Polkit / Policy Kit findet man in:

1a) Andrea Müller: “Rechte-Hüter : Root Rechte für ausgewählte Aktionen
mit PolicyKit
” c’t 9/2010, Seite 194-196 (Ausgabe vom 2010-04-12)
1b) Andrea Müller: “Benutzerrechte verwalten mit PolicyKit”, c’t kompakt “Linux” 01/10 S. 98 -101 (ca. 2010-05-14)
1a entspricht wohl im Wesentlichen 1b (ich kann außer einem Bild mehr in
1b und ein paar anderen Worten am Anfang keinen Unterschied sehen):
2) Tim Schürmann: “PolicyKit" / "Türsteher : Admin-Rechte gezielt
vergeben mit PolicyKit
”, linux user 07.2010 S. 24-28 (ca. 2010-06-22 ?).

D) Wie macht es das openSUSE System denn, wenn ich als nicht privilegierter Benutzer angemeldet bin und einen USB-Stick/eine USB-Festplatte anschließe (Hotplug). Dann bekomme ich bzw. mein normaler Benutzer-Account doch von irgendeinem automatisierten Prozess Schreibrechte für die neue Partition(en) und diese werden auch auch selbständig/automatisch eingehängt (gemountet), oder? Gibt es da mögliche Gemeinsamkeiten mit der gewünschten Macht zum (automatisierten) Erschaffen neuer Schnittstellen?

Viel Erfolg und
viele weitere Vorschläge von anderen (mit konkreteren Ideen?)
wünscht
pistazienfresser

Hallo pistazienfresser,

die Arduino-IDE dient eben der Programmierung der Mikroprozessoren der Arduino-Familie, meinem momentanen Arbeitsschwerpunkt. Und da ich keine Lust habe, nur deswegen einen Windows-Rechner anzuwerfen …

Hier meine bisherigen Installationsvorschläge: Arduino : Nur ein weiteres Blog.

Ohne Schreibrechte in /var/lock ist kein Zugrriff auf die seriellen Schnittstellen möglich. Hierzu:

Changes to allow user access to com ports:

As devices are created on the fly by UDEV, using chown/chmod on /dev/ttyS0 … /dev/ttyUSB0 … will not be enough to grant access rights. Also some applications require write access to /var/lock (e.g. minicom, console terminal software) and will not work properly without that.

On openSUSE systems users get the proper access rights (rw) by putting them into the UUCP group (pre 11.2) or DIALOUT + UUCP group (as of 11.2). DIALOUT membership grants write access to serial ports, UUCP membership allows for lock-file generation in /var/uucp. This can be done with YaST or on the console by:

usermod -A some_user_name dialout

If this is done while running an X session as said user, X must be restarted to update group membership (logoff/logon).

It is also necessary for the IDE to run properly, that it can create a lockfile for the serial port in the /var/lock directory. Permissions must be changed to account for that. A stock installation of 11.2 should have these perms:

drwxrwxr-t 7 root root 4096 4. Apr 17:32 lock

which must be changed to rwx-rwx-rwt like so:

chmod o+rwx /var/lock

As the temp-flag (t) is set, files can only be deleted by their owners, although they may have rwx-rwx-rwx permissions. Everything should be safe

Quelle: Arduino playground - OpenSUSE

nur mal so ein paar Gedanken ins Blaue hinein (Brainstorming) - ich weiß ehrlich gesagt nicht einmal, was eine Arduino-IDE so macht oder wie man sie installiert…)

Danke, ich werde mir Deine Gedanken noch mal in ruhe zu Gemüte führen (momentan nerven mich Dutzende von Windows-Nutzern mit ihrem berüchtigten Conficker).

Vieölen Dank und noch einen schönen Tag aus dem fernen Osten!

caerdu:\

Das Problem existiert nicht nur mit Arduino selber. Ich hab auch eigene Java-Applicationen geschrieben, die mit Microcontrollern über eine serielle Schnittstelle kommunizieren (mit RXTX lib). Da braucht man die Rechte genauso:

Trouble shooting - Rxtx

Ich glaube, ich musste die Rechte nicht ändern (Installation ist aber schon eine Weile her).

~>ls -al /var/lock
insgesamt 24
drwxrwxr-t 6 root lock 4096 25. Aug 14:09 .
drwxr-xr-x 16 root root 4096 21. Jul 12:36 …
drwx–x–x 2 root root 4096 18. Aug 17:26 dmraid
drwxr-xr-x 2 root root 4096 24. Jul 14:09 libstorage
drwxr-xr-x 2 root root 4096 21. Aug 04:01 lvm
drwxr-xr-x 3 root root 4096 21. Aug 04:01 subsys

~>groups
users uucp dialout video vboxusers

Hallo fruchtratte,

zuerst einmal vielen Dank für den nützlichen Link.

Nach meinem schwindenen Erinnerungsvermögen mußte man bei 11.0 die Rechte noch nicht ändern. Bin ich mir aber so sicher nicht.

Es reicht aber definitiv nicht aus, dem User zum Mitglied von uucp bzw. uucp und dialout zu machen.

Ich werde mir die Hinweise und Anregungen bei einem Whisky in Ruhe durchlesen.

Mir ging und geht es natürlich auch um eine “einfache” Installation, da die Arbeit auf der Konsole ja auch nicht jedermanns Geschmack ist.

Die Benutzung des root-Accounts wollte ich natürlich nicht empfehlen, deshalb mein “workaround”.

Mmmh, werde wohl noch ein wenig nachdenken müssen.

Grüße

caerdu

Hab gerade mein Java Programm nochmal gestartet und folgende Fehlermeldung bekommen:

check_group_uucp(): error testing lock file creation Error details:Permission deniedcheck_lock_status: No permission to create lock file.
please see: How can I use Lock Files with rxtx? in INSTALL

Vermutlich hat irgend ein Update die Rechte in /var/lock wieder geändert :wink:

Ich hatte vermutlich irgend sowas wie chown root:uucp gemacht.

Hallo Fruchtratte,

eben, eben … Das reicht eben nicht.

Inzwischen hat sich aber wieder das eine und andere geändert.

werde im am Mittoch hier posten.

Schöne Woche

caerdu