挂载Windows共享

挂载Windows共享

我刚刚花了大约 2 个小时尝试在 Linux 上简单地安装 Windows 共享。

正如所讨论的那样,安装cifs会导致致命的挂起这里

所以我尝试通过nfs中讨论的方式安装页。

我花了几分钟搜索该nfsshare程序,直到我意识到我必须安装 Unix Services for Windows。

下载完这个巨大的文件后,我被微软的恐吓策略吓退了:this program has known compatibility issues,以及随后的,setup has detected that a required System Service (TCP/IP) is not currently installed...

即使在我从 启用简单 TCP/IP 服务之后也是如此Turn Windows features on or off

跑步

$ sudo mount -t nfs 192.168.1.76:myshare ~/mount3/

在 Debian 上总是给我:

mount.nfs: access denied by server while mounting 192.168.1.76:myshare

即使我已经在 Windows 下为有问题的共享打开了 read、write、full 给每个人。

$ sudo showmount -e 192.168.1.76

通常给我:

rpc mount export: RPC: Procedure unavailable

或者有时:

clnt_create: RPC: Unable to send

我尝试使用freeNFS.exe, 但在 Debian 上仍然出现访问权限错误。我尝试使用haneWIN,但失败了Failed to start PortMapper

答案1

首先,您正在使用的命令:

$ sudo mount -t nfs 192.168.1.76:myshare ~/mount3/

会更好,因为

$ sudo mount -t nfs //192.168.1.76/myshare  ~/mount3/ 

并且不要忘记,当使用时~/说出安装在根目录上的任何内容,如果使用 sudo ,它会将您视为“root”,并且没有任何用户记住这一点!您应该检查的另一件事是权限。哪些用户可以访问以及文件系统是什么:NFS、NTFS、FAT16/32 ...?

答案2

这是我一直在使用的解决方法。在挂载 cifs 共享几个小时后,到目前为止,我还没有遇到任何挂起的情况。这个想法很简单,就是定期写入已挂载子树上的文件。这似乎可以让两端都保持活动状态。

#!/bin/sh -x

mountpoint="/home/user/mount3/mount"
if mount|grep ${mountpoint}; then
    echo lazy umounting
    sudo umount ${mountpoint} -l
fi

sudo pgkill.py -fq mount_cifs.sh 
rm ${mountpoint}/keepalive


echo mounting
sudo mount -t cifs -o username=$2,password=$3,dir_mode=0777,file_mode=0777 $1 ${mountpoint}

if test $? -eq 0;then
    echo mounted
else
    echo unable to mount
    exit
fi    
{ while true; do echo dummy > ${mountpoint}/keepalive; sleep 30; done }&

答案3

您可以从这里尝试 mountSMB 或 mountNFS 脚本 它应该可以处理您想要实现的大部分内容

它将扫描子网并维护本地子网上或通过 nmblookup 不可用的服务器列表

https://github.com/huwpowell

相关内容