如何在启动时自动挂载afp卷?


8

我买了一个NAS来存储媒体文件,我想在启动时自动挂载这些卷。目前,我正在“系统偏好设置”>“帐户”下,将这些卷作为“登录项”打开。

此方法有效,但不幸的是,它在启动时还会在新的Finder窗口中弹出每个卷。选中项目上的隐藏仅隐藏进程,而不隐藏这些进程的结果Finder窗口。避免那些Finder弹出窗口的解决方案将是不错的选择。

我也想避免任何第三方应用程序来完成此任务。


Answers:


4

我从http://hints.macworld.com/article.php?story=20050215082247458找到了该脚本,但下面将对其进行复制。

  • 打开脚本编辑器并粘贴:
    将sfiles设置为“ afp:// user:pass @ host / volume”  
    告诉应用程序“ Finder”  
        挂载卷文件   
    结束告诉
  • 替换sfiles为AFP卷的适当详细信息。
  • 在您上方和内部的其他服务器上添加适当的其他行 tell
  • 将此脚本保存在安全的地方,然后将其添加到登录项窗格中(而不是现在拥有的卷)

4

TL; DR

使用AppleScript,但不要指定用户名或密码


背景

就我而言,我在网上发现的所有建议都无法完美地发挥作用。

我有几个要自动挂载的AFP卷。遵循此处和其他地方给出的建议,显而易见的解决方案似乎是带有以下内容的AppleScript文件:

tell application "Finder"
    try
        mount volume "afp://user@server/a"
        mount volume "afp://user@server/b"
        mount volume "afp://user@server/c"
    end try
end tell

现在,这几乎可行。从Finder的角度看,好像所有卷都已正确安装。但是,如果使用终端,则可以看到问题。发生了以下情况:

  • 该卷安装在目录中/Volumes/a/Volumes/b-1/Volumes/c-1

  • 空目录/Volumes/b/Volumes/c

是否在乎它取决于您的预期用途,但是我需要一个解决方案,在该解决方案中文件系统路径更可预测。

在花了很多时间处理所有这些变体之后,似乎至关重要的事情如下:如果您指定用户名并且已经从同一 AFP服务器上装载了一些卷,那么就会出错。

因此,下面的解决方案。


  1. 使用Finder时,请确保所有内容均正常运行:您可以通过单击共享来装载卷,而无需输入任何密码。如果Finder要求输入用户名和密码,请告诉它记住密码。

  2. 如下创建一个AppleScript应用程序。打开AppleScript编辑器。编写如下代码:

    tell application "Finder"
        try
            mount volume "afp://server/a"
            mount volume "afp://server/b"
            mount volume "afp://server/c"
        end try
    end tell
    

    这里的“服务器”是服务器的主机名(如果Finder显示服务器名“ x”,则可以尝试使用主机名“ x.local”)。将“ a”,“ b”和“ c”替换为要安装的卷的名称。请确保您尝试指定任何用户名或密码。使用文件格式“应用程序”编译并保存它(您将自动获得文件扩展名“ .app”)。

  3. 通过运行刚创建的应用程序对其进行测试。它很可能要求输入用户名和密码;输入他们,然后再次告诉它记住密码。

  4. 卸载(使用Finder),然后重试。它应该工作,无需任何询问。路径应正确(无-1后缀)。

  5. 将应用程序添加到您的登录项(系统偏好设置;用户和组)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.