Linux

Nach dem Wochenende habe ich bemerkt, daß die Ubuntu-Updates, die ich am Freitag davor durchgeführt habe wohl etwas "verschlimmbessert" haben.

So begrüßt mich am darauffolgenden Montag, direkt eine Kernel-Panic.

Alles im Grunde nichts gravierendes, aber...

  1. Root-Partition ist verschlüsselt
  2. Home-Verzeichnis ebenfalls verschlüsselt

Nunja...

Nach einer Woche HOND am Laptop und ziemlich zeitintensiver Suche, hier der zusammengetragene, komplette Lösungsweg.

Befehl: git config

git config --global user.name "Florian Latzel"
git config --global user.email "floh@netzaffe.de"

Git-Konfigurationsdateien: /etc/gitconfig, ~/.gitconfig, .git/config

Auswertungsreihenfolge:

  1. /etc/gitconfig
    Systemweite Git-Konfigurationsdatei
  2. ~/.gitconfig

Nachdem sich bei einem Rechnerverbund mal wieder Updates angehäuft haben, stand bis jetzt normalerweise immer die folgende Prozedur an:

  • ssh server1
  • aptitude safe-upgrade
  • exit
  • ssh server2
  • aptitude safe-upgrade
  • exit
  • ...
  • ssh serverN
  • aptitude safe-upgrade
  • exit

Ich hatte noch einen Artikel aus dem Linux-Magazin im Kopf (Ausgabe 1/11, S. 85, Charly Künast: "Sponton simultan"),
indem der gute Charly einen möglichen Lösungsansatz für mich parat hält um N Schritte zu einem zusammen fassen zu können.

Die Lösung heißt Cluster SSH.

Damit der Webserver auch die Repositories in Gitweb anzeigen kann,
habe ich den Benutzer gitosis der Gruppe www-data hinzugefügt.

Als root:

usermod -g www-data gitosis

Auf birgit, die Datei /etc/apache2/sites-available/birgit.example.com mit dem folgendem Inhalt anlegen:

<VirtualHost *>
  ServerName birgit.example.com
  ServerAdmin webmaster@example.com
  DocumentRoot /srv/gitosis/repositories
  SetEnv GITWEB_CONFIG /etc/gitweb.conf
  Alias /gitweb.css /usr/share/gitweb/gitweb.css

Die Konfigurationsdatei für Gitweb,
hier angepasst $projectroot welche auf das Verzeichnis /srv/gitosis/repositories, in dem gitosis seine Repos ablegt zeigt.

# path to git projects (<project>.git)
# $projectroot = "/var/cache/git";
$projectroot = "/srv/gitosis/repositories";

# directory to use for temp files
$git_temp = "/tmp";

Einrichtung von gitweb der Weboberfläche für Git.

Jetzt kann als florian@demine ein neues Repository, hier "hongomat"
angelegt werden:

mkdir hongomat
cd hongomat
git init
vi foo
vi bar
git add foo bar
git commit -m 'Initial commit'

Mit git init wird das Repository initialisiert,
es ist ein initialer Commit nötig.

git remote add origin gitosis@birgit:hongomat.git

Jetzt können wir mit unserem frischgebackenem Admin-User florian@demine neue Repositories anlegen.

Als florian@demine auf der lokalen Workstation:

gitosis-admin.git auschecken

git clone gitosis@birgit:gitosis-admin.git
Stoppt die Vorratsdatenspeicherung! Jetzt klicken &handeln!