Update da Samba3 a Samba4
Questi sono i miei primi appunti sull'aggiornamento da Samba 3 (3.6.6 nello specifico) a Samba 4 (4.1.7 nello specifico). Questi appunti si riferiscono a Debian 7, ma sicuramente non ci sono differenze significative con altre distribuzioni.
Update "in place"
L'aggiornamento da Samba 3 a Samba 4 su Debian 7 (sulla stessa macchina) e` abbastanza lineare. Questa procedura e` relativa a un test che ho fatto su una installazione di Samba 3.6.6 configurata come domain controller (con un client win7 pro come test).
Dopo aver spento tutti i client e fermato Samba, si procede come segue:
- Fare una copia di /var/lib/samba e di /etc/samba per sicurezza
Eseguire net getdomainsid > sid.txt
Eseguire net groupmap list > gruppi.txt
Eseguire pdbedit -L -v > utenti.txt
- Aggiungere il repository backports ad /etc/apt/sources.list:
deb http://http.debian.net/debian wheezy-backports main
Eseguire aptitude update
Eseguire aptitude -t wheezy-backports install samba
- Verificare se il domain sid, il local sid, i gruppi, ecc, sono stati importati regolarmente
- Provare a fare login da un client.
Tutto dovrebbe funzionare senza problemi, in quanto Samba 4 legge i files (config e tdb) di Samba 3 senza problemi. L'unica eccezione e` che tre files tdb in samba4 sono stati spostati da /var/lib/samba a /var/lib/samba/private. Questi files sono: passdb.tdb, schannel_store.tdb e secrets.tdb. In Debian quando si installa Samba 4 come aggornamento di Samba 3 lo script di installazione si occupa di creare degli hardlink di questi tre files dentro a private.
Update migrando da una macchina all'altra
Se ci si trova a dover aggiornare Samba dalla versione 3 alla versione 4 e contemporaneamente cambiare macchina, e` possibile farlo con un piccolo accorgimento. La procedura e` la medesima usata per spostare un domain controller Samba3 da una macchina all'altra (mantenendo Samba 3) ../../Samba/Samba3Migration. L'unica differenza e` che nella macchina di destinazione e` necessario creare la directory "private" sotto /var/lib/samba/ e spostarci dentro tre dei files tdb che abbiamo importato da Samba3. In pratica, prima di avviare Samba 4 sulla macchina nuova, occorre eseguire:
cd /var/lib/samba mkdir private mv passdb.tdb private/ mv schannel_store.tdb private/ mv secrets.tdb private/