smbmount/README.md
2025-05-15 19:37:27 +02:00

107 lines
2.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# smbmount
`smbmount` est un script Bash pour monter facilement des partages SMB, avec complétion dynamique basée sur la découverte réseau via Avahi ou smbtree.
---
## Fonctionnalités
* Montage de partages SMB via plusieurs méthodes :
* Découverte SMBTREE (`-s`)
* Découverte Avahi + `smbclient` (`-a` ou `-A <nom_serveur>`)
* Montage direct via adresse IP (`-i <IP>`)
* Mode démontage (`-u`)
* Gestion des mots de passe via `secret-tool` (GNOME Keyring)
* Complétion dynamique des serveurs SMB
* Installation flexible en mode système ou utilisateur
---
## Prérequis et dépendances
Pour Debian / Ubuntu, installe les paquets suivants :
```bash
sudo apt-get update
sudo apt-get install -y avahi-utils smbclient cifs-utils secret-tool bash-completion
```
* `avahi-utils` : outil `avahi-browse` pour découvrir les services SMB sur le réseau.
* `smbclient` : client SMB/CIFS en ligne de commande, utilisé pour lister les partages.
* `cifs-utils` : fournit la commande `mount.cifs` pour monter les partages SMB.
* `secret-tool` : interface avec le trousseau GNOME pour stocker et récupérer les mots de passe.
* `bash-completion` : améliore la complétion Bash, nécessaire pour la complétion dynamique.
---
## Installation
Le `Makefile` gère à la fois linstallation système avec la personnalisation du préfixe **et** le fallback utilisateur :
```bash
make install [PREFIX=/chemin/personnalisé]
```
* **Sans préciser `PREFIX`**, `/usr/local` est utilisé par défaut :
* Script → `/usr/local/bin/`
* Complétion → `/etc/bash_completion.d/`
* **Avec `PREFIX`**, linstallation se fait sous :
* Script → `${PREFIX}/bin/`
* Complétion → `/etc/bash_completion.d/`
* Si vous navez pas les droits décriture dans `${PREFIX}/bin` **et** `/etc/bash_completion.d`, linstallation bascule automatiquement en **mode utilisateur** :
* Script → `~/.local/bin/`
* Complétion → `~/.bash_completion.d/`
---
En installation utilisateur, noubliez pas dajouter dans votre `~/.bashrc` :
```bash
export PATH="$HOME/.local/bin:$PATH"
[ -f "$HOME/.bash_completion.d/smbmount" ] && source "$HOME/.bash_completion.d/smbmount"
```
Puis rechargez votre shell :
```bash
source ~/.bashrc
```
---
## Désinstallation
Pour supprimer linstallation (mode système ou utilisateur), lance :
```bash
make uninstall
```
---
## Utilisation
```bash
smbmount -s # Découverte et montage avec smbtree
smbmount -a # Découverte et montage avec Avahi + smbclient
smbmount -A nom_serveur # Montage direct avec nom serveur Avahi
smbmount -i adresse_ip # Montage direct via IP
smbmount -u # Démontage interactif des partages montés
```
---
## Aide
```bash
smbmount
```
Affiche laide rapide avec les options disponibles.