EDV:NewSystem/Ubuntu 804

From KIP Wiki
⧼kip-jumptonavigation⧽⧼kip-jumptosearch⧽

Neues Ubuntu 8.04 (Hardy Heron) System einrichten

Wichtige Sachen die für ein neues Ubuntu System benötigt werden ...

Die CD-Images liegen natürlich auch im KIP-AFS:

/afs/kip/software/Linux-dist/ubuntu/8.04/

Vorab

Falls das System dann für LDAP/AFS-Nutzer zum anmelden (siehe Nutzeranmeldung über LDAP und KIP-AFS) freigeschaltet werden soll, sollte Achtung.svg der lokale Nutzer eine andere Nutzerkennung als den KIP-Account haben.

Erstmal das Basissystem installieren ...

Nach dem ersten booten (ohne CD), sollte als erstes der sshd installiert werden, damit wir in Zukunft die Maschine remote administrieren können. Allerdings muss dazu noch der APT-Proxy eingestellt und die Source-Listen aktualisert werden:

sudo bash
echo 'Acquire::http::Proxy "http://proxy.kip.uni-heidelberg.de:3128";' >>/etc/apt/apt.conf.d/30aptproxy
cp /etc/apt/sources.list /etc/apt/sources.list.org
echo "deb http://de.archive.ubuntu.com/ubuntu/ hardy main restricted universe multiverse" >/etc/apt/sources.list
aptitude update
aptitude update
aptitude install openssh-server 
Falls es notwendig ist, sich ohne lokalen User, als root anzumelden (wird nicht empfohlen),

kann man jetzt ein root-Passwort setzten oder einen ssh-key hinterlegen.

Die Option hiddenmenu in der /boot/grub/menu.list auskommentieren und Farbe einkommentieren:

cd /boot/grub
cp menu.lst menu.lst.bak
sed 's/^hiddenmenu/#hiddenmenu/' menu.lst.bak |sed 's/^#color/color/' >menu.lst

Wichtige Pakete

Wichtige Pakete die (fast) immer benötigt werden

Vorher Aktualisieren:

aptitude update
aptitude dist-upgrade
Falls nun ein neuer Kernel installiert wurde sollte ein reboot durchgeführt werden

Editoren:

aptitude install nedit vim-gtk

Monitoring:

aptitude install smartmontools hddtemp

Netzwerk (richtig) einrichten!

Für einen PC (nicht Laptop) ist es sinnlos und meistens auch problematisch, wenn das Netzwerk über den Network-Manager gestartet wird nachdem man sich eingeloggt hat!

Also dies unbedingt für feste Arbeitsplatz-Stationen anwenden

Die Datei /etc/network/interfaces sollte in etwa so aussehen:

# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet dhcp

Alle Network-Manager-Pakte deinstallieren:

aptitude search network-manager |sed 's/^i A/i  /' |awk '/^i/{ print $2; }' |xargs aptitude remove

Jetzt noch mal eine neue IP Adresse zuweisen lassen:

dhclient eth0

OpenAFS installieren

Der Kernel 'generic'-Kernel sollte funktionieren (falls nicht, die i386-Version testen):

aptitude install kernel-image-2.6.22-14-generic

Falls ein neuer Kernel installiert wurde, am besten diesen auch booten:

reboot

Nun die Pakete installieren:

aptitude install heimdal-clients openafs-client openafs-modules-source  module-assistant openafs-krb5

Die folgenden Fragen können wie folgt beantwortet werden:

Kerberos Realm KIP.UNI-HEIDELBERG.DE
Hesiod-Domain .kip.uni-heidelberg.de
Kerberos Server ldap.kip.uni-heidelberg.de ldap2.kip.uni-heidelberg.de
Admin Server von Kerberos ldap.kip.uni-heidelberg.de
AFS-Zelle kip.uni-heidelberg.de
Größe des AFS-Cache (kb) 50000
/afs dynamisch ? Ja
Rechnernamen des Datenbank-Servers afsdb1.kip.uni-heidelberg.de afsdb2.kip.uni-heidelberg.de
Openafs-Client starten Ja (oder Nein wenn nicht erwünscht)

Jetzt das Kernel-Modul bauen: Jetzt ist es wichtig das Sie vorher ein System Update gemacht haben. Da Sie bei jedem neuen Kernel diese Prozedur wiederholen müssen.

cd /usr/src
module-assistant prepare openafs
module-assistant build openafs
Das erzeugte Paket installieren: dpkg -i openafs-modules-*.deb
OpenAFS starten: /etc/init.d/openafs-client restart

Der Inhalt von /afs sollte dynamisch generiert werden, deshalb das Pakte nochmal neu konfigurieren:

dpkg-reconfigure openafs-client    # => generate /afs dynamic => yes
fs newalias kip kip.uni-heidelberg.de
cp /afs/kip/common/etc/CellServDB /etc/openafs/
cp /afs/kip/common/etc/CellAlias  /etc/openafs/

Nun noch die Kerberos-Konfiguration korrigieren:

cp -b /afs/kip/common/etc/krb5.conf /etc/

Der Befehl 'dnsdomainname' sollte 'kip.uni-heidelberg.de' zurückgeben! Falls dies nicht der Fall ist, fehlt in der /etc/hosts ein Eintrag mit den Kompetten Namen:

if [ -z `dnsdomainname` ]; then 
  sed "s/$HOSTNAME/$HOSTNAME.kip.uni-heidelberg.de  $HOSTNAME/" /etc/hosts >/etc/hosts.tmp && mv /etc/hosts.tmp /etc/hosts;  
fi
dnsdomainname

Profile-Dateien für 'root'

Am einfachsten alles vom AFS kopieren (sind auch noch mehr Profiledateien dabei):

chmod 700 /root
cp -rv /afs/kip/common/profiles/new-System_ubuntu804-hardy/root /

Apt Sources Liste

Am besten wieder vom AFS kopieren:

cp -b /afs/kip/common/profiles/new-System_ubuntu804-hardy/etc/apt/sources.list /etc/apt/sources.list
aptitude update

Und auch die Keys importieren:

apt-key list
for f in /afs/kip/common/profiles/new-System_ubuntui804-hardy/etc/apt/keys/*.key; do 
  echo -n "Insert keyfile: $f: " && apt-key add $f; 
done
apt-key list
aptitude update

Zeit syncronisieren mit (NTP)

installieren:

aptitude install ntp

ntp configurieren (/etc/ntp.conf):

cp /etc/ntp.conf /etc/ntp.conf.org
cat /etc/ntp.conf | sed 's/^server /#server /' > /etc/ntp.conf.new
mv -f /etc/ntp.conf.new /etc/ntp.conf

echo "server ntp.kip.uni-heidelberg.de" >> /etc/ntp.conf
echo "server ntp2.kip.uni-heidelberg.de" >> /etc/ntp.conf
echo "server 129.206.119.11          # aixfile1.urz.uni-heidelberg.de" >> /etc/ntp.conf
echo "server 129.206.119.12          # aixfile2.urz.uni-heidelberg.de" >> /etc/ntp.conf
echo "server 129.206.119.41          # aixterm1.urz.uni-heidelberg.de" >> /etc/ntp.conf
echo "server 129.206.119.42          # aixterm2.urz.uni-heidelberg.de" >> /etc/ntp.conf
echo "server 129.206.119.43          # aixterm3.urz.uni-heidelberg.de" >> /etc/ntp.conf
/etc/init.d/ntp restart
/sbin/hwclock -w

ssh - Konfiguration anpassen

Für die ssh-Clients X generell einschalten

# echo " Host *" >> /etc/ssh/ssh_config
cp -b /afs/kip/common/profiles/new-System_ubuntu804-gutsy/etc/ssh/ssh_config /etc/ssh/ssh_config

Wichtige Optionen für Manuelle Konfiguration:

Host *
  ForwardX11 yes
  ForwardX11Trusted yes
  SendEnv LANG LC_*
  HashKnownHosts yes
  GSSAPIAuthentication yes
  GSSAPIDelegateCredentials yes

syslog einstellen

echo '*.*    @syslog.kip.uni-heidelberg.de'  >>/etc/syslog.conf
/etc/init.d/sysklogd restart

Nutzeranmeldung über LDAP und KIP-AFS

Achtung.svg Einträge von lokalen Nutzer (/etc/passwd,...) haben (meist) Vorrang vor den LDAP-Nutzern!

Pakete installieren:

aptitude install ldap-utils libnss-ldap libpam-ldap libpam-openafs-session libpam-heimdal

Das Paket 'libsasl2-modules-gssapi-heimdal' wäre zwar ganz nett, lässt sich aber bei Ubuntu 7.10 nicht installieren und ist auch nicht zwingend notwendig.

Die Fragen können wie folgt beantwortet werden, aber die Konfiguration wird dann sowieso überschrieben:

Attribut Wert
debconf manage LDAP configuration Nein/No
URI ldap://ldap.kip.uni-heidelberg.de/ ldap://ldap2.kip.uni-heidelberg.de/
DN dc=kip,dc=uni-heidelberg,dc=de
LDAP-Version 3
Lokaler-Root als Datenbank-Administrator Nein
Benötigt LDAP-Datenbank Anmeldung Nein

Konfiguration kopieren und testen:

/bin/cp -b /afs/kip/common/etc/kip.crt                /etc/ssl/
/bin/cp -b /afs/kip/common/etc/LDAP/ldap.conf         /etc/ldap/
/bin/cp -b /afs/kip/common/etc/LDAP/ldap-all.conf     /etc/ldap.conf
/bin/cp -b /afs/kip/common/etc/LDAP/nsswitch.conf     /etc/
/etc/init.d/nscd restart
getent passwd

Den Link für die Heimatverzeichnisse anlegen:

ln -s /afs/kip.uni-heidelberg.de/user /afsuser

Nervende Groups-Meldung korrigieren:

sed 's/$(groups)/$(groups 2>\/dev\/null)/' /etc/bash.bashrc >/etc/bash.bashrc.tmp
mv /etc/bash.bashrc.tmp /etc/bash.bashrc

PAM-Konfiguration kopieren:

cp -b /afs/kip/common/profiles/new-System_ubuntu710-gutsy/etc/pam.d/common-* /etc/pam.d/

Nun eventuell einschränken auf bestimmte KIP-Gruppen:

Dazu ist es nur notwendigt in der /etc/pam_ldap.conf einen 'pam_filter' zu aktivieren:
pam_filter  &(objectclass=posixAccount)(|(KIPGroup=S3)(KIPGroup=F10))
vi /etc/ldap.conf

Falls auch die Namensauflösung eingeschränkt werden soll, die '/etc/ldap.conf' entsprechend ändern:

vi /etc/ldap.conf
# => nss_base_passwd          ou=people,dc=kip,dc=uni-heidelberg,dc=de?sub?|(KIPGroup=F10)(KIPGroup=S3)
/etc/init.d/nscd restart

Die Fehlermeldung, wegen einer nicht auflösbaren Gruppen ID während dem Einloggen abschalten:

cp -b /afs/kip/common/profiles/new-System_ubuntu804-hardy/etc/bash.bashrc /etc

exim4 einstellen

Test ob exim installiert ist:

aptitude search exim4

Die /etc/exim4/update-exim4.conf.conf neu erstellen:

cp /etc/exim4/update-exim4.conf.conf /etc/exim4/update-exim4.conf.conf.old
grep '^#' /etc/exim4/update-exim4.conf.conf.old > /etc/exim4/update-exim4.conf.conf
echo "
dc_eximconfig_configtype='smarthost'
dc_other_hostnames='$HOSTNAME.kip.uni-heidelberg.de'
dc_local_interfaces='127.0.0.1'
dc_readhost='$HOSTNAME.kip.uni-heidelberg.de'
dc_relay_domains=
dc_minimaldns='false'
dc_relay_nets='127.0.0.1/24'
dc_smarthost='mail.kip.uni-heidelberg.de'
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname='false'
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'" >>/etc/exim4/update-exim4.conf.conf

echo "$HOSTNAME.kip.uni-heidelberg.de" > /etc/mailname

/etc/aliases anpassen:

Sie sollten da Ihre E-Mail-Adressen eintragen!
cat /etc/aliases | sed 's/^\(root\|sesselm\|weis\):/#\1:/' > /etc/aliases.new
echo "
root: sesselm, weis

sesselm: sesselm@kip.uni-heidelberg.de
weis: weis@kip.uni-heidelberg.de
" >> /etc/aliases.new
mv /etc/aliases.new /etc/aliases

Exim updaten und neu starten:

update-exim4.conf
/etc/init.d/exim4 restart
echo "Init-Mail-Test from Host '$HOSTNAME' - $RANDOM" | mail -s "Init-Mail-test from $HOSTNAME" root

Locales generieren

locale-gen
locale-gen de_DE de_DE@euro

Backup mit ADSM

Eine ITSM-Client-ID im URZ beantragen:

http://www.urz.uni-heidelberg.de/ITSM/anmeldung-hd.shtml

Pakete installieren:

aptitude install tivsm-kip
aptitude install tivsm-msg.de-de

Konfigurationsdatei anpassen (wie in der E-Mail vom URZ mitgeteilt):

cd /opt/tivoli/tsm/client/ba/bin/
vi dsm.sys
vi dsm.opt

Einmal das Passwort eingeben und Konfiguration testen:

dsmc query schedule

Wenn das funktioniert hat kann der 'daemon' aktiviert werden:

vi /etc/default/adsm
/etc/init.d/adsm start

Eventuell erstes Backup:

dsmc incremental