Migration Samba 2.2.7 (rpm) vers 3.0.x (compilé à partir des sources)

L’idée est donc de mettre à jour (sur la même machine donc) un Samba 2.2.7(rpm) vers Samba 3.0.28a (compilé à partir des sources)….
Serveur : Red Hat 8.0 kernel 2.4 !!!

Aucun souci… la migration s’est très bien déroulée, voici donc les commandes utilisées…

Voici juste un aperçu de la version initiale de Samba sur le PDC (RedHat) :

smbd -V
Version 2.2.7-security-rollup-fix
rpm -qa | grep samba
samba-swat-2.2.7-5.8.0
samba-common-2.2.7-5.8.0
samba-client-2.2.7-5.8.0
samba-2.2.7-5.8.0

1) Sauvegarde du serveur avec Partimage (sauvegarde de toutes les partitions / /home /usr /var /tmp…)
2) Reconstitution de ce serveur sur une vielle becane pour tester la migration (On restaure les partitions sauf /home qui est énorme…)
-> pour restaurer une partition avec partimage il faut avoir une partition aussi grande (c’est à dire identique ou +) que l’originale… donc impossible de restaurer /home sur la vieille becane : il suffit de se bricoler un /home en recopiant quelques comptes pour les tests…)
on finalise à coup de chroot + grub-install…. voilà le serveur reconstitué!

Maintenant tout se passe sur le serveur de test!!!!

Il est conseillé de changer, dans smb.conf (sur la machine de test), la valeur de « WORKGROUP » afin qu’il n’y a pas de conflit avec le PDC qui est toujours en prod. De plus, il est bon d’intégrer au moins 2 machines à ce nouveau domaine… afin de ce rendre compte, après la migration, s’il n’y a pas d’incidence sur les PC du domaine…

3) Migration de Samba :

Installation de samba 3.0.28a:

cd /usr/local/install
export http_proxy=http://monsquid.mondomaine:3128
wget http://us3.samba.org/samba/ftp/stable/samba-3.0.28a.tar.gz
tar zxvf samba-3.0.28a.tar.gz
cd samba-3.0.28a/source
./configure --prefix=/usr/local/samba
make
/etc/init.d/smb stop
make install

On met les fichiers de conf à la bonne place :

cp /etc/samba/smbpasswd /usr/local/samba/lib/
cp /etc/samba/smb.conf /usr/local/samba/lib/
cp /etc/samba/secrets.tdb /usr/local/samba/private/
mkdir /usr/local/samba/lib/conf
cp /etc/samba/lib/* /usr/local/samba/lib/conf
mkdir /usr/local/samba/var/locks
cp /var/cache/samba/* /usr/local/samba/var/locks
cp /etc/samba/lib/users.map /usr/local/samba/lib

On ne supprime pas les anciens fichiers de configuration :

mv /etc/samba /etc/sambaold

Modification/adaptation du fichier smb.conf :

  • changement des chemins de smbpasswd et de users.map
  • add user script devient add machine script
  • rajout de l’attribut (si on veut intégrer des Vista sans changer le mode d’authentification par défaut) :
    client NTLMv2 auth = Yes

On teste smb.conf :

/usr/local/samba/bin/testparm

On configure la variable d’environnement $PATH :

echo "export PATH=$PATH:/usr/local/samba/bin:/usr/local/samba/sbin" >> /etc/profile
export PATH=$PATH:/usr/local/samba/bin:/usr/local/samba/sbin

Copie du script de démarrage /etc/init.d/smb :

#!/bin/sh
 
# Check that the Samba configuration file exists
[ -f /usr/local/samba/lib/smb.conf ] || exit 0
 
start(  )
{
       echo -n "Starting SMB services: "
       /usr/local/samba/sbin/smbd -D
       ERROR=$?
       echo
 
       echo -n "Starting NMB services: "
       /usr/local/samba/sbin/nmbd -D
       ERROR2=$?
       if [ $ERROR2 -ne 0 ]
       then
               ERROR=1
       fi
       echo
 
       return $ERROR
}
 
stop(  )
{
       echo -n "Shutting down SMB services: "
       /bin/kill -TERM -a smbd
       ERROR=$?
       echo
 
       echo -n "Shutting down NMB services: "
       /bin/kill -TERM -a nmbd
       ERROR2=$?
       if [ $ERROR2 -ne 0 ]
       then
               ERROR=1
       fi
       echo
 
       return $ERROR
}
 
case "$1" in
 start)
       start
       ;;
 stop)
       stop
       ;;
 *)
       echo "Usage: $0 {start|stop}"
       exit 1
esac
 
exit $?

On rend le script exécutable :

chmod +x /etc/init.d/smb

Dans /etc/rc.local on met :

1
/etc/init.d/smb start

Lancement :

/etc/init.d/smb start

Pour finir (on supprime les rpms) :

rpm -e samba-swat-2.2.7-5.8.0 samba-common-2.2.7-5.8.0 samba-client-2.2.7-5.8.0 samba-2.2.7-5.8.0

TADAAAA !!! C’est aussi simple que cela ;)
L’authentification depuis les PC du domaine fonctionne comme avant… c’est tout bon ^^

La migration s’est donc bien passée sur le serveur de test… on peut donc le faire sur le serveur de prod !

Cette entrée a été publiée dans Système. Vous pouvez la mettre en favoris avec ce permalien.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

*


Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">