Pour se connecter à un partage SMB depuis Linux, il existe le client SMB et bien sûr la possibilité de le faire en graphique avec nautilus ou tout autre explorateur de fichiers.
Mais il existe aussi une autre façon grâce au projet open source smbclient-ng.
smbclient-ng est un moyen rapide et convivial d’interagir avec les partages SMB.
Dans ce tutoriel, je vous montre comment l’installer et l’utiliser.
Comment installer smbclient-ng
Tout d’abord, installez le paquet python3.12-venv :
apt install python3.12-venv
Puis créez un environnement virtuel :
sudo python3 -m venv /opt/python/
Enfin installez le paquet Python dans ce dernier :
/opt/python/bin/pip install smbclientng
Comment se connecter et interagir avec un partage SMB
Voici la syntaxe à utiliser pour se connecter à un partage SMB distant :
/opt/python/bin/smbclientng.py -d <domaine> -u <utilisateur> -p <mot de passe> --host <hôte/IP>
Par exemple, pour se connecter à l’hôte 10.0.0.143 avec l’utilisateur demo dont le mot de passe est ‘motdepasse123’
/opt/python/bin/smbclientng -d "WORKGROUP" -u "demo" -p 'motdepasse123' --host "10.0.0.143"
Lorsque la connexion réussie, le message suivant s’affiche :
successfully authenticated to '10.0.0.143' as 'WORKGROUP\demo'!
Pour lister les partages, utilisez la commande suivante :
shared
Puis pour lister les répertoires du partage distant :
ls
Puis vous pouvez utiliser les commandes suivantes pour transférer des fichiers, un peu à la manière d’un FTP.
Par exemple pour se positionner en local dans le répertoire Images pour copier en local depuis le partage SMB le fichier montagnes.jpg :
lcd /home/mak/Images
get montagnes.jpg
Pour copier un fichier vers le partage distant :
put Docs.txt
Lorsque les autorisations ne sont pas correctes, vous obtenez ce message d’erreur :
[error] Failed to create directory ‘demo’: SMB SessionError: STATUS_ACCESS_DENIED({Access Denied} A process has requested access to an object but has not been granted those access rights.)
Quelles sont les commandes smbclient-ng
Commandes | Description |
bat | Affiche joliment le contenu d’un fichier |
cat | Récupère le contenu d’un fichier |
cd | Change le répertoire de travail actuel |
close | Ferme la connexion SMB avec la machine distante. |
connect | Connexion à la machine distante (utile si la connexion a expiré) |
dir | Liste le contenu du répertoire de travail actuel |
exit | Quitte le script smbclient-ng |
get | Permet d’obtenir un fichier distant |
help (aide) | Affiche ce message d’aide |
info | Permet d’obtenir des informations sur le serveur ou le partage |
lbat | Affiche le contenu d’un fichier local |
lcat | Affiche le contenu d’un fichier local |
lcd | Modifie le répertoire local actuel |
lcp | Créer une copie d’un fichier local |
lls | Liste le contenu du répertoire local actuel |
lmkdir | Crée un nouveau répertoire local |
lpwd | Affiche le répertoire local actuel |
lrename | Renomme un fichier local |
lrm | Supprime un fichier local |
lrmdir | Supprime un répertoire local |
ls | Affiche le contenu du répertoire de travail distant |
ltree | Affiche une vue arborescente des répertoires locaux |
mkdir | Crée un nouveau répertoire distant |
mkdir <module> | Charge un module spécifique pour obtenir des fonctionnalités supplémentaires |
mount | Crée un point de montage du partage distant sur la machine locale.Syntaxe : |
mount put | Place un fichier ou un répertoire local dans un répertoire distant |
reconnect | Reconnecte à la machine distante (utile si la connexion a expiré) |
reset | Réinitialise la sortie TTY, utile si elle a été interrompue après l’impression d’un fichier binaire sur stdout |
rm | Supprime un fichier distant |
rmdir | Supprime un répertoire distant |
sessions | Permet de gérer les sessions SMB Syntaxe : sessions [interact|create|delete|execute|list] |
shares | Liste les partages SMB desservis par la machine distante |
sizeof | Calcul récursif de la taille d’un dossier |
tree | Affiche une arborescence des répertoires distants |
umount | Supprime un point de montage du partage distant sur la machine locale |
use | Utilise un partage SMB |
Liens
L’article smbclient-ng : se connecter à un partage SMB facilement est apparu en premier sur malekal.com.
0 Commentaires