AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1313801
Accepted
Levente
Levente
Asked: 2021-02-05 23:57:52 +0800 CST2021-02-05 23:57:52 +0800 CST 2021-02-05 23:57:52 +0800 CST

如何从 Ubuntu 访问我的 Windows 10 机器?

  • 772

用户故事如下,只是为了更好地说明这是一个 Ubuntu 问题;-)

我,作为 Ubuntu 用户(在 20.04.2 上),

想
通过 LAN 电缆连接到我的 Windows 10 机器(最好通过 SMB 协议)

这样
我就可以复制/移动我在那里创作的下载文件和文档

因为
归根结底,我希望我的 Ubuntu 机器成为我的文档的规范(哈!)家。

我知道这不是一个 Windows Q/A 网站,所以请不要详细介绍(如果您不想)我需要在 Windows 机器上执行的步骤,但是请您至少将有关 Samba 设置的步骤列表作为关键字,我可以一一跟进和谷歌?

我需要的:

不幸的是,我似乎不能只是拉过整个目录并完成它。相反,我想使用图形文件管理器(Nautilus)将一些选择的远程目录的内容“合并”到它们相应的本地目录中,并在出现任何冲突时手动解决它们。

我试过的:

我曾尝试在 Windows 上启用 NFS(因为我已经有一些 NFS 经验),但发现 Windows 10 仍然仅支持 NFS 3,因此可传输的文件名仅限于 ASCII 字符;所以这不好。

这就是为什么我的目标是 Samba。

20.04
  • 1 1 个回答
  • 1143 Views

1 个回答

  • Voted
  1. Best Answer
    Levente
    2021-02-06T05:14:59+08:002021-02-06T05:14:59+08:00

    我最终遵循了本教程:

    http://www.bitpi.co/2015/02/16/accessing-a-windows-share-with-a-raspberry-pi/

    在 Windows 上:

    该文章适用于 Windows 8,因此 Windows 10 中的网络设置 UI 有点不同,但设法找到了所有内容。

    • 打开网络发现(仅适用于专用网络)
    • 打开文件和打印机共享(仅适用于专用网络)
    • 选择要共享的文件夹,以及选择将被授予访问权限的 Windows 用户(可以是您的普通 Windows 用户),并设置(通过复选框)通过网络访问时应授予哪些权限
    • 共享设置小窗口会显示共享文件夹的“网络路径”,注意,挂载时需要

    找出 Windows 机器的 LAN IP 地址也是必要的:ipconfigPowershell 中发出的命令会显示它。

    额外任务:

    我的 Windows 10 不会自动将我的 LAN 网络设置为专用(但是,共享仅针对专用网络设置)。

    启动具有管理员权限的 Powershell 以解决该问题:

    # This will reveal — among other things — the "Name" of the LAN
    Get-NetConnectionProfile
    
    # This sets it private
    Set-NetConnectionProfile -Name "the value of 'Name' from the previous command" -NetworkCategory Private
    

    在 Ubuntu 上:

    准备一个挂载点:

    sudo mkdir /mnt/my_windows_stuffs
    sudo chown LinuxUserNameHere:LinuxUserNameHere /mnt/my_windows_stuffs
    

    Install cifs-utils,这是 samba 的部分插件;和包将作为其依赖项自动安装smbclient。winbind

    sudo apt install cifs-utils
    

    安装cifs:

    sudo mount.cifs //WINDOWS.IP.ADDRESS.HERE/path/on/windows /mnt/my_windows_stuffs/ -o user=WindowsUserNameHere,uid=$(id -u),gid=$(id -g)
    

    对一些选择参数的备注:

    //WINDOWS.IP.ADDRESS.HERE/path/on/windows

    请注意,从 Windows 建议的“网络路径”(其中包含 Windows 机器的名称作为服务器标识符)中,我们仅使用文件系统路径。机器的名称将替换为 Windows 机器的 LAN IP 地址。它仍然需要在前面加上//.

    user=WindowsUserNameHere

    上面链接的教程建议为user密码提供一个选项(除此之外),但这可能最终以纯文本形式出现~/.bash_history,最好避免使用。

    但是,如果省略此密码选项,则会以交互方式提示输入,并且可以以与 Linux 的 sudo 密码类似的方式输入。

    另一种可能性是使用该credentials选项指向包含用户和密码值的文件。当 mount 指令需要进入时,此选项将是最合适的/etc/fstab。在下面的链接文档中查看更多相关信息。

    uid=$(id -u),gid=$(id -g)

    如果没有这些选项,即使在 Windows 端授予了写入权限,已安装文件夹的内容也将不可写。这是因为即使在我们准备期间将挂载文件夹提供给我们的普通用户,cifs 仍会将内容以 root 身份放入其中:里面的所有内容仍将归 root 所有。

    我们需要告诉 cifs 代表我们的普通用户处理这些内容。

    的选项uid并将gid实现这一目标。要预先找出它们的值,可以相应地运行id -u和id -g命令。这些将返回我们常规用户的用户和组 ID。

    然而,这可以通过在命令本身中使用动态替换来自动完成,如上面的代码片段所示。

    请注意,如果 Windows 将所有权信息与内容一起发送,则可能还需要进一步的forceuid选项forcegid(不需要值)。

    (我从@Huygens在 Unix SE 网站上的回答中了解到了后面这些选项。)


    此时,所需的 Windows 内容应该在/mnt/my_windows_stuffs/目录中可用。

    请注意,rsync在此安装上使用 plain 会非常慢。不幸的是,这是意料之中的。然而,正常的复制以合理的速度工作。

    处理完这些文件后,Windows 机器可以解除绑定:

    sudo umount /mnt/my_windows_stuffs/
    

    mount.cifs在文档中查看更多信息。

    • 1

相关问题

  • 如何在 18.04..20.04 上设置本地通配符 (127.0.0.1) 域解析?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve