Hier gibt's einige Tips zu folgenden Bereichen:
Aus Zeitgr�nden ist leider nicht mehr da. :-(
Es gibt sicherlich einige Preferences, an die Du nicht jeden x-beliebigen heranlassen willst (wie z.B. Screenmode, Overscan, usw.). Unter MultiUser ist das (in gewissem Rahmen) m�glich.
Der Trick dabei ist, das Programm IPrefs als root laufen zu lassen und die Zugriffsrechte der betreffenden Prefs-Programme entsprechend so einzuschr�nken, da� beispielsweise nur root diese Programme starten kann.
Dazu ist also folgendes zu tun: So sieht mein C:IPrefs file aus:
IPrefs 13848 u---rwedr-e-r-e- 06-Jul-94 root
Wichtig ist dabei das u-Flag (und root als Eigent�mer). Normalerweise wird IPrefs in S:Startup-Sequence gestartet. Da aber u.U. die multiuser.library dann noch nicht geladen ist (das ist n�tig, damit das u-Flag Wirkung hat), solltest Du vor dem Start von IPrefs folgende Zeile in der S:Startup-Sequence einf�gen:
LoadResource LIBS:multiuser.library LOCK ; load multiuser.library
Dann werden die Zugriffsrechte entsprechend gesetzt, also z.B.
ScreenMode.info 4321 ----rw-d-------- 04-Jul-94 root Overscan.info 4358 ----rw-d-------- 04-Jul-94 root ScreenMode 13716 ----rwed-------- 06-Jul-94 root Overscan 20616 ----rwed-------- 06-Jul-94 root
Jetzt m�ssen nur noch die Zugriffsrechte der betreffenden ENVARC:Sys-Dateien gesetzt werden (sie sollten root geh�ren und nur von root beschreibbar sein).
Der Lese-Zugriff durch Gruppen-Mitglieder und andere mu� allerdings erhalten bleiben, da (bei Verwendung der Standard-Startup-Sequence) diese Dateien nach ENV: kopiert werden und daher auch nobody diese Dateien lesen k�nnen mu�.
Leider kann diese Methode nicht verhindern, da� jemand die ENV:Sys-Dateien manipuiert -- sei es durch L�schen oder durch Aufrufen eines "importierten" Prefs-Programms.
Ein Ausweg w�re, f�r jeden Benutzern ein eigenes ENV:-Verzeichnis auf einer MultiUser-Partition zu erzeugen (mittels MAssign aus der MultiUser-Distribution).
Sobald die Workbench l�uft, kann im Grunde jeder ein Shell-Fenster �ffnen, ohne sich �berhaupt eingeloggt zu haben. Das kann vermieden (besser gesagt: deutlich erschwert) werden, wenn in der S:Shell-Startup-Datei folgende Zeile steht:
CD HOME:
HOME: kann dabei mittels MAssign-Befehl aus der MultiUser-Distribution erzeugt werden. Dazu kann z.B. in der S:User-Startup-Datei die Zeile
Run >NIL: MAssign HOME: %h
eingef�gt werden (die multiuser.library mu� vorher geladen sein -- siehe LoadResource bei Preferences).
Wenn Du das Commodity Yak von Ga�l Marziou und Philippe Bastiani benutzt -- hier ein kleiner Hinweis. Yak 2.0 ist bald fertig und wird einen ARexx-Port haben, �ber den man Yak eine andere Config-Datei lesen lassen kann.
Dadurch wird es m�glich, da� unterschiedliche Benutzer auch unterschiedliche Einstellungen haben k�nnen (z.B. m�gen manche AutoActivate nicht -- andere wollen's nicht missen).
Im .profile der verschiedenen Benutzer kann dann also eine Zeile stehen, die den entsprechenden ARexx-Befehl an Yak schickt. So wird jedesmal beim Einloggen eine benutzerspezifische Konfiguration eingestellt.
Ingolf Koch, 1994-12-10