1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Script bei Anmeldung für jeden User starten

Dieses Thema im Forum "macOS & OS X" wurde erstellt von shaun-the-sheep, 10.06.09.

  1. shaun-the-sheep

    shaun-the-sheep Golden Delicious

    Dabei seit:
    01.02.09
    Beiträge:
    9
    Hallo zusammen,
    ich habe mir für diese Aufgabe extra erstmal einen G4 ausgeliehen, da ich ansonsten nichts mit Mac zu tun habe (noch nicht...:) ). Es geht darum, in einem heterogenen Netzwerk ein Script für bestimmte userspezifische Einstellungen beim Anmelden automatisch zu starten. Für Win und Linux ist das gelöst, nur haben wir auch noch 40-50 OS X Maschinen im Netz, die bisher aussen vor sind.

    Wichtig wäre aufgrund der Anzahl der Rechner und darauf eingetragenen Benutzer, dass sich das Script nach Möglichkeit im Single-User-Modus durch Kopieren in einen bestimmen Ordner und ggf. Anpassen eines Startscriptes, einer Konfigurationsdatei o.ä. einbinden lässt.

    Oder anders gesagt: es wäre optimal, wenn man sich nicht unter jedem Benutzeraccount anmelden muss, um das Script irgendwo einzutragen.

    Gibt es diese Möglichkeit überhaupt im OS X?
     
  2. Rastafari

    Rastafari Golden Noble

    Dabei seit:
    10.03.05
    Beiträge:
    17.911
    Sicher doch.
    Aber vllt beschreibst du erst mal welche OS-Version du zu vergewaltigen wünscht, und auch etwas näher was da eigentlich geschehen soll. Dann kann man dich besser gehelft machen.
     
  3. shaun-the-sheep

    shaun-the-sheep Golden Delicious

    Dabei seit:
    01.02.09
    Beiträge:
    9
    Wo ist meine Antwort von gestern vormittag hin?
    Egal. Es geht darum, bestimmte Netzwerkressourcen für die jeweils angemeldeten Nutzer freizuschalten.
    Eine andere Lösung, und sei sie noch so viel besser und komfortabler, kommt im Moment nicht in Frage.
    Daher braucht ihr euch nicht den Kopf zu zermartern auf der Suche nach Alternativen - was ich brauche, ist die Möglichkeit, ein Programm beim User-Logon auszuführen, ohne dass dieser oder ein Admin es manuell für jeden Benutzer einbinden müsste.
     
  4. Rastafari

    Rastafari Golden Noble

    Dabei seit:
    10.03.05
    Beiträge:
    17.911
    Das brauchen wir auch nicht.
    Wir müssten aber trotzdem wissen...
    ...welche OS-Version du einsetzt...
    ...ob dieses Skript unter Benutzer- oder root-Rechten laufen soll/muss...
    ...ob es nur beim Systemstart laufen muss oder bei jedem User-Login...
    ...ob es vllt ein Gegenstück beim Logout braucht...
    ...welche Form von Skript es überhaupt ist (Apple-Skript, Shellskript...)
    Also entweder verrätst du's oder nicht. Ein drittes mal werde ich nicht nachhaken.
     
  5. shaun-the-sheep

    shaun-the-sheep Golden Delicious

    Dabei seit:
    01.02.09
    Beiträge:
    9
    Ups, sorry - in der Antwort, die anscheinend nicht eingetragen wurde, hatte ich das geschrieben.

    OS von 10.3 auf den alten G3-iMacs bis zum aktuellsten auf den neune Intel-iBooks
    Aufgerufen werden muss es beim User-Login, da die IP des Rechners im Kontext mit dem jeweils anmeldenden Benutzer gebraucht wird. Daher wäre ein 2. Script beim Logout natürlich sehr charmant, bisher haben wir darauf aber verzichtet, ausgehend davon, dass beim nächsten User an derselben Maschine das Script ja wieder aufgerufen wird.
    Das Script ist ein Shellscript und theoretisch reicht es, wenn es im User-Kontext gestartet wird, allerdings wäre mir root lieber, weil ich es dann zumindest rudimentär vor dem User verstecken könnte (ansonsten "beschaffen" sich einige durch geschicktes Ausführen des Scripts auch gerne mal Zugriff auf einen ansonsten gesperrten Drucker o.ä., aber der Anreiz scheint so minimal zu sein, dass es bisher trotz der offensichtlichen Möglichkeit nicht passiert ist)
     
  6. Rastafari

    Rastafari Golden Noble

    Dabei seit:
    10.03.05
    Beiträge:
    17.911
    Der Beschreibung nach wirst du hiermit glücklich werden.
    Das geht gleichbedeutend auch beim Logout (siehe auch hier)
    Aber vergiss nicht folgendes:
    Diese Skripte laufen im root-Kontext (und bekommen den Benutzer als Argument übergeben).
    Daher sind sie an geeigneter Stelle und mit passenden Sicherheitseinstellungen zu speichern.
    (Absolut mit SUID-Programmen vergleichbar.)
    Empfehlung:
    Code:
    drwxr-x---  root:wheel  /private/var/root/bin/
    -rwxr-x---  root:wheel  /private/var/root/bin/login_hook.sh
    -rwxr-x---  root:wheel  /private/var/root/bin/logout_hook.sh
    Und: Baue diese Skripte extrem fehlertolerant!
    Weil:
    Hängen sie, kannst du dich nicht mehr ein- bzw ausloggen!
    Dann kannst nur noch im "Single-User Mode" die nötigen Korrekturen vornehmen!

    Weitere Hilfestellung nötig?
     
  7. shaun-the-sheep

    shaun-the-sheep Golden Delicious

    Dabei seit:
    01.02.09
    Beiträge:
    9
    Perfekt, danke!
    Morgen kommt der Mac auf den Schreibtisch und dann werde ich loslegen.
    Danke auch für den Hinweis bzgl. der Fehlertoleranz, ich werde für alle Fälle entweder einen sehr kurzen Timeout für die Kommunikation mit dem Server wählen oder gleich per UDP senden.
    Da man die Macs lokal nutzen können soll (u.a. Videoschnitt, Präsentation) soll Erreichbarkeit der Server keine Voraussetzung sein, und das soll mein Script natürlich auch respektieren.
     

Diese Seite empfehlen