J'ai un lecteur samba qui est monté sur mon ordinateur Windows local.
J'ai un /mnt/c
lecteur dans WLS (Windows 10 Bash), mais pas de /mnt/z
.
Y a-t-il un moyen d'y accéder d'une manière ou d'une autre ? Puis-je le remonter dans WSL ?
J'ai un lecteur samba qui est monté sur mon ordinateur Windows local.
J'ai un /mnt/c
lecteur dans WLS (Windows 10 Bash), mais pas de /mnt/z
.
Y a-t-il un moyen d'y accéder d'une manière ou d'une autre ? Puis-je le remonter dans WSL ?
De le lien que bleater a posté
Montage des DrvFs
Pour monter un lecteur Windows à l'aide de DrvFs, vous pouvez utiliser la commande mount ordinaire de Linux. Par exemple, pour monter un lecteur amovible D : en tant que répertoire /mnt/d, exécutez les commandes suivantes :
$ sudo mkdir /mnt/d $ sudo mount -t drvfs D: /mnt/d
Maintenant, vous pourrez accéder aux fichiers de votre lecteur D : sous /mnt/d. Lorsque vous souhaitez démonter le lecteur, par exemple pour pouvoir le supprimer en toute sécurité, exécutez la commande suivante :
$ sudo umount /mnt/d
Montage des emplacements de réseau
Lorsque vous souhaitez monter un emplacement réseau, vous pouvez bien sûr créer un lecteur réseau mappé dans Windows et le monter comme indiqué ci-dessus. Cependant, il est également possible de les monter directement en utilisant un chemin UNC :
$ sudo mkdir /mnt/share $ sudo mount -t drvfs '\\server\share' /mnt/share
Notez les guillemets simples autour du chemin UNC ; ils sont nécessaires pour éviter d'avoir à échapper les antislashes. Si vous n'entourez pas le chemin UNC de guillemets simples, vous devez échapper aux barres obliques inverses en les doublant (ex.
\\\\server\\share
).WSL ne dispose d'aucun moyen de spécifier les informations d'identification à utiliser pour se connecter à un partage réseau. Si vous devez utiliser des informations d'identification différentes pour vous connecter au serveur, spécifiez-les dans Windows en naviguant vers le partage dans l'explorateur de fichiers, en utilisant le gestionnaire d'informations d'identification de Windows ou la commande net use. La commande net use peut être invoquée depuis WSL (à l'aide de net.exe use) via l'interopérabilité. Tapez net.exe help use pour plus d'informations sur l'utilisation de cette commande.
[Mise à jour -- apparemment cette fonction est disponible dans construire 16176 . Je ne l'ai pas encore essayé.]
Non, mais il y a peut-être une astuce que je n'ai pas découverte. Le sous-système Windows pour Linux ne monte pas les lecteurs réseau. Un employé de Microsoft dit ici (dans un commentaire) :
Pour l'instant, nous ne "montons" que des disques fixes. Les lecteurs USB/amovibles/réseau ne sont pas gérés pour l'instant. Cette fonctionnalité figure dans notre carnet de commandes, mais elle n'est pas pour tout de suite.
Alors ne retenez pas votre souffle.
J'ai essayé de contourner le problème en utilisant un lien symbolique, comme ceci :
c:> mklink /d c:\some\directory \\some_server\some_share
Le lien fonctionne très bien dans Windows "normal" (cmd.exe, PowerShell, explorateur de fichiers, etc.), mais il est invisible pour WSL :
$ ls -ld /mnt/c/some/directory
/mnt/c/some/directory not found
Pour mon usage personnel, cette limitation est un obstacle. J'ai des choses sur des disques réseau que je ne suis pas prêt à déplacer. Il existe des alternatives ; j'utilise Cygwin.
Voir https://github.com/Microsoft/WSL/issues/2999#issuecomment-455835951
Voici une façon de monter GFS dans WSL en se basant sur Faire fonctionner `sshfs` sur WSL ou trouver une alternative L'astuce consiste à utiliser https://www.nsoftware.com/sftp/netdrive/ pour se connecter à GFS depuis Windows et le convertir en un système de fichiers qui peut être monté sous WSL.
Installer le serveur OpenSSH sous Win10 Paramètres Win10 -> Apps -> Gérer les fonctionnalités optionnelles -> Ajouter une fonctionnalité -> OpenSSH Server Redémarrez si nécessaire ouvrir Services -> OpenSSH -> Propriétés -> Type de démarrage -> Automatique (différé)
Installez et exécutez SFTPNetDrive, faites un clic droit sur l'icône dans les icônes cachées -> Fenêtre principale (ou peut-être déjà ouverte) -> Profil -> nouveau profil ( serveur : localhost, utilisateur : * pwd:* Lettre de lecteur : F (ou autre) Avancé -> ( Protocole -> décocher la compression ; Dossier spécifié : G:\ ) )
en Bash (wsl) : sudo mkdir /mnt/f ; sudo mount -t drvfs F : /mnt/f
Je ne suis pas sûr de sa stabilité, mais j'ai pu ouvrir des fichiers dans WSL.
Il existe (au moins) deux façons d'utiliser Bash sous Windows :
Git-Bash a accès aux dossiers du réseau (installer git-bash > aller dans le dossier du réseau > clic droit > "Git Bash Here" > run pwd
pour voir le chemin).
Si vous doivent utilisez la version WLS de bash, alors vous pouvez appeler Git-Bash depuis WLS bash comme suit :
WLS_Bash_Shell:$ /mnt/c/Program\ Files/Git/bin/bash.exe ScriptThatUsesNetworkFolders.sh
SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.