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
    • 最新
    • 标签
主页 / unix / 问题 / 416638
Accepted
HackXIt
HackXIt
Asked: 2018-01-13 10:06:47 +0800 CST2018-01-13 10:06:47 +0800 CST 2018-01-13 10:06:47 +0800 CST

如何使用 autofs 将硬盘驱动器自动挂载到 samba?

  • 772

我有一个安装了 samba 的树莓派。我研究了autofs并看到了在我的 Windows 机器通过网络访问外部硬盘驱动器时自动安装外部硬盘驱动器的潜力。

显然,提供的auto.smb配置是为 samba 客户端应用程序设计的,但我的意图是相反的。我希望服务器在我通过网络访问它时自动挂载我的硬盘,并在 5 分钟左右后自动卸载它。另外 fstype 应该设置为 NTFS。

根据我目前对autofs我需要做的是创建一个配置文件的理解,我们将其命名为auto.ntfs:

内容auto.ntfs:

driveA -uuid="UUID of my drive",fstype=ntfs,verbose=1 :/dev/sda1

然后我需要将该配置添加到auto.master类似中PATH MAP -options

要指定,我的 PATH 是/share这样我每次通过网络访问它时都会成功地将我的外部硬盘驱动器自动挂载到该目录中/share /etc/auto.ntfs -t=60。/etc/auto.master

我是否了解它的正常工作方式以及我应该如何处理配置文件?有什么我需要考虑这样做的吗?可能吗?

我想有这个答案的可能性。(不,我不想要除 samba 以外的其他解决方案,是的,它必须是 NTFS)


更新

我已经添加了配置文件。我现在的问题是驱动器的内容没有显示,因为我试图在本地访问驱动器以便自动安装它只是为了测试功能本身。

自动大师: /share /etc/auto.ntfs -t=60

自动.ntfs: /share -uuid=E820DC6120DC3870,fstype=ntfs :/dev/sda1

这行不通。当我进入 /share 目录时,我看不到驱动器的内容。这是一个输出$ service autofs status:

Jan 15 13:57:04 raspberrypi automount[529]: key ":" not found in map source(s). 
Jan 15 13:57:04 raspberrypi automount[529]: failed to mount /share/: 
Jan 15 13:57:04 raspberrypi automount[529]: re-reading map for /share

修复上述

对于将来对这个问题感兴趣的人,通过检查dmesg相关消息来解决上述问题,这些消息指出了问题的实际原因,而不是仅仅说它不起作用。此命令有助于找出它:

$ dmesg -w | grep ntfs(如果对您不同,您可以使用 grep 查找其他消息类型)

问题是该选项-uuid不受支持。我的最终配置现在看起来像这样:

自动大师: /- /etc/auto.ntfs -t=60

自动.ntfs: /sharing -fstype=ntfs :/dev/sda1


在所有这些错误修复之后,手头的最后一个主题:Samba

目前我的问题是,每当安装驱动器时,它都会不恰当地更改权限。我已经使用 创建了共享目录nautilus-share,因为我可以在那里简单地检查适当的选项。

$ stat sharing/这是禁用 autofs 时的片段:

访问:(0777/drwxrwxrwx) Uid:(0/root) Gid:(0/root)

这是启用 autofs 时相同命令的片段:

访问:(0500/dr-x------) Uid:( 0/ root) Gid:( 0/ root)

根据此 dmesg 消息,在安装时编辑访问权限:

ntfs: (device sda1): load_system_files(): 卷脏。安装只读。在 Windows 中运行 chkdsk 并挂载。

ntfs: (device sda1): load_system_files(): $LogFile 不干净。将无法重新挂载读写。安装在 Windows 中。

我不知道现在该怎么办。我哪里做错了? 我在想我可能需要在 autofs 的配置文件中配置权限,但由于上面的消息,我不确定。

如果不建议将 ntfs 用作共享挂载,我会建议将分区格式更改为更合适的格式!

networking samba
  • 1 1 个回答
  • 1822 Views

1 个回答

  • Voted
  1. Best Answer
    HackXIt
    2018-01-19T04:31:53+08:002018-01-19T04:31:53+08:00

    解决方案!

    我现在想通了。错误消息(再次)为我指出了正确的方向,并通过谷歌搜索挖掘我遇到了这个ntfs-3g包和ntfs-config包。后者为 NTFS 驱动器提供写入能力,就像消息一样

    卷脏。安装只读。在 Windows 中运行 chkdsk 并挂载。
    没有再出现。之后,从 Windows 机器访问共享驱动器也变得轻而易举。

    另一个很大的帮助是Nautilus文件管理器,它使权限处理变得非常容易,只需转到目录路径并选择“右键单击->属性”,然后从那里简单地编辑权限和共享选项。(这显然是最简单/初学者的方法)

    为了将来参考,这里是我的所有配置文件以及我在 CLI 中采取的步骤:

    自动大师: /- /etc/auto.ntfs -t=60

    auto.master 的 Linux 手册页

    自动.ntfs: /sharing -fstype=ntfs :/dev/sda1

    自动挂载映射的 Linux 手册页

    smb.conf:

    编辑标准配置并使用标签或分号注释您不需要的所有内容。以下是我编辑的内容。

    [global]
    workgroup = WORKGROUP # This was irrelevant for me but I left it activated
    wins support = yes # Tells samba to act as WINS Server
    #Recycle bin for mounted drive (useful feature, but not mandatory)
    recycle:keeptree = yes
    recycle:touch = yes
    recycle:versions = y
    recycle:maxsize = 0
    #======================= Share Definitions =======================
    #I've commented evverything here except the one I've created myself, 
    #since I didn't want any of those default share definitions.
    #Shared network drive
    [share]
    comment = Pi shared folder
    path = /sharing
    available = yes
    browseable = yes
    writeable = Yes
    only guest = no
    create mask = 0777
    directory mask = 0777
    force group = sambashare
    

    有关服务器类型的有用链接

    samba 配置文件的文档

    命令行:

    $ cd /
    $ mkdir sharing
    

    要显示有关创建的目录及其权限的信息,您可以使用$ stat directory/file命令

    以下是用于控制autofs和samba服务的命令。每当您进行配置更改并希望应用它们时,您都需要重新启动它们

    $ service autofs {start|forcestart|stop|restart|forcerestart|reload|force-reload|status}
    $ /etc/init.d/samba {start|stop|reload|restart|force-reload|status}
    

    创建目录后,通过键入启动 n​​autilus$ nautilus并导航到目录并编辑上面提到的 Permissions 和 Share 选项(复选框非常不言自明)。我已经为本地和 Windows 用户启用了读写功能。

    • 1

相关问题

  • 查找与端口关联的线程/脚本?

  • 关于网络挂载文件的问题

  • IP地址可以以255结尾而不是广播IP地址吗?

  • 无法识别arp命令或ip命令哪个MAC地址输出正确

  • 奇怪的路由器与centos 6一起工作[关闭]

Sidebar

Stats

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

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    ssh 无法协商:“找不到匹配的密码”,正在拒绝 cbc

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    如何卸载内核模块“nvidia-drm”?

    • 13 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Wong Jia Hau ssh-add 返回:“连接代理时出错:没有这样的文件或目录” 2018-08-24 23:28:13 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Bagas Sanjaya 为什么 Linux 使用 LF 作为换行符? 2017-12-20 05:48:21 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

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

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve