Apportez votre aide…
Ceci est une ancienne révision du document !
Comment partager des données avec AppleTalk
Pour les personnes utilisant Ubuntu et voulant partager leurs données (ou accéder) avec des utilisateurs de Mac Os 9.x ou inférieur (ceux qui utilisent Mac Os X peuvent utiliser les partages samba, ou donner l'accès via FTP, SFTP….) doivent installer netatalk. C'est le Samba pour les machines Apple. Il marche très bien avec Mac OS X et est très facile à configurer.
Installation
Pour l'installer rien de plus facile, il suffit d'installer le paquet netatalk. Cependant, le paquet disponible n'est pas la dernière version. Si l'on veut la dernière version (3.0.3 pour le moment), qui est plus simple à utiliser, il va falloir la compiler à partir des sources.
Je conseille vivement d'utiliser la version 3.0.3, car elle est facile à configurer et marche (théoriquement) avec mac OS X mais aussi Mac OS 9, peut-être même 8 (je n'ai pas essayé) avec les paramétrages adéquats.
Installation à partir des sources
Cette documentation est inspirée de celle du site officiel, traduite et détaillée.
Tout va se faire en ligne de commande. Pour commencer, il faut télécharger les sources. Par la suite, nous considérerons que l'archive contenant les sources est dans /media. Si vous n'avez pas accès à internet sur le serveur, le plus simple est de passer par une clef usb.
Si vous ne disposez pas déjà les outils de compilation, il faut les installer. Il faut aussi installer les paquets suivants:
Conseil: on va installer plusieurs paquets, presque tout sera fait en root, donc il peut être utile de passer en super-utilisateur ( $ su )
$ sudo aptitude install build-essential $ sudo aptitude install libssl-dev $ sudo aptitude install libgcrypt11-dev $ sudo aptitude install libkrb5-dev $ sudo aptitude install libpam0g-dev $ sudo aptitude install libwrap0-dev $ sudo aptitude install libdb-dev $ sudo aptitude install libavahi-client-dev $ sudo aptitude install libacl1-dev $ sudo aptitude install libldap2-dev $ sudo aptitude install libcrack2-dev $ sudo aptitude install systemtap-sdt-dev $ sudo aptitude install libdbus-1-dev $ sudo aptitude install libdbus-glib-1-dev $ sudo aptitude install libglib2.0-dev $ sudo aptitude install libevent-dev
Si vous avez le paquet libavahi-compat-libdnssd-dev installé (essayez
sudo aptitude search libavahi-compat-libdnssd-dev
si le paquet est précédé d'un i ou d'un A, il faut le désinstaller).
Allez, tout est prêt, passons aux choses sérieuses: décompressons l'archive.
$ tar -xvf /media/netatalk-3.0.3.tar.bz2 -C /home
Les options:
- x: eXtract: extraire, pas compresser ou créer…
- v: Verbose: qu'on sache ce qu'il fait
- f: File: on lui dit que le fichier indiqué après est celui à décompresser.
- C: on indique le dossier reçevant l'archive décompressée.
Ici nous avons décompressé l'archive dans /home, mais on peut mettre le dossier que l'on veut.
Maintenant, pour simplifier les choses, on va se placer dans le dossier où l'on a décompressé: ici,
$ cd /home/netatalk-3.0.3
Et on lance l'utilitaire ./configure, pour vérifier les dépendances (entre autres):
$ ./configure --with-init-style=debian --with-cracklib --enable-krbV-uam --without-libevent --with-pam-confdir=/etc/pam.d --with-dbus-sysconf-dir=/etc/dbus-1/system.d
Pour y voir plus clair, on peut mettre les options sur plusieurs lignes avec un contreslash: \ , et en tapant Enter à chaque fois.
$ ./configure \ --with-init-style=debian \ --with-cracklib \ --enable-krbV-uam \ --without-libevent \ --with-pam-confdir=/etc/pam.d \ --with-dbus-sysconf-dir=/etc/dbus-1/system.d
Si tout va bien, les dernières lignes (juste avant le prompt) devraient ressembler à cela:
Using libraries: LIBS = -ldl -lcrack CFLAGS = -I$(top_srcdir)/include -I$(top_builddir)/include -D_U_="__attribute__((unused))" -g -O2 PTHREADS: LIBS = CFLAGS = -pthread SSL: LIBS = -L/usr/lib64 -lcrypto CFLAGS = -I/usr/include/openssl LIBGCRYPT: LIBS = -L/lib/x86_64-linux-gnu -lgcrypt CFLAGS = PAM: LIBS = -lpam CFLAGS = WRAP: LIBS = -lwrap CFLAGS = BDB: LIBS = -L/usr/lib64 -ldb-5.1 CFLAGS = GSSAPI: LIBS = -Wl,-Bsymbolic-functions -Wl,-z,relro -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err CFLAGS = ZEROCONF: LIBS = -lavahi-common -lavahi-client CFLAGS = -D_REENTRANT LDAP: LIBS = -lldap CFLAGS = LIBEVENT: LIBS = CFLAGS = Configure summary: INIT STYLE: debian AFP: Extended Attributes: ad | sys ACL support: yes CNID: backends: dbd last tdb UAMS: DHX (PAM SHADOW) DHX2 (PAM SHADOW) RANDNUM (afppasswd) Kerberos V clrtxt (PAM SHADOW) guest Options: Zeroconf support: yes tcp wrapper support: yes quota support: yes admin group support: yes valid shell check: yes cracklib support: yes ACL support: yes Kerberos support: yes LDAP support: yes dbus support: yes dtrace probes: yes Paths: Netatalk lockfile: /var/lock/netatalk init directory: /etc/init.d dbus system directory: /etc/dbus-1/system.d pam config directory: /etc/pam.d
maintenant, on peut compiler!! Avec la commande make:
$ make
Oui oui, c'est tout!
Ensuite on va se faire un café.
Une fois la compilation terminée, on peut installer:
$ sudo make install
ou
$ sudo checkinstall
Hop!! fini!!
Le paramétrage
Ouf!! fini. Vous avez:
- téléchargé les sources
- décompressé une archive
- vérifié les dépendances
- COMPILÉ UN CODE SOURCE (si si)
- installé un programme.
Maintenant, il va falloir configurer le tout. Pour cela, un gros avantage de la version 3 de netatalk est que tout se fait sur quelques lignes d'un petit fichier (pour la configuration de base):
$ sudo nano /usr/local/etc/afp.conf
Et là, je vais me référer à cette page du site officiel.
Le partage
Vous avez deux sections: [Global] et [Homes].
Le mieux, c'est de tout laisser par défaut, donc ne rien écrire, juste vérifier que ces deux sections sont bien décommandées.
Il faut égalemment vérifier la présence, dans la section [Homes], de la ligne basedir regex = /home
. Cette ligne permet de définir le répertoire dans lequel chaque utilisateur référencé aura son dossier. Donc par exemple, ici j'ai défini /home dans ma ligne, donc si je me connecte à partir d'un mac, j'aurai accès à un dossier PaulDbk's home, ou quelque chose d'approchant.
Les Permissions
Par défaut, lorsque vous vous connecterez à partir d'un mac, il faudra vous authentifier avec un login et un mot de passe d'un compte du serveur. Cependant, il est possible de modifier le mode d'authentification, l'autorisation ou non de la connexion en tant qu'invité… se référer, encore et toujours, au site officiel