这可能是个完全菜鸟的问题。我在 VMWare Player 中安装了 Ubuntu。运行良好。我通常在终端中工作,直到今天才意识到我可以使用文件图标连接到我的 Windows 主机(实际上是我的办公室网络)。太棒了!
但是...那么...我该如何从 bash 内部访问这些新共享?从我的默认提示符中,我不应该看到一些 \my-windows-share
或者我需要以某种方式在终端内“手动”安装这些驱动器吗?如果是这样,怎么做?
我看到了很多关于 VirtualBox 的回答。不知道这是否适用于我。我想我假设一旦我通过文件连接,我就会自动连接到终端。
答案1
首先您需要安装 samba 和 cifs-utils:
sudo apt-get install samba cifs-utils
然后使用 Bash 脚本通过 samba 在 Linux 中挂载 Windows 共享文件夹:
$ mkdir /mnt/smb
$ touch smb.sh
chmod +x smb.sh
$ vi smb.sh
使用 vi 将以下内容写入 smb.sh 文件:
#/bin/bash
SERVER_IP="192.168.1.1"
SHARE_NAME="c$"
USERNAME="samba user name"
PASSWD="samba password"
DOMAIN="domain"
mount.cifs //$SERVER_IP/$SHARE_NAME /mnt/smb/ -o username=$USERNAME,password=$PASSWD,dom=$DOMAIN
最后运行脚本来挂载你的 Windows 共享并将 cd 放入共享中:
./smb.sh
$ cd /mnt/smb/
在我看来,另一种方法更直接、更简单:它涉及创建挂载点、编辑 fstab,然后使用一个命令挂载 fstab 中的所有文件系统。
创建文件夹:sudo mkdir /mnt/myDirectory
编辑 fstab:sudo vi /etc/fstab
将以下内容附加到 fstab 文件:
//server/Share /mnt/myDirectory cifs domain=myDomain,username=myUserName,password=myPassword 0 0
确保在这些占位符的位置填写所有适当的信息。然后使用wq
“写入并退出”保存 fstab 文件。
最后挂载 fstab 中列出的所有文件系统:
sudo mount -a
现在,您可以通过以下方式验证共享是否可用:
ls /mnt/myDirectory
您应该会看到 Windows 共享顶层目录中的文件。
答案2
看起来这是一篇旧文章,但仍然非常相关。我发现自 WannaCry 勒索软件(2017 年 5 月)发布以来,许多 Windows 共享都拒绝使用旧的 SMB V1。
这就是我最终要做的,
我安装了以下内容:
sudo apt install samba-common samba-common-bin cifs-utils
然后在 [global] 下添加行 - vi /etc/samba/smb.conf
server min protocol = SMB2_10
client min protocol = SMB2
client max protocol = SMB3
然后允许以下命令:
mount -t cifs -o vers=2.1 -o username=<username>,sec=ntlmssp //server/path /mnt/smb