setgid Bit bei Verzeichnissen

Bei ausführbaren Dateien kennt man ja das setuid und das setgid Bit, aber auch bei Verzeichnissen kann es eingesetzt werden. Das gehört allerdings auch zu den Sachen, die ich alle paar Wochen wieder vergesse…

Normalerweise gehören Dateien, welche ein User schreibt, ihm und seiner primären Gruppe; möchte man aber, dass Dateien in einem Verzeichnis bei der Erstellung der Gruppe gehören, der das Verzeichnis schon gehört, so kann man einfach das setgid Bit setzen. Praktisch kann das z.B. bei Verzeichnissen für Arbeitsgruppen sein.

Das ganze sieht dann so aus:

user1@sinclair ~/testdir $ id
uid=1005(user1) gid=1005(user1) groups=1005(user1),1006(group1)
user1@sinclair ~/testdir $ ls -al
total 0
drwxr-xr-x 2 user1 group1 48 Feb 20 15:51 .
drwxr-xr-x 4 user1 user1 216 Feb 20 15:48 ..
user1@sinclair ~/testdir $ touch foo
user1@sinclair ~/testdir $ ls -al
total 0
drwxr-xr-x 2 user1 group1 72 Feb 20 15:52 .
drwxr-xr-x 4 user1 user1 216 Feb 20 15:48 ..
-rw-r–r– 1 user1 user1 0 Feb 20 15:52 foo
user1@sinclair ~/testdir $ chmod g+s .
user1@sinclair ~/testdir $ touch bar
user1@sinclair ~/testdir $ ls -al
total 0
drwxr-sr-x 2 user1 group1 96 Feb 20 15:52 .
drwxr-xr-x 4 user1 user1 216 Feb 20 15:48 ..
-rw-r–r– 1 user1 group1 0 Feb 20 15:52 bar
-rw-r–r– 1 user1 user1 0 Feb 20 15:52 foo

Kleinmacherei

Bevor ich nächstes mal wieder lange überlegen muss hier mal ein kleiner Einzeiler um alle Einträge in einem Verzeichnis in Kleinbuchstaben umzuwandeln:

for i in `ls|grep [[:upper:]]| xargs`; do mv $i `echo $i|tr [:upper:] [:lower:]`; done

Geht sicherlich auch eleganter, aber es hat funktioniert 😉

cron.daily, etc.

Man sollte übrigens nicht vergessen, die Skripte in cron.daily/.weekly/… auch mit einem +x zu versehen, sonst wundert man sich z.B. warum kein Backup gemacht wurde 😉

Subfolder bei dovecot

Bei dovecot sollte man bedenkten, dass Ordner mit einem “.” beginnen müssen, so wird jetzt Spam bei mir in $HOME/.maildir/.spam einsortiert; ein Ordner namens spam würde ignoriert. Will man nun einen Unterordner im Ordner Spam haben, dann muss dieser z.B. $HOME/.maildir/.spam.subfolder heissen u.s.w. Nachlesen kann man das auch auf http://www.dovecot.org/doc/mail-storages.txt.

Endlich…

ist nun auch mein eigener Rechner in der neuen Wohnung am Netz. Und das per WLAN mit einem D-Link DWL-122 USB-Adapter, der hat einen Prism Chipsatz und läuft nun mit linux-wlan-ng ohne Probleme, ich muss mir da nur noch ein Startskript basteln. Statt des Cisco VPN kommt VPNC zum Einsatz und bisher läuft alles erstmal zufriedenstellend. Ein Download vom lokalen FTP-Server der Uni lief mit knapp über 500 kb/s.