我有一个运行 Linux 的主机,它通过以太网电缆连接到我的 PC。这台 PC 上有一个 Windows XP 共享,主机需要能够安装它,但是,当使用以下命令安装时,它会失败。
以下是失败的命令以及详细输出:
# fs-cifs -vvvvvvvvv -l //CUMBRIA-XP:192.168.1.2:/hnet /mnt/net
cifs[2158679-1]: starting...
cifs[2158679-1]: user is to input both name & passwd.
cifs[2158679-1]: server [192.168.1.2] share [hnet] prefix [/mnt/net] user [nu
ll] passwd [null]
Welcome: 192.168.1.2(:/hnet) -> /mnt/net
Username:headunit
cifs[2158679-1]: user name: headunit length 8
cifs[2158679-1]: new server
Password:
cifs[2158679-1]: establishing connection to (192.168.1.2)CUMBRIA-XP
cifs[2158679-1]: session request: 192.168.1.2:CUMBRIA-XP -> localhost
cifs[2158679-1]: negotiating smb dialect
cifs[2158679-1]: skey(idx=2): 00000000, challenge:(8), 6137bfa2 f2d7803b
cifs[2158679-1]: negotiation: success with dialect=2
cifs[2158679-1]: logging headunit on 192.168.1.2
cifs[2158679-1]: new packet
cifs[2158679-1]: returning: mid 0 status= 0
cifs[2158679-1]: smb_logon successful: dialect 2 enpass 1
cifs[2158679-1]: mounting 192.168.1.2:/hnet
cifs[2158679-1]: returning: mid 1 status= 13
cifs[2158679-1]: smb_mount: Bad file descriptor
cifs[2158679-1]: try upper case share.
cifs[2158679-1]: session request: 192.168.1.2:CUMBRIA-XP -> localhost
cifs[2158679-1]: negotiating smb dialect
cifs[2158679-1]: skey(idx=2): 00000000, challenge:(8), 2d3e910f e3e148c4
cifs[2158679-1]: negotiation: success with dialect=2
cifs[2158679-1]: logging headunit on 192.168.1.2
cifs[2158679-1]: returning: mid 2 status= 0
cifs[2158679-1]: smb_logon successful: dialect 2 enpass 1
cifs[2158679-1]: mounting 192.168.1.2:/HNET
cifs[2158679-1]: returning: mid 3 status= 13
cifs[2158679-1]: smb_mount: Bad file descriptor
cifs[2158679-1]: mount failed.
cifs[2158679-1]: io_mount: smb_connection failed: Bad file descriptor
io_mount: Bad file descriptor
cifs[2158679-1]: user is to input both name & passwd.
fs-cifs: missing arguments, or all mount attempts failed.
run "use fs-cifs" or "fs-cifs -h" for help.
有什么想法吗?值得注意的是,文件系统上不存在 /mnt,但为我们提供这些设备的公司告诉我,如果 /mnt/net 文件夹不存在,fs-cifs 应该自动创建它们。
答案1
这似乎失败了,因为/mnt/net
不存在。
如果您无法创建此目录,请尝试在文件系统的其他位置创建目录并在那里挂载您的共享。
答案2
如果您使用的是 Windows7 PC,则默认情况下匿名 Samba 用户被禁用。因此,要将本地 Windows 共享文件夹安装到 QNX(任何基于 Linux 的系统)系统上,您需要从以下路径更改两个注册表项值
HKEY_LOCAL_MACHINE->SYSTEM->CurrentControlSet->控制->Lsa
突出显示 Lsa。在右侧,您可以看到以下键
restrictanonymous restrictanonymoussam 将上述键的值从 1 更改为 0
重新启动电脑,然后执行命令(替换适当的值)//fs-cifs -a//MyMachineName:MyMachineName:/ShareName /mnt/net 用户名 密码
然后,您将能够将本地 Windows 共享文件夹安装到任何基于 Linux 或 Unix 的系统上。
答案3
至少,我建议创建/mnt/net
并再试一次。Linuxmount
上大多数类似程序都遵循mount
以下惯例:
mount <device> <mountpoint>
其中<mountpoint>
被认为已经存在。
答案4
默认情况下,Windows XP 会启用一个名为“简单文件共享”的愚蠢功能。通过文件夹选项/视图对话框将其禁用。它位于选项列表的底部。禁用后,您应该能够访问共享。