Redimp's Blog
20Oct/110

Automatisierte Installation von Ubuntu Clients

Disclaimer: Dies ist kein Howto. Es ist nicht kleinschrittig und nicht vollstaendig. Der Eintrag soll nur die grundlegende Idee vermitteln. Die Idee ist natuerlich nicht neu.

Wir haben in unserem Netz ein Rudel Rechner (Clients mit Ubuntu LTS) welches wir einfach auf dem neusten Stand und wartbar halten wollen. Selbiges gilt natuerlich auch fuer unsere Konfiguration. Die automatisierte Installation ist mittels preseed umgesetzt. So bietet es sich an unsere Konfiguration auch mittels Debian Paketen zu verwalten.

Ein Beispiel: Unsere Nis/Kerberos Authentifizierung. Es gibt zu diesem Zweck ein Paket NETZNAME-config-auth welches entsprechende Abhaengigkeiten (krb5-user libpam-krb5 krb5-config nis) hat und Dateien wie die /etc/nsswitch.conf anpasst.

Wir betreiben ein lokales Repostiry das diese Pakete enthaelt, ein Howto wie man das macht findet sich beispielsweise hier. Wir teilen der preseed mit, dass es dieses verwenden soll durch

d-i apt-setup/local0/repository string \
http://SERVERNAME/additional ./

Unser Paket stellt keine Fragen, aber die Pakete die mitinstalliert werden. Das erledigen wir durch eine entsprechende Konfiguration in der preseed:

# Fragen beantworten

# fuer nis
nis nis/domain string NISDOMAIN
# und krb5.
d-i krb5-config/admin_server string SERVERNAME
d-i krb5-config/kerberos_servers string SERVERNAME
d-i krb5-config/default_realm string KRB5DOMAIN

Mittels eines late_command Skripts wird dann das Paket installiert.

DEBIAN_FRONTEND=noninteractive DEBCONF_PRIORITY=critical apt-install NETZNAME-config-auth

So wird bei der Installation gleich alles mitinstalliert und man muss sich um nichts weiter kuemmern. Wenn sich etwas aendert, muss man lediglich das Paket auf den neusten Stand bringen. Dazu muss man natuerlich die Debian Pakete verneuftig pflegen und auch dafuer sorgen, dass sie sich sauber updaten und auch deinstallieren lassen.

Filed under: Tech. No Comments
19Nov/091

Vortrag: Subversion

Im Institut wird dieses Semester ein Mini-Seminar veranstaltet, dass den Titel "Technische Numerik" traegt. Hier werde alle moeglichen technischen Mittel erlaeutert, die man in der Numerik braucht und die (meistens) wenig mit Mathe zu tun haben. Unter den Vortragsthemen sind der gdb, valgrind, mpi und noch ein Haufen anderer, spannender Kram.

Ich habe im Rahmen dieses Seminars einen Vortrag mit dem Thema "Versionskontrolle mit Subversion" gehalten. Meine Folien dazu gibt es hier: Versionskontrolle mit SVN.

Da ich das wiederholt gefragt worden bin... Die "Terminals" habe ich mit dem \LaTeX Paket lstlisting gemacht.

% Paket einbinden
\usepackage{listings}

% Sprache definieren
\lstdefinelanguage{svn}{
morekeywords={commit,import,add,checkout,create,status,
diff,update,propset,propdel,blame,log,resolve,copy,propedit,
propget,proplist,merge,copy},
morekeywords={[2]svn,svnadmin,ls,cd}
}

% Listings konfigurieren
\lstset{lineskip=1pt,numbers=none,linewidth=\linewidth,
basicstyle=\color{white}\ttfamily,
backgroundcolor=\color{black},
keywordstyle=\color{blue},
keywordstyle={[2]\color{green}}
}

% Die Umgebung svn erstellen
\lstnewenvironment{svn}[1][]
{\lstset{language=svn,#1}}{
}

Das laesst sich im Paket latex-beamer dann wie folgt benutzen:

\begin{frame}[fragile]{Test der svn-Umgebung}
\begin{svn}
> svn update
At revision 1.
\end{svn}
\end{frame
}

und sieht dann so aus:

Filed under: Tech. Tagged as: , , 1 Comment