Howto: Clone LDAP Server
Alles Zeugs mit slapcat und slapadd hat bei mir nicht funktioniert. Nur zum festhalten:
$ slapcat -l ldapdump-$(date -I).ldif $ slapadd -l ldapdump-$(date -I).ldif |
Hier hat jemand wohl erfolg gehabt...
Was bei mir gut funktioniert hat war den neuen LDAP erst einmal mehr oder weniger so aufzusetzen wie den alten, also gleiche DN und schemas drin (dpkg-reconfigure slapd). Anschliessend habe ich mit ldapsearch auf dem alten Server alles exportiert und mit ldapadd auf dem neuen Server importiert:
$ ldapsearch -x -LLL > ldapdump-$(date -I).ldif $ ldapadd -x -D "cn=admin,dc=example,dc=org" -W -f ldapdump-$(date -I).ldif |
Der entscheidene Hinweis kam von hier.
Microsoft Office Probleme
Wenn jedes mal beim Starten der Setup Assistent startet, dann in der Registry unter
- HKEY_CURRENT_USERSoftwareMicrosoftOffice14.0WordOptions
einen DWORD erstellen mit NoReReg = 1
Wenn sich alte Dokumente mit einer Fehlermeldung nicht mehr oeffnen lassen (z.B. Office 2007 und Dokument von 1995) dann in der Registry unter
- HKEY_CURRENT_USERSoftwarePoliciesMicrosoftOffice12.0WordSecurityFileOpenBlock
einen DWORD erstellen mit FilesBeforeVersion = 0
Arbeitskolleg[e|in] gesucht! (Grafik, Webdesign)
Bei mir auf der Arbeit wird ein neuer Kollege / eine neue Kollegin gesucht, der|die sich im Bereich Grafik / Webdesign auskennt. Weitere Informationen gibt es unter:
aptitude mit search pattern; Systeme ohne DNS; Apache Satisfy Direktive; bash Bedeutung der Klammern
- Loeschen von Paketen mittels aptitude und search pattern um mehrere Pakete gleichzeitig zu loeschen, aber nicht alle hintereinander einzugeben. Das kann man mit ~n. Hier ein klassisches Beispiel wo ich das anwende. Rausfinden welcher Kernel gerade laeuft, rausfinden was es alles an alten Kernel Images auf dem System gibt, loeschen aller linux-image-2.6.32-3*:
$ uname -a $ sudo aptitude search linux-image | grep "^i" $ sudo aptitude purge ~nlinux-image-2.6.32-3
- Manchmal hat man Systeme, bei denen kein DNS verfuegbar ist. Das fuehrt dann dazu, dass einige Sachen extrem lange dauern, weil Sie versuchen irgendetwas ueber DNS aufzuloesen und dann erst weiter machen wenn es einen Timeout gibt. Als erstes sollte man dann pruefen, dass der eigene Hostname in der /etc/hosts korrekt auf localhost gemappt ist. Oft rgibt es dann auch noch Sinn in der /etc/ssh/sshd_config den folgenden Schalter zu aktivieren:
UseDNS no
- Manchmal moechte man bei einem Apache Webserver etwas fuer einen bestimmten IP Bereich direkt freigeben, und ansonsten soll ein Passwort eingegeben werden. Jeweils das eine von beiden ist einfach realisiert. Wenn man beides moechte, braucht man die Satisfy Direktive. Klassisches Beispiel dafuer:
<Location "/foo"> Order deny,allow Deny from all AuthName "Foo Login" AuthUserFile /path/to/.htpasswd AuthType Basic Require valid-user Allow from 192.168 Satisfy Any ProxyPass http://localhost:8080/foo/ timeout=6000 ProxyPassReverse http://localhost:8080/foo/ </Location>
- bash Klammern. Immer wieder spannend, deswegen hier mal eben aus meinem Kopf heraus festgehalten wie ich mit ihnen arbeite:
-
() = Subshell. Benutze ich zum Beispiel beim anlegen von Sicherheitskopien mit:
$ mv foo.txt foo.txt-$(date -I)
- [] in Schleifen = Ruft das Programm "[" auf, oder auch "test". In einer if [ ! -d "/tmp" ]; echo "directory /tmp does not exist."; fi Schleife wird bei dem [ das Programm mit dem Namen "[" aufgerufen. Liegt zum Beispiel unter /usr/bin/[ und hat auch eine eigene manpage.
-
[[]] in Schleifen = Bash eigene Funktion. Darin kann man dann auch Regex verwenden. Beispiel
$ FOO=1234 $ if [[ $FOO =~ ^[0-9]*$ ]]; then echo "OK"; else echo "NO"; fi OK $ FOO=1234a $ if [[ $FOO =~ ^[0-9]*$ ]]; then echo "OK"; else echo "NO"; fi NO $
-
{} = Variablen und Listen. Ich nutze das um in Skripten Variablen besser ersichtlich zu machen, zum Beispiel
/bin/bash FOO=foo.txt mv ${FOO} ${FOO}_$(date -I)
Ausserdem fuer Listen, zum Beispiel wenn man mehrere Ordner mit Unterordnern anlegen moechte:
mkdir -p /tmp/foo/bar/{one,two,three,four}/Nicht zu vergessen die ganzen build-in Shell Funktionen bei den Klammern, z.B. hier, da, dort, guckstu, minneminne
-
() = Subshell. Benutze ich zum Beispiel beim anlegen von Sicherheitskopien mit:
