On Monday 09 September 2002 21:39, Ulrich Wiederhold wrote:
[...]
> * Ulrich Gehring <[EMAIL PROTECTED]> [020909 21:09]:
> > Gibt es da etwas eleganteres als beim Booten das ganze
> > Verzeichnis zu löschen und dann ein "neutrales" hinein zu
> > kopieren?
>
> Du kannst das über Benutzerrechte machen.
>
> 1. Wenn alle Benutzer nicht in ihrem Homeverzeichnis schreiben
> dürfen, kannst Du auch alle auf ein /home/default setzen und
> ihnen dort die Schreibrechte entziehen (ala chmod 555), dann
> brauchst Du nicht für jeden Benutzer ein home-Verzeichnis.
>
> 2. Bei allen Files im Verzeichnis wäre vielleicht ein "chmod
> 444" angebracht.
>
> 3. Zusätzlich solltest Du eine entsprechende umask in der
> .bashrc setzen.
>
> 4. Wenn die User irgendwo Daten ablegen können sollen, einfach
> ein Verzeichnis /daten anlegen, über quotas dessen Größte
> begrenzen, vielleicht zur Sicherheit ein T-Bit setzen, dann
> können mit entsprechenden Rechten die User ihre Dateien nicht
> gegenseitig verändern/löschen. Diese Verzeichnis kannst Du dann
> bei jedem Neustart löschen, oder per cronjob jede Stunde, sofern
> ein gewisses Alter der Datei überschritten ist.
[...]
Ich finde das ist ein etwas unflexibler Weg, ich würd's anders 
machen. Allerdings hat deine variante den Vorteil, dass sie den 
User ein sehr enges Korsett anlegt. So ähnlich würde man es in 
einer grösseren Firma sicherlich in Erwägung ziehen.

Das KDE Menü eines Benutzers liegt unterhalb von 
$HOME/.kde/share/applnk $HOME ist in meinem Beispiel durch dein 
entsprechendes User Verzeichnis zu ersetzen!
Ist das Home Verzeichnis des Users eine ext2 oder ext3 Partition, 
dann:
Damit der User nichts mehr an den KDE Menüs ändern kann setzt du 
dieses Verzeichnis als root mit 
chattr -i $HOME/.kde/share/applnk
auf immutable (unveränderlich). Die Rechte und Zugehörigkeiten des 
verzeichnisses bleibt gleich nur kann der User nichts mehr in 
dieses Verzeichnis schreiben. Und das beste ist er wird sich nur 
wundern warum er nicht in das Verzeichhnis schreiben kann und es 
nicht löschen kann. Für ihn sieht alles so wie immer aus :)

Das gleiche machst du jetzt mit allen Dateien und Verzeichnissen 
unter $HOME//KDesktop:
su -
cd KDesktop
find . -type f -exec chattr +i {} \;
find . -type d -exec chattr +i {} \;  
cd ..
chattr +i KDesktop

und der User ist eingekästelt, zumindestens was KDE und den KDE 
Desktop angeht.
Alle anderen Verzeichnisse und Dateien sind weiterhin mit ihren 
gesetzten Rechten vom User zu bearbeiten.
Nachteilig ist allerdings, dass bei einem Wechsel zu einer neuen 
KDE Version unter Umständen alle diese Einstellungen wieder zu 
ändern sind. Das bedeutet dann etwas mehr arbeit.

Ist das Home Verzeichnis des Users keine ext2 oder ext3 Partition 
dann bleibt dir nur der Weg die ownership der betreffenden Dateien 
und Verzeichnisse dem User zu entziehen:
chown root:root $HOME/.kde/share/applnk
su -
cd KDesktop
find . -type f -exec chown root:root {} \;
find . -type d -exec chown root:root {} \;  
cd ..
chown root:root KDesktop

Ein weiterer möglicher Weg ist die Verzeichnisse durch links auf 
die entsprechenden Systemverzeichnisse zu ersetzen, das ist sogar 
ein etwas eleganterer Weg, IMHO :)
rm -r $HOME/.kde/share/applnk
ln -s /usr/share/applnk/ $HOME/.kde/share/applnk

Die Änderungen für das Verzeichnis KDesktop sind etwas 
umfangreicher. Am einfachsten ist es, wenn du ein KDesktop 
Verzeichnis eines Test Users als Vorlage nach /etc opt kopierst 
und das dann verlinkst.

cp -r /hame/testuser/KDesktop /etc/opt
find /etc/opt/KDesktop -exec chown root:root {} \;
chown root:root /etc/opt/KDesktop

jetzt wechselst du in das Userverzeichnis:
cd $HOME/
rm -r $HOME/KDesktop
ln -s $HOME/KDesktop /etc/opt/KDesktop

So, dass waren jetzt drei Beispiele wie man es machen kann, such 
dir eins aus:)

Tschüss,
Thomas



--
Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject "unsubscribe". Probleme? Mail an [EMAIL PROTECTED] (engl)

Antwort per Email an