Die totale… ma schaun.

Großmutters Trickkiste I

  • Salz erhöht den Siedepunkt von Wasser, wenn ihr also mal Nudelwasser aufsetzt, dann salzt es erst, wenn es bereits am Kochen ist.
  • Man kann dem Überkochen vorbeugen, indem man etwas Öl ins Wasser gießt.
  • Damit die Nudeln später nicht zusammenkleben, sollte man sie nach dem Abgießen wieder mit etwas Öl beträufeln, alternativ auch mit Butter.

MßG,
Knorke!

Anständig.

Ich wollte nur mal schnell bemerkt haben, dass ich anständig bin.
Dann haben wir das ja geklärt. =)

MßG,
Knorke!

Entschweift.

Irgendwie sind Friseurtermine bei mir immer einschneidende Erlebnisse, danach fühl ich mich ganz anders und habe nur den Gedanken, gerade einen schweren Fehler begangen zu haben…
Aber ich komm zum Punkt:

UnDos

Und so sei es.

MßG,
Knorke!

SVN über http:// – Finally

Subversion einzurichten ist ja im Grunde kein Hexenwerk, dav_svn-Modul installieren/laden, Repo erstellen, Configs anpassen und dann vielleicht noch etwas Feintuning in Sachen Rechte etc.. Das wars eigentlich schon.

Gut, dann kanns ja losgehen.
Das Modul findet sich, sobald es installiert ist in dem Verzeichnis /etc/apache2/mods-available, das zugehörige Paket heit unter Debian übrigens “libapache2-svn“. apt-get install… kennt ihr ja. ;)
Sie heißen dann dav_svn.load und dav_svn.conf, wenn die beiden noch nicht als Softlink im Apache-Verzeichnis unter mods-enabled aufgeführt sind, added ihr sie ganz einfach mit einem zarten

ln -s /etc/apache2/mods-available/dav_svn.conf \
      /etc/apache2/mods-enabled/dav_svn.conf
ln -s /etc/apache2/mods-available/dav_svn.load \
      /etc/apache2/mods-enabled/dav_svn.load

Als nächstes erstellt ihr ein Repository, sobald subversion installiert ist, habt ihr auch ein kleines Werkzeug svnadmin zur Hand und wie bei jedem svn-Befehl hilft einem svn**** help zur Seite.
“create” heißt der Befehl, den wir brauchen.

svnadmin create --fs-type fsfs /pfad/zum/repo

Ich habe für meine Repositories extra das Verzeichnis /var/local/svn angelegt, sprich hier wäre dann etwas wie “/var/local/svn/vb-im” anzugeben.
Den Typ fsfs habe ich gewählt, weil ich gelesen habe, dass es unter Debian besser laufen solle, muss ich mal so gestehen. Ich könnt es natürlich auch lassen, ist im Endeffekt praktisch eh nur für den Effekt. Aber hey, wenn man kann…

Nun wählt ihr euch die httpd.conf eures Vertrauens, vserver, subdomain, völlig banane.
(Sprich eine der Dateien, die in /etc/apache2/sites-available liegen und in -enabled wieder einen symbolischen Link haben)
Bei mir hat sich da schon ein Problem in den Weg gestellt: durch meinen Bruder haben wir ein Verwaltungssystem installiert, ispCP. Das hat wohl die nette Art, bei der kleinsten Änderung seine Configs neu zu schreiben. Und das Problem dabei? Nunja, wenn man die Anpassungen, die gleich folgen werden, in die ispCP-eigenen httpd-Configs reinhaut, dann werden sie wohl nicht sehr lange dort überleben… außer ihr benutzt ispCP dann nie wieder.
Ein Kommentar von AS darauf: ganz von Hand oder garnicht, beides verträgt sich nicht. Verständlich.
Aber wie dem auch sei, ich habe jetzt mal eine Kleinigkeit ausprobiert. Ich habe einfach mal ganz dreist die Zeilen zu der Subdomain, die ich nutzen wollte, aus der ispCP-Config gelöscht und in ein externes File geschoben. Bis dato läufts, aber ich garantiere für nichts =P

Um wieder zum Thema zu kommen, folgende Zeilen sind nur wichtig, die ergänzt werden müssen:

<Location /svn>
    DAV svn
    SVNParentPath /var/local/svn
    AuthzSVNAccessFile /var/local/svn/access-subversion

    Require valid-user
    AuthType Basic
    AuthName "SVN Repos"
    AuthUserFile /var/local/svn/.htpasswd
</Location>


Der Pfad im Location-Tag bestimmt, wo euer SVN-Verzeichnis relativ zum Host, der dort konfiguriert wird, eingehängt wird. Sprich in meinem Fall wäre das

http://sub.domain.tld/svn

Die meisten Optionen sind wohl selbsterklärend, aber SVNParentPath wird immer gern verwechselt, denn es gibt auch SVNPath, aber das erste referenziert auf den übergeordneten Pfad des/der Repositories und letzteres direkt auf eines der kleinen, süßen selbst. Also aufpassen, sonst gibt es in nullkommanix ein 403 und nix geht mehr.

Die letzten beiden Grundlage, um per http:// auschecken zu können, sind die .htpasswd-Datei und die access-subversion-Datei, sie sagen, wer rein kann und wo und wer nicht.
Für die erste gibt es gleich ein passendes Tool mit dem selben Namen, htpasswd, das dieser Datei verschlüsselte Passwörter geben kann. MD5, SHA, CRYPT, unverschlüsselt, wie man eben grade lustig ist.

htpasswd -b .htpasswd dranja banane

…erstellt den Zugang für die gute dranja mit dem Passwort “banane”, wenn ihr die Option -b weglasst, fragt er euch zwei mal nach einem Passwort, ala sudo, nur doppelt. Wenn ihr das erste mal eine Authorisierung eintragen wollt, übergebt ihr zusätzlich noch -c , damit das File angelegt wird.

So, und für die Priese Sicherheit gleich ein
chmod 640 .htpasswd
drüber.

Bei dem access-File wird es jetzt interessant, das ist ein einfaches, wie geniales System, hier geht es einfach nur darum, den Benutzern Rechte auf Repositories und Verzeichnisse zu geben. Und – irgendwie selbstverständlich – ist es den Unix-Dateirechten dabei nicht unähnlich.
Folgendes, ich habe ein SVN-Hauptverzeichnis, das in der access-Datei als “/” bezeichnet wird, dabei handelt es sich um den in der httpd.conf angegebenen SVNParentPath, also bei mir /var/local/svn/.
Ein Beispiel:

[groups]
admin = se, bo

[/]
@admin = rw
* =

[vb-im:/]
gk = rw
mk = r

[vb-im:/trunk]
mk = rw


Die beiden User se und bo sind der Gruppe “admin” zugeteilt, sie haben im Rootdir volle Rechte, die erstecken sich damit auch automatisch auf alle Repos, die darin enthalten sind.
gk ist Projektleiter von vb-im und hat damit Lese- und Schreibrechte im gesammten vb-im-Repo, während mk nur in trunk wüten kann, trotzdem kann er aber den gesammten vb-im-Baum einsehen.

Kurz gesagt:
drei Rechtekombinationen: “rw”, “r” und ” ” (also keine Rechte)
und drei Arten von Nutzern: @XY (Gruppe), ZX (User) und *, also alle, die nicht explizit angegeben sind.

Jetzt noch einmal schnell apache neu starten und schon kann es losgehen, alles bereit für den ersten Checkout?
/etc/init.d/apache2 restart

svn co http://sub.domain.tld/svn/repo

Solltet ihr einen 403-Fehler bekommen, überprüft die Dateirechte. Die Repos müssen www-data (apache) gehören, die beiden Rechteverwaltungsdateien lesbar sein (blos nicht beschreibbar von www-data!).
Sind die Pfade richtig, ist der Apache wieder sauber hochgekommen etc.?

Abgesehen von dem abschließenden Checkout dürft ihr alles als root ausführen, naja, eigentlich habt ihr auch keine Wahl, also nur zu.

Eine Kleinigkeit fehlt natürlich noch: Commitmails.
Allerdings sind mir da noch ein paar Schönheitsfehler drin, deswegen gibt es das später, die Grundkonfiguration geht ja auch, nur… es geht besser. Wenn es euch trotzdem interessiert, ein Template dazu liegt im Repo unter hooks. “post-commit.tmpl”

MßG,
Knorke!

P.S.: Mittlerweile frage ich mich, was ich mich damals so angestellt habe… ist doch ganz einfach =)

Quoting V.

There is only one problem with common sense; it’s not very common.

Eeeben.

MßG
Knorke!

Subversion – comming up.

Die letzten drei Tage habe ich mir – bzw. einem Projekt, das ich mit ein paar Kollegen beginnen will – ein SVN-Repository angelegt.

Ich bin damit gerade eben so einigermaßen fertig geworden, dies ist jetzt mehr oder minder erstmal eine Erinnerungsnotiz an mich, dass ich darüber noch schreibe. Irgendwer muss dann ja mal eine brauchbare Anleitung liefern, wenn Google das schon nicht gebacken bekommt…

MßG
Knorke!

T-Online und die Pingerei.

Das ist doch der ultimative Kracher.
Will man mal ein Pingerchen machen, sitzt hinter einer T-Online-Leitung und hat sich vertippt, trifft man auf eine seltsame Sache.
Ich verdeutliche es mal so:

bo-eee:bo [~] > ping -c3 upsvertipptundsotutmirleid
PING upsvertipptundsotutmirleid (62.157.140.133) 56(84) bytes of data.
64 bytes from 62.157.140.133: icmp_seq=1 ttl=247 time=61.2 ms
64 bytes from 62.157.140.133: icmp_seq=2 ttl=247 time=94.2 ms
64 bytes from 62.157.140.133: icmp_seq=3 ttl=247 time=60.4 ms

--- upsvertipptundsotutmirleid ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 10294ms
rtt min/avg/max/mdev = 60.459/71.983/94.235/15.737 ms

What the fucking fuck?!
Ich hasse es, wenn Provider meinen den Usern einen Gefallen zu tun, indem sie dem User eine Suchoption geben, sobald er eine Anfrage raus schickt, die nicht erfüllt werden kann. Mag ja nett aussehen, aber genügt die Information seitens des Browsers nicht?

MßG
Knorke!

Keiner mag Nintendo.

Grade hat mir mein Feedreader erzählt (d.h.), dass Greenpeace das Dach der HP-Zentrale in gigantischen Lettern

HAZARDOUS
PRODUCTS

vollgeschmiert haben. Etwas radikal, wie Greenpeace nun mal ist, aber doch mehr oder minder zu Recht: laut einer ‘Studie’ (von G.P. !) sei HP mit dem Anteil an Giftstoffen in ihren Produkten innerhalb weniger Monate aus dem Bereich des breiten Durchschnitts ins tiefe Rot gefallen.

Da frage ich mich doch…
Habe ich was verpasst oder warum gehen die nicht mehr gegen Nintendo vor? Seit diese Firma in der Statistik auftaucht, sie eine Wertung von unter 1/10 Punkten.

MßG
Knorke!

Innenministerium unterliegt Datenspionage.

Datenspion Zeitung

Datenspion Zeitung

Zeitungsreporter sind die wahren Hacker. Mit gewagten Reallife-Einsätzen bringen sie selbst das Innenministerium um Loginnamen und Passwörter.

MßG
Knorke!, wer findet den Fehler :P

WACKÖÖÖN!!!

Noch 18 Tage bis Wacken ‘09, ich kann es kaum noch erwarten =)
Ist mir das bei all meinen Besuchen auf wacken.com noch nie aufgefallen?
Gydgets!

// Verfluchtes Applet wurde entfernt.

MßG
Knorke!, wird langsam mal wieder Zeit…