Outils pour utilisateurs

Outils du site


freebsd:un_nas_sous_freebsd_zfs_raidz_samba_nfs

Ceci est une ancienne révision du document !


Un NAS sous FreeBSD (ZFS, RAID Z, Samba, NFS)

Ce qui suit a été effectué sous FreeBSD 8.2 AMD64

Raid Z

Configuration

Comme décrit dans le HandBook, on crée un pool avec 3 disques durs dans lequel on va monter /home.

on ajoute dans /etc/rc.conf :

zfs_enable="YES"

on peut donc désormais lancer le script rc pour ZFS :

/etc/rc.d/zfs start

les disques dédiés au Raid Z sont ad5, ad6 et ad7, on défini donc le nouveau “pool” :

zpool create storage raidz ad5 ad6 ad7

Maintenant on crée un système de fichiers (/home) dans ce pool :

zfs create storage/home

et on déplace le contenu actuel de /home dans /storage/home :

mv /home/* /storage/home

Et pour finir on défini comme “permanent” le montage de storage/home :

zfs set mountpoint=/home storage/home

On a désormais un Raid Z opérationnel avec des répertoires utilisateurs bien protégés.

Usage

Pour avoir un status détaillé :

zpool status

Pour avoir un status sans détails :

zpool status -x

Si un disque est défaillant (ex : ad6) :

zpool offline storage ad6

Le disque est déconnecté, on peut éteindre la machine et le remplacer.

Une fois la machine rédémarrée :

zpool replace storage ad6

Pour avoir le status de votre pool dans le mail envoyé tous les jours par l'utilitaire “periodic”, il faut mettre à “YES” la ligne suivante dans /etc/defaults/periodic.conf :

daily_status_zfs_enable="YES"                           # Check ZFS

Samba

Installation

On installe donc samba depuis les ports :

portupgrade -N samba35

Configuration

Une fois fait, on edite /usr/local/etc/smb.conf, mon exemple :

[global]

workgroup = mongroupe de travail
server string = nom du serveur
security = user
log file = /var/log/samba/log.%m
max log size = 50
local master = no
dns proxy = no 
unix charset = UTF-8
dos charset = cp850

#Partages :
[Utilisateur1]
comment = Partage de utilisateur1
path = /home/utilisateur1/
writeable = yes
veto files = /fichier1/fichier2/.unfichiercache/
hide dot files = yes
guest ok = no
valid users = %S

[utilisateur2]
comment = Partage de utilisateur2
path = /home/utilisateur2/
writeable = yes
veto files = /fichier1/fichier2/.unfichiercache/
hide dot files = yes
guest ok = no
valid users = %S

Samba converti les caractère à condition qu'on lui spécifie les locales utilisées des deux cotés

unix charset = UTF-8 : spécifie la locale utilisé coté serveur

dos charset = cp850 : idem coté client

0ptions qui me semblent intéressantes :

veto files : permet d'exclure des fichiers du partage

hide dot files : permet de cacher les fichiers commençant par un point, sinon les clients windows les verront.

valid users = %S : Autorise QUE le propriètaire, sinon un utilisateur, une fois authentifié, peut accèder au autres partages.

Pour le reste je pense que le fichier parle de lui même.

Pour pouvoir executer samba et qu'il se lance au démarrage on édite /etc/rc.conf et on ajoute :

samba_enable="YES"

Pour le lancer sans redémarrer :

/usr/local/etc/rc.d/samba start
freebsd/un_nas_sous_freebsd_zfs_raidz_samba_nfs.1304614900.txt.gz · Dernière modification : 2011/05/05 17:01 de sheltem