L'auteur a sélectionné lesTech Education Fund pour recevoir un don dans le cadre du programmeWrite for DOnations.
introduction
Samba est une implémentation open-source desSMB/CIFS networking protocol utilisés dans les environnements Windows pour les services partagés tels que l'accès aux fichiers et aux imprimantes et Active Directory. Samba peut également être utilisé pour créer des partages de fichiers multiplateformes dans une configuration appeléestandalone server.
Dans ce guide, vous allez installer et configurer un serveur Samba autonome pour fournir des magasins de fichiers en réseau oushares pour une petite organisation hypothétique appeléeExample.com. Cette organisation a plusieurs exigences pour leurs partages de fichiers: 1. Chaque employé a besoin d’un partage de fichiers personnel et privé; 2 Tous les employés doivent avoir un accès en lecture et en écriture à un partage de fichiers commun. 3 Un utilisateur administratif doit avoir un accès en lecture et en écriture à toutes les actions personnelles et à la propriété de l’action ordinaire.
Votre serveur Samba répondra à toutes ces exigences. Vous apprendrez également à accéder aux partages à partir de Windows, Linux et macOS.
Conditions préalables
Avant de commencer ce guide, vous aurez besoin des éléments suivants:
-
Un serveur Ubuntu 16.04 avec un utilisateur sudo non root. Veuillez vous référer au guideUbuntu 16.04 initial server setup pour plus d'informations. Samba a des besoins modestes en RAM et en CPU et fonctionnera bien sur un serveur de 1 Go. Il est plus probable que vous manquiez d’espace de stockage, ce qui devrait donc être votre principale préoccupation lors du choix de la taille de votre serveur.
-
Connexions TCP entrantes autorisées sur le port
445
. Si vous utilisez le pare-feu deUFW, veuillez vous référer àHow To Set Up a Firewall with UFW on an Ubuntu and Debian Cloud Server pour obtenir des conseils. Si vous utilisez un pare-feu différent ou externe, veuillez vous reporter à la documentation correspondante.
[[step-1 -—- Installing-samba]] == Étape 1 - Installation de Samba
Commençons par installer Samba à l’aide du système de gestion de paquets d’Ubuntu.
Avant d’installer de nouveaux packages, mettons à jour l’index de package local pour inclure les versions les plus récentes des référentiels Ubuntu:
sudo apt-get update
Ensuite, installez Samba:
sudo apt-get install samba
Cette commande installera et démarrera à la fois le serveur Sambasmbd
et le serveur Samba NetBIOSnmbd
. nmbd
n'est pas requis pour ce tutoriel, donc dans l'intérêt de la sécurité, vous pouvez l'arrêter et le désactiver avecsystemctl
:
sudo systemctl stop nmbd.service
sudo systemctl disable nmbd.service
La commandesudo systemctl disable nmbd.service
produira la sortie suivante lors de son exécution:
Outputnmbd.service is not a native service, redirecting to systemd-sysv-install
Executing /lib/systemd/systemd-sysv-install disable nmbd
insserv: warning: current start runlevel(s) (empty) of script `nmbd' overrides LSB defaults (2 3 4 5).
insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `nmbd' overrides LSB defaults (0 1 6).
Cette sortie indique que puisquenmbd
n'a pas de configuration de gestion native desystemd
, il est désactivé par l'ancien système d'initialisation SysV.
Pour éviter les problèmes de sécurité pouvant découler de l’exécution d’un service non configuré et activé sur le réseau, arrêtons le serveur Samba jusqu’à ce que les détails de la configuration soient en place:
sudo systemctl stop smbd.service
Samba est maintenant installé et prêt à être configuré.
[[step-2 -—- setting-samba-39-s-global-options]] == Étape 2 - Définition des options globales de Samba
Définissons comment le serveur Samba se comportera en modifiant son fichier de configuration, situé à/etc/samba/smb.conf
. Ce fichier comprend deux parties: une section[global]
et une section[shares]
. La section[global]
configure le comportement du serveur Samba et les sections[shares]
configurent les partages de fichiers. Commençons par définir les directives dans la section[global]
.
Plutôt que de modifier directement/etc/samba/smb.conf
, renommez-le ensmb.conf.original
et créez un nouveau fichier avec le nomsmb.conf
:
sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.orig
Avant d'éditer/etc/samba/smb.conf
, vérifions les interfaces disponibles afin de dire à Samba ce qu'il doit reconnaître. Tapez ce qui suit:
ip link
Output1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 02:21:2c:03:ef:e2 brd ff:ff:ff:ff:ff:ff
Cette sortie indique quelo
est l'interface de bouclage eteth0
est l'interface réseau externe, bien que votre interface externe puisse différer. Prenez note des deux: vous les inclurez avec la directiveinterfaces
dans la section[global]
du fichiersmb.conf
.
Commençons par modifier ce fichier avecnano
ou votre éditeur préféré:
sudo nano /etc/samba/smb.conf
La section[global]
de ce fichier définira le nom, le rôle et d'autres détails du serveur, y compris les interfaces réseau:
/etc/samba/smb.conf
[global]
server string = samba_server
server role = standalone server
interfaces = lo your_network_interface
bind interfaces only = yes
disable netbios = yes
smb ports = 445
log file = /var/log/samba/smb.log
max log size = 10000
Ces directives spécifient ce qui suit:
-
server string
- Il s'agit des informations d'identification qui seront fournies aux utilisateurs lors des connexions. Vous pouvez utilisersamba_server
ou un autre nom qui identifiera votre serveur. Tout au long de ce didacticiel, vous verrez la chaînesamba.example.com
pour désigner le partage Samba pour l'organisationExample.com. -
server role
- Ceci définit le type de serveur Samba qui sera créé. Dans ce cas, il s'agit d'unstandalone server
, i.e. un partage de fichiers. Les autres types de serveurs incluent les serveurs membres du domaine et les contrôleurs de domaine. -
interfaces
- Ce sont les interfaces réseau auxquelles Samba se liera.lo
est l'interface de bouclage (127.0.0.1) et est obligatoire. Vous devrez également inclure l'interface réseau externe que vous avez fournie précédemment. Il s'agit généralement deeth0
. -
bind interfaces only
- Cela garantit que Samba ne se lie qu'aux interfaces listées sur la ligneinterfaces
. Par mesure de sécurité, cela amène Samba à ignorer les paquets qui ne correspondent pas auxinterfaces
spécifiés. -
disable netbios
- Ceci désactive toutes les fonctions NetBIOS qui ne sont pas nécessaires dans un serveur autonome. Cela simplifie le processus de résolution du nom du serveur et le transport du trafic SMB. -
smb ports
- Ceci définit le port sur lequel Samba écoutera. Le port445
est le port standard de Samba. -
log file
- Ceci définit le nom et l’emplacement du fichier journal de Samba. -
max log size
- Ceci définit une limite de taille sur le fichier journal. Le nombre indiqué est en octets et équivaut à 10 Mo. Quelques points à garder à l'esprit lors de la définition de cette limite de taille: Lorsqu'elle est atteinte, Samba générera un nouveau fichier journal et déplacera l'ancien contenu vers un double avec une extension.old
. Si la limite est de nouveau dépassée, le fichier.old
existant sera détruit. Cela évite que l’espace disque / partition ne soit submergé par le contenu d’un seul fichier journal. Vous devez donc définir une taille de fichier adaptée à vos ressources système.
Si vous souhaitez une journalisation plus détaillée lors de la configuration du serveur, ajoutez la ligne suivante à la section[global]
:
/etc/samba/smb.conf
log level = 3 passdb:5 auth:5
Cela définit le niveau de journalisation sur 3 (info), ce qui augmente la granularité des informations de journalisation par rapport au paramètre par défaut de 1. Le paramètre supérieur de 5 pour les classes de débogagepassdb
etauth
fournit plus d'informations relatives à l'authentification des utilisateurs.
Enregistrez et fermez le fichier lorsque vous avez terminé de créer cette section.
Chaque fois que vous éditezsmb.conf
, vous devez exécuter l'utilitaire Sambatestparm
pour vérifier qu'il n'y a pas d'erreurs de syntaxe:
testparm
L'exécution de la commandetestparm
sur le fichiersmb.conf
produit la sortie suivante:
OutputLoad smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
Appuyer surENTER
produit la sortie suivante:
Output# Global parameters
[global]
server string = samba_server
interfaces = lo your_network_interface
bind interfaces only = Yes
server role = standalone server
log file = /var/log/samba/smb.log
max log size = 10000
smb ports = 445
disable netbios = Yes
idmap config * : backend = tdb
Sitestparm
signaleLoaded services file OK.
, alors il n'y a aucune erreur de syntaxe qui empêcherait le serveur Samba de démarrer.
La configuration de la section[global]
est tout ce qui est nécessaire pour démarrer le serveur Samba. Cependant, ses fonctionnalités seront limitées sans configurations de partage. Un partage est composé de deux parties, un utilisateur et un répertoire, qui doivent tous deux être créés et configurés pour permettre les connexions et les tests. La section suivante explique comment créer des utilisateurs pouvant accéder aux partages.
[[step-3 -—- creating-users]] == Étape 3 - Création d'utilisateurs
Dans cette étape, nous allons créer des utilisateurs pouvant accéder aux partages. Ils auront besoin d’un accès en tant qu’utilisateur Samba et système pour s’authentifier auprès du serveur Samba lorsqu’ils se connecteront en lecture et en écriture au système de fichiers.
Dans la société hypothétiqueExample.com, il y a quatre employés qui doivent être ajoutés au serveur Samba et créés en tant qu'utilisateurs sur le système Linux:david,mike,jane et lucy. En plus de ces quatre, il y aura un utilisateuradmin qui pourra accéder et administrer les partages personnels. Cet utilisateur sera également propriétaire des actions communes auxquelles tout le monde peut accéder.
La première étape pour ajouter des utilisateurs du système consiste à créer des répertoires de base pour chacun d’entre eux. Plutôt que d'utiliser les répertoires personnels standard à/home/user
, les répertoires et données Samba seront situés dans/samba/
. Conserver les données Samba dans un emplacement unique et séparé des autres données utilisateur facilitera les tâches de gestion futures telles que les sauvegardes.
[.note] #Note: Les utilisateurs créés dans ce guide ne sont pas destinés à avoir des connexions SSH. Si vos utilisateurs ont déjà des comptes sur le serveur, vous devez créer un utilisateur Samba dédié pour eux afin de suivre ce guide.
#
La section suivante expliquera le processus pour ajouter le premier utilisateur,david, mais vous devrez répéter ce processus pourmike,jane etlucy.
La première étape consiste à créer le répertoire dans lequel les données Samba seront stockées, à la racine du système de fichiers. Ce répertoire sera appelé/samba/
, et sa propriété de groupe sera définie sursambashare
, un groupe qui a été créé lorsque vous avez installé Samba.
Exécutez les commandes suivantes pour créer le répertoire/samba/
et définir la propriété du groupe sursambashare
:
sudo mkdir /samba/
sudo chown :sambashare /samba/
Ensuite, créez le répertoire personnel dedavid sous le répertoire/samba/
:
sudo mkdir /samba/david
Maintenant, ajoutezdavid en tant qu'utilisateur système avec la commande suivante:
sudo adduser --home /samba/david --no-create-home --shell /usr/sbin/nologin --ingroup sambashare david
Les options font ce qui suit:
-
--home
- Ceci définit l'emplacement du répertoire personnel de l'utilisateur. -
--no-create-home
- Cela empêche la commandeadduser
de créer le répertoire personnel dedavid. Si le système créait ce répertoire, il serait rempli de fichiers de configuration tels que.bash_history
qui ne sont pas nécessaires pour la configuration actuelle. -
--shell
- Ceci définit quel shelldavid sera alloué lorsqu'il se connectera par SSH. Une connexion SSH n'est pas nécessaire pour accéder à un partage Samba; le paramétrer sur/usr/sbin/nologin
désactivera les connexions SSH. -
--in-group sambashare
- Ceci ajoute l'utilisateur au groupesambashare
, lui donnant un accès en lecture et en écriture à ses propres actions et à l'action ordinaire.
Vous serez invité à entrer un mot de passe lorsque vous exécuterez cette commande. Choisissez un mot de passe unique, sans dictionnaire, de 10 caractères ou plus.
Maintenant que l'utilisateur systèmedavid existe, vous pouvez définir la propriété et les autorisations sur son répertoire personnel Samba:
sudo chown david:sambashare /samba/david/
sudo chmod 2770 /samba/david/
La définition des autorisations du répertoire sur2770
signifie que les nouveaux fichiers ou répertoires créés sous/samba/david/
hériteront de la propriété de groupe du répertoire parent plutôt que du groupe principal de l'utilisateur qui a créé le fichier ou le répertoire. Cela signifie, par exemple, que si l’utilisateuradmin créait un nouveau répertoire dans le partage dedavid,david serait capable d’y lire et d’écrire.
Ensuite, ajoutezdavid au serveur Samba. Samba conserve sa propre base de données d’utilisateurs et de mots de passe, qu’elle utilise pour authentifier les connexions. Pour vous connecter, tous les utilisateurs doivent être ajoutés au serveur Samba et activés. Exécutez les commandessmbpasswd
suivantes pour accomplir ces deux tâches:
sudo smbpasswd -a david
sudo smbpasswd -e david
Les options utilisées ici ont les effets suivants:
-
-a
- Ceci ajoute l'utilisateur au serveur Samba sans l'activer. -
-e
- Ceci active un utilisateur précédemment ajouté.
Le mot de passe que vous entrez ici servira à accéder au partage Samba et peut différer du mot de passe système.
L'utilisateurdavid existe désormais en tant qu'utilisateur système sans possibilité de SSH sur le serveur. Il a un répertoire personnel à/samba/david
, et est enregistré et activé en tant qu'utilisateur Samba.
Répétez ce processus pour chaque utilisateur Samba (mike,jane etlucy).
Pour créer l'utilisateuradmin, exécutez les commandes suivantes, en changeant le répertoire personnel en/samba/everyone/
:
sudo mkdir /samba/everyone
sudo adduser --home /samba/everyone --no-create-home --shell /usr/sbin/nologin --ingroup sambashare admin
sudo chown admin:sambashare /samba/everyone/
sudo chmod 2770 /samba/everyone/
sudo smbpasswd -a admin
sudo smbpasswd -e admin
En plus de créer l'utilisateuradmin, créons un groupe appeléadmins pour faciliter la gestion du serveur. Avec des autorisations de lecture et d'écriture sur chaque partage, ce groupe peut simplifier le travail d'ajout et de suppression d'utilisateurs. Par exemple, si des utilisateurs individuels fonctionnent comme des utilisateursadmin puis quittent l'organisation, ils doivent être supprimés individuellement de chaque partage. Les nouveaux administrateurs doivent également être ajoutés manuellement à chaque partage. Créer un groupeadmins et donner à ce groupe un accès en lecture-écriture aux partages signifie que l'ajout et la suppression d'utilisateurs ne nécessitent qu'une seule commande.
Exécutez les commandes suivantes pour créer un nouveau groupe appeléadmins et ajoutez l'utilisateuradmin à ce groupe:
sudo groupadd admins
sudo usermod -G admins admin
Des utilisateurs supplémentaires peuvent être ajoutés au groupeadmins en exécutant la deuxième commande,sudo usermod -G admins admin
, et en remplaçant un autre utilisateur à la place deadmin
.
Les configurations système sont maintenant terminées, les utilisateurs de l'organisationExample.com étant définis comme utilisateurs système et Samba. Passons maintenant à la configuration du serveur Samba afin que ces utilisateurs puissent accéder à leurs répertoires de partage.
[[step-4 -—- configuration-the-samba-partages]] == Étape 4 - Configuration des partages Samba
Chaque partage aura sa propre section dans le fichier de configuration principal de Samba,/etc/samba/smb.conf
, suivant les paramètres globaux. Ces sections définiront le fonctionnement de chaque partage.
Utilisez à nouveau l'éditeur de texte denano
pour ouvrir et modifier ce fichier:
sudo nano /etc/samba/smb.conf
Le bloc de configuration suivant définira le partage personnel de chaque utilisateur:
/etc/samba/smb.conf
...
[share_name]
path =
browseable =
read only =
force create mode =
force directory mode =
valid users =
Ces options comprennent:
-
share_name
- Il s'agit du nom du partage que vous utiliserez lors de la connexion. -
path
- Il s'agit du chemin absolu vers le partage dans le système de fichiers. -
browsable
- Ceci définit si les autres utilisateurs peuvent ou non voir le partage. L'activation de cette option permet uniquement aux autres utilisateurs du serveur Samba de voir l'existence du partage. Il ne confère aucune autorisation de lecture ou d'écriture. -
read only
- Ceci définit si lesvalid users
peuvent écrire sur le partage. -
force create mode
- Cela force les autorisations pour tout fichier écrit sur le partage. -
force directory mode
- Cela force les autorisations pour tout répertoire créé dans le partage. -
valid users
- Il s'agit d'une liste des utilisateurs qui ont accès au partage. Ce paramètre peut prendre des noms d'utilisateur ou des groupes système tels queadmins. Les groupes doivent être listés avec un@
devant, par ex.@admins
.
Ajoutez le bloc de configuration de partage suivant pourdavid, en définissant son répertoire personnel, les autorisations pour la propriété du groupe de ce répertoire et les utilisateurs devant avoir accès à son partage:
/etc/samba/smb.conf
[david]
path = /samba/david
browseable = no
read only = no
force create mode = 0660
force directory mode = 2770
valid users = david @admins
Notez que les autorisations de répertoire définissent la propriété du groupe sur celle du répertoire parent.
Créez un bloc de partage pourmike,jane etlucy. Modifiez uniquement le partage[name]
,path
etvalid users
pour refléter chacun des noms d’utilisateur.
Le partage[everyone]
différera des autres dans les options[name]
,path
,valid users
etbrowsable
, et ressemblera à ceci:
/etc/samba/smb.conf
...
[everyone]
path = /samba/everyone
browseable = yes
read only = no
force create mode = 0660
force directory mode = 2770
valid users = @sambashare @admins
Le fait d'accorder au groupesambashare
un accès en lecture-écriture au partage permet à tous les utilisateurs d'accéder au partage, car ils ont été ajoutés à ce groupe lors de leur création.
Le fichiersmb.conf
complet ressemblera à ceci:
/etc/samba/smb.conf
[global]
server string = samba_server
server role = standalone server
interfaces = lo your_network_interface
bind interfaces only = yes
disable netbios = yes
smb ports = 445
log file = /var/log/samba/smb.log
max log size = 10000
[david]
path = /samba/david
browseable = no
read only = no
force create mode = 0660
force directory mode = 2770
valid users = david @admins
[mike]
path = /samba/mike
browseable = no
read only = no
force create mode = 0660
force directory mode = 2770
valid users = mike @admins
[jane]
path = /samba/jane
browseable = no
read only = no
force create mode = 0660
force directory mode = 2770
valid users = jane @admins
[lucy]
path = /samba/lucy
browseable = no
read only = no
force create mode = 0660
force directory mode = 2770
valid users = lucy @admins
[everyone]
path = /samba/everyone
browseable = yes
read only = no
force create mode = 0660
force directory mode = 2770
valid users = @sambashare @admins
Enregistrez et fermez le fichier une fois l’édition terminée.
Testez à nouveau la configuration:
testparm
Cela produira une sortie qui ressemble à ceci:
OutputLoad smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[david]"
Processing section "[jane]"
Processing section "[mike]"
Processing section "[lucy]"
Processing section "[everyone]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
Une fois la vérification de la configuration terminée, démarrons le serveur Samba avecsystemctl
:
sudo systemctl start smbd.service
Le serveur Samba est maintenant en cours d'exécution et prêt à accepter les connexions. L'étape suivante consiste à vous connecter au serveur Samba pour vérifier qu'il fonctionne comme prévu. La section suivante couvre la connexion au serveur Samba à partir de Windows, Linux et macOS.
[[step-5 -—- logging-into-the-samba-server]] == Étape 5 - Connexion au serveur Samba
Dans cette section, nous verrons comment accéder aux partages Samba que nous avons créés à partir de Linux, Windows et macOS.
[[linux -—- la-ligne-de-commande]] === Linux - La ligne de commande
Vous pouvez utiliser un outil appelésmbclient
pour accéder à Samba depuis la ligne de commande. Ce paquet n'est pas inclus par défaut sur la plupart des distributions Linux. Vous devrez donc l'installer avec votre gestionnaire de paquets local.
Sur les serveurs Debian et Ubuntu, installezsmbclient
avec la commande suivante:
sudo apt-get update
sudo apt-get install smbclient
Sur les systèmes Fedora, utilisez les éléments suivants:
sudo dnf update
sudo samba-client
Et sur CentOS:
sudo yum update
sudo yum install samba-client
[.Remarque]##
Note: Sur certaines distributions Linux,smbclient
échouera avec le message d'erreur suivant:
Outputsmbclient: Can't load /etc/samba/smb.conf - run testparm to debug it
Si vous voyez ce message d'erreur, vérifiez que vous avez créé le fichier à/etc/samba/smb.conf
.
smbclient
utilise le format suivant pour accéder aux partages Samba:
smbclient //your_samba_hostname_or_server_ip/share -U username
Vous pouvez utiliser l'adresse IP de votre serveur ou le nom d'hôte que vous avez défini dans/etc/samba/smb.conf
pour accéder au partage. Cet exemple utilise le nom d’hôtesamba.example.com
pour accéder au partage dedavid sur le serveur Samba que vous avez créé aux étapes précédentes:
smbclient //samba.example.com/david -U david
Sidavid souhaite accéder au partage commun (everyone
), modifiez la commande en:
smbclient //samba.example.com/everyone -U david
Après avoir exécuté la commandesmbclient
, vous serez invité à entrer le mot de passe Samba et connecté à une interface de ligne de commande rappelant l'interface de texte FTP:
smb: \>
Cette interface est particulièrement utile pour tester les noms d'utilisateur et les mots de passe, ainsi que les accès en lecture-écriture. Par exemple, vous pouvez créer un répertoire et répertorier son contenu comme suit:
mkdir test
ls
Vous devriez voir la sortie suivante:
Output . D 0 Fri Feb 2 14:49:01 2018
.. D 0 Wed Jan 24 12:11:33 2018
test D 0 Fri Feb 2 14:49:01 2018
Supprimez le répertoire en tapant:
rmdir test
La gestion des données dans un partage est souvent plus facile avec un outil graphique. La prochaine section examinera les outils d'interface graphique intégrés pour KDE.
[[linux -—- kde-with-dolphin]] === Linux - KDE avec Dolphin
Dolphin est le gestionnaire de fichiers par défaut dans KDE et dispose de fonctionnalités intégrées pour accéder aux partages Samba.
Après avoir ouvert Dolphin, suivez les étapes suivantes:
-
SélectionnezNetwork dans la listePlaces.
-
Cliquez surAdd Network Folder.
-
Sélectionnez l'optionMicrosoft Windows network drive.
-
Cliquez surNext
-
Entrez les détails du partage Samba:
-
Name - Il s'agit d'un nom mémorable qui sera affiché en tant que signet dans Dolphin pour le partage.
-
Server - Il s'agit du nom d'hôte ou de l'adresse IP du serveur Samba. Dans cet exemple, ce sera
samba.example.com
. -
Folder - C'est le nom du partage qui a été défini dans
smb.conf
.
-
-
Cliquez surSave & Connect.
-
Entrez le nom d'utilisateur et le mot de passe de l'utilisateur avec lequel vous allez accéder au partage Samba.
-
Cliquez surOK.
Dolphin va maintenant se connecter et ouvrir le partage Samba qui ressemblera à ceci:
Vous pouvez maintenant utiliser le partage Samba comme s'il s'agissait d'un répertoire local pour copier, supprimer et renommer des fichiers et des répertoires. Le partage apparaîtra également comme un signet permanent aux emplacementsNetwork.
[[macos -—- la-ligne de commande]] === MacOS - La ligne de commande
MacOS est livré préinstallé avec des outils de ligne de commande que vous pouvez utiliser pour accéder à un partage Samba. Ouvrez le terminal avec Launchpad en cliquant sur l'icôneTerminal.
Cela ouvrira un terminal en ligne de commande dans votre répertoire personnel. Pour monter le partage Samba, vous pouvez créer un nouveau répertoire qui servira de point de montage pour le partage. Un point de montage est l'emplacement où deux systèmes de fichiers sont joints: dans ce cas, votre système de fichiers local et le système de fichiers Samba distant.
Créez un nouveau répertoire appelésamba
:
mkdir samba
Ensuite, montez le partage Samba sous le nouveau répertoiresamba
. Cette commande a la forme:
sudo mount_smbfs //username@your_samba_hostname_or_server_ip/share ./mount_point
Remplacer les détails deExample.com par l'utilisateurdavid ressemble à ceci:
sudo mount_smbfs //[email protected]/david ./samba
Le répertoiresamba
affichera désormais le contenu du partagedavid sur le serveur SambaExample.com. Les fichiers et répertoires peuvent être manipulés avec les outils normaux tels quels
,rm
etmkdir
; cependant, le répertoiresamba
appartiendra à root une fois le partage monté. Vous devrez donc utilisersudo
pour accéder au répertoiresamba
et à son contenu.
Pour démonter le partage Samba, exécutez la commandeumount
à partir du même répertoire où vous avez exécuté la commandemkdir
:
umount samba
La section suivante examinera l'accès à un partage Samba à l'aide de l'application graphique de bureau sous macOS.
[[macos -—- bureau]] === MacOS - Bureau
MacOS est également capable d'accéder aux partages Samba à l'aide de l'application Finder.
Suivez les étapes suivantes:
-
OuvrezFinder et cliquez surGo dans la barre de menus.
-
Cliquez surConnect to Server dans la liste des options.
-
Utilisez une URL au format
smb://
qui comprend votre nom d'utilisateur, votre nom d'hôte ou l'adresse IP du serveur et le nom de votre partage:smb://username@your_samba_hostname_or_server_ip/share
. Dans l'exemple montré ici, vous verrez le nom d'utilisateurdavid et le nom d'hôtesamba.example.com
. -
Marquez le partage Samba en cliquant sur le bouton avec un symbole+.
-
Cliquez surConnect
-
SélectionnezRegistered User
-
Entrez le nom d'utilisateur et le mot de passe de l'utilisateur du partage Samba.
-
Décidez si vous souhaitez que macOS stocke le mot de passe.
-
Cliquez surConnect.
Une fois que vous vous êtes connecté avec succès au partage Samba, il apparaîtra dans le Finder, comme indiqué ici:
La section suivante explore comment accéder aux partages Samba à partir de Windows 10.
[[windows-10 -—- la-ligne de commande]] === Windows 10 - La ligne de commande
Monter un partage Samba à partir de la ligne de commande Windows ne nécessite qu'une seule commande:
net use drive_letter \\your_samba_hostname_or_server_ip\share
Remplacez les variables du partage de l'utilisateurdavid et définissez la lettre de lecteur surX:
:
net use X: \\samba.example.com\david
Lorsque cette commande est entrée, vous serez invité à entrer le nom d’utilisateur et le mot de passe dedavid. Après avoir entré ces éléments, vous recevrez un accusé de réception indiquant que le partage a été monté avec succès:
OutputEnter the user name for 'samba.example.com': david
Enter the password for samba.example.com:
The command completed successfully.
Vous pourrez maintenant parcourir le partage Samba dans l'Explorateur de fichiers et manipuler les fichiers et les répertoires comme s'ils étaient locaux sur votre ordinateur.
La section suivante examinera l'utilisation des outils de l'interface graphique Windows pour accéder à un partage Samba.
[[windows-10 -—- bureau]] === Windows 10 - Bureau
Windows 10 a également la capacité native de se connecter à un partage Samba. Les étapes suivantes vous connecteront à votre partage Samba et le conserveront en tant que signet à l'aide de l'Explorateur de fichiers Windows. Commencez ces étapes en ouvrant l'explorateur de fichiers:
-
Faites un clic droit surThis PC.
-
Cliquez surAdd a network location puis surNext sur la page qui suit.
-
Cliquez surChoose a custom network location.
-
Cliquez surNext
-
Entrez l'adresse de style Windows du serveur Samba et le nom du partage. Windows utilise la forme suivante d'une URL Samba:
\your_samba_hostname_or_server_ip\share\
. Dans l'exemple d'image, le nom du serveur estsamba.example.com
et le nom de partage estdavid
:\samba.example.com\david
. -
Cliquez surNext.
-
Entrez le nom d'utilisateur et le mot de passe de l'utilisateur.
-
Décidez si vous voulez ou non que Windows garde le mot de passe en mémoire.
-
Cliquez surOK.
L'explorateur de fichiers va maintenant se connecter au partage Samba. Une fois la connexion établie, un nouvel emplacement sera créé sousThis PC dans l'Explorateur de fichiers:
Vous pourrez maintenant utiliser ce dossier pour gérer les fichiers et les dossiers du partage Samba comme s'il s'agissait d'un dossier local.
Conclusion
Dans cet article, vous avez créé des partages de fichiers en ligne multiplates-formes à l'aide du serveur Samba. Vous avez également accédé à ces partages à partir de Windows, Linux et macOS.
Les partages Samba sont devenus si courants que de nombreuses applications peuvent accéder aux données qui y sont stockées. Ces applications peuvent étendre les fonctionnalités et l'utilité de vos partages Samba. Par exemple, la version mobile du lecteur multimédiaVLC peut se connecter et diffuser de la musique et des vidéos à partir de votre partage Samba. Pour y accéder, sélectionnezopen MRL et utilisez l'URL Samba standard:smb://username@your_samba_hostname_or_server_ip/share
. Vous pouvez également utiliser un partage Samba comme destination de vos sauvegardes avec l'utilitaire de sauvegarde multiplateformeBackupPC.
En plus d'agir comme un simple partage de fichiers, Samba peut fonctionner avec Windows Active Directory en tant que contrôleur de domaine ou membre d'un domaine. Le Wiki SambaUser Documentation contient plus d'informations sur la façon de procéder.