Nach der Installation des Servers möchten wir das System als Build-Server konfigurieren.
Anlage eines build-Users:
Erstellen der Build-Struktur
su - builder
mkdir -p rpm/{RPMS,SRPMS,BUILD,SOURCES,SPECS,tmp}
mkdir -p rpm/RPMS/{noarch,x86_64,i386,i686}
Anpassen der ~/.rpmmacros
# http://mpeters.us/linux/rpmbuild.php
%_topdir %(/bin/echo $HOME)/rpm
%_tmppath %{_topdir}/tmp
%debug_package %{nil}
# GPG
%_signature gpg
%_gpg_path /home/builder/.gnupg
%_gpg_name tiri GmbH (build system) <rpms4tiri at tiri nospam punkt li>
%_gpgbin /usr/bin/gpg
Zusätzlich sind noch mindestens folgende Pakete nötig:
yum install rpm-build gcc gcc-c++ make patch
Da wir einen 64bit Gast installieren wollen, und es leider nur 32bit Templates für RedHat Enterprise Linux 4 für XEN Server gibt, bedienen wir uns folgender Befehlszeile:
export TIRI_UUID=`xe vm-install new-name-label='r4.7-x86_64' template='Red Hat Enterprise Linux 5.2 x64' sr-uuid=$(xe sr-list params=uuid host='xen213' name-label='Local storage'|awk '{print $NF}') on='xen213'`
In der Variable TIRI_UUID ist die ID der VM, die wir im folgenden bearbeiten.
Netzwerk-Interface auf xenbr0 hinzufügen:
xe vif-create device=0 network-uuid=$(xe network-list params=uuid bridge=xenbr0 | awk '{print $NF}') vm-uuid=$TIRI_UUID
Jetzt geben wir unsere Install-URL bekannt:
export INSTBASE="http://192.168.178.11"
export INSTURL="$INSTBASE/yum/4/os/x86_64"
xe vm-param-set uuid=$TIRI_UUID other-config:install-repository=$INSTURL
xe vm-param-set uuid=$TIRI_UUID PV-args="graphical utf8 ks=$INSTBASE/yum/kickstart/ks-r4.cfg ksdevice=eth0"
Und los geht es mit der Installation.
xe vm-start uuid=$TIRI_UUID
Die Installation läuft schnell und problemlos durch.
Nach der Installation ist es sinnvoll yum zu installieren und den RPM-Key zu importieren. Siehe auch YUM in RHEL4.
rpm --import http://192.168.178.11/yum/4/os/x86_64/RPM-GPG-KEY