如何在 Ubuntu 18.04.1 上访问 Apple Time Capsule

如何在 Ubuntu 18.04.1 上访问 Apple Time Capsule

我可以在网络中看到我的时间胶囊,但无法进入。有人能帮我解决这个问题吗?登录信息正确,但屏幕截图显示错误。 在此处输入图片描述

在此处输入图片描述

答案1

在 Ubuntu 18.04 上,我看到了和你一样的屏幕。尝试了各种 Google 搜索后,我找到了一个命令行解决方案。它不是一个完全自动化的 GUI 解决方案……但这是 Linux,对吧。

第一的准备挂载点(仅一次):

$ sudo mkdir /media/$USER/capsule

然后每次你想要安装胶囊时:

如果您和我一样在 Mac 和 Linux 系统上使用相同的用户名:

sudo mount -t cifs //10.0.1.1/Data /media/$USER/capsule -o username=$USER,sec=ntlm,uid=$USER,vers=1.0

别的:

sudo mount -t cifs //10.0.1.1/Data /media/$USER/capsule -o username=MyCapsuleUsername,sec=ntlm,uid=MyCapsuleUsername,vers=1.0

您将被要求输入两个密码,第一个来自sudo,即您的 Linux 密码,第二个来自胶囊。

.bashrc注意,为了方便起见,我在文件中创建了一个别名。

注意,//10.0.1.1是您的胶囊的默认本地 IP 地址,假设您在设置时没有做任何特殊操作。您可以检查路由器设置以获取正确的 IP。/Data是您为时间胶囊指定的名称,根据您的情况可能会有所不同。

答案2

在全局部分 /etc/samba/smb.conf 中添加以下内容:

[global]
...
client use spnego = no
...

您可以通过命令安装它

gio mount smb://10.0.1.1/Data/

或者在 nautilus 中按 CTRL + L 并输入完整地址

smb://10.0.1.1/Data/

答案3

不幸的是,这里的所有答案都缺少以下相当重要的信息。你给你的时间胶囊起的名字不匹配/Data

时间胶囊的名称对应于网络基本输入输出系统又名主机名。因此它可以作为IP地址。假设它是“TC Peter”。Apple Airport Utility 会将其翻译为TC-PETER

该值/Data对应于时间胶囊 卷名。在这种情况下,它现在将是“AirPort-Laufwerk Peter”,等于/AirPort-Laufwerk Peter。在其他语言中,这当然是不同的,所以在英语中,这将是/AirPort-Drive Peter/AirPort-Volume Peter

但是,在我的示例中,这将给出以下两个可能的命令:

sudo mount.cifs //TC-PETER/'Airport-Laufwerk Peter' /mnt/timecapsule/ -o password='yourpassword',sec=ntlm,uid=1000,vers=1.0

sudo mount.cifs //x.x.x.x/'Airport-Laufwerk Peter' /mnt/timecapsule/ -o password='yourpassword',sec=ntlm,uid=1000,vers=1.0

注意,如果时间胶囊卷名称包含空间

在我的情况下,对于 Kubuntu 18.04 ,uid 值1000是正确的。在其他 Linux 发行版和用户上可能有所不同。使用命令检查id -u <username>

当 Time Capsule 配置了单一密码(设备管理员或网络密码)时,此安装命令可以正常工作。当 Time Capsule 上的用户帐户配置为访问模式时,此命令不起作用。

就是这样。我可以确认它完美地工作。我花了将近几天的时间才弄清楚这个正确的语法。;-)

其他有用信息:

安装所需的软件包:

sudo apt-get install cifs-utils
sudo apt-get install keyutils

定义您的工作组并启用NTLMv1smb.conf 文件中的支持:

sudo nano /etc/samba/smb.conf

workgroup = <yourworkgroup>
ntlm auth = ntlmv1-permitted

额外的文件系统相关附录:

sudo nano /etc/fstab

以下是每次重启时自动挂载的两个 fstab 配置示例。我已经测试过了,效果非常好。

//TC-PETER/Airport-Laufwerk\040Peter /mnt/timecapsule cifs _netdev,users,vers=1.0,sec=ntlm,password=yourpassword,rw,uid=1000,gid=1000,iocharset=utf8 0 0

//x.x.x.x/Airport-Laufwerk\040Peter /mnt/timecapsule cifs _netdev,users,vers=1.0,sec=ntlm,password=yourpassword,rw,uid=1000,gid=1000,iocharset=utf8 0 0

需要注意的是,\040当共享名称包含空间. 以前使用的撇号不起作用在 fstab 语法方案中!

有趣的是,经常提出的参数auto不起作用,在我的例子中,它破坏了整个安装命令。我不知道为什么会这样。这可能是因为参数_netdev。该参数与网络共享有关,它会延迟安装,直到网络启动并处于活动状态。但是,我还发现该_netdev标志在较新的版本上不起作用的信息systemd基于 Linux 发行版。因此也可以忽略它。无论如何,共享在被选择时会立即挂载。(dmesg 中没有错误消息。)

进一步的参数是rw,允许读写访问。(嗯,并非所有 SMB 共享配置示例都包含它,因此其中一个可能是可选的)。告诉iocharset=utf8Linux 符合 UTF(Windows?)。同样在这里,它可能(强烈?)推荐但不是强制性的。参数vers=1.0sec=ntlm非常不安全,但不幸的是绝对必要,因为 Apple 在其 Time Capsules 上使用了一个非常古老的 SMB 标准。

该功能users允许所有可用的 Linux 用户进行挂载/卸载,而标志user仅允许 root/fstab 所有者帐户进行挂载/卸载。该原则应被视为有些不连贯,并且可能无法在 SMB 共享上按预期工作。请注意,在 SMB 共享上创建的所有文件和文件夹(由 Linux 用户创建)都将包含uid=1000gid=1000用户值。

一些 SMB fstab 示例还使用了一个nounix标志,它明确定义了共享不符合 Linux 标准。好吧,就我而言,无论我是否设置它,我都没有注意到任何差异。

最后,真正不愉快的事情是我在dmesg几个通知中都叫CIFS VFS: bogus file nlink value 0。有人建议设置标志noserverino来解决这个问题。但是,在我使用 Apple Time Capsule SMB1 共享的情况下,它没有任何帮助,通知仍然存在。不管怎样,因为一切都正常,所以我只是忽略它。 ;-)

答案4

我想要自动安装我的联网胶囊。

步骤 1:安装 cifs-utils

$ sudo apt-get install cifs-utils

步骤 2:在 fstab 文件中添加一行

$ sudo nano /etc/fstab

并添加以下行

//192.168.1.17/Data /media/capsule cifs user=John\040Doe,pass=this.is.capsule.pass,rw,uid=johndoe.from.other.pc.id,iocharset=utf8,sec=ntlm,vers=1.0 0 0

和 'user=John\040Doe'

\040

是空间。仅此而已。

相关内容