如何在启动时可靠地挂载共享文件夹 /volume/folder

如何在启动时可靠地挂载共享文件夹 /volume/folder

以下是我在 /usr/local/bin/ 中的 sample.sh

#!/bin/sh
mkdir -p /Volumes/folder
mount -t afp -o rw afp://user:password@server_name/folder_name /Volumes/folder

以下是 /Library/LaunchAgents/ 中的 com.apple.sample.plist

 ?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>Label</key>
        <string>com.apple.sample</string>
        <key>ProgramArguments</key>
        <array>
    <string>/usr/local/bin/sample.sh</string>
        </array>
        <key>RunAtLoad</key>
        <true/>
</dict>
</plist>

当我能够独立运行 sample.sh 并且运行正常时。

我也尝试过使用 launchd.conf 作为

mkdir -p /Volumes/folder
mount -t afp -o rw afp://user:password@server_name/shared_folder /Volumes/folder

还是行不通。

答案1

/Library/LaunchAgents/与单个用户绑定,而与/Library/LaunchDaemons/整个机器绑定。系统启动并运行内核后,/Library/LaunchDaemons/首先加载在中找到的属性列表文件,因为它们是系统级守护进程。

我尝试放入 com.apple.sample.plist /Library/LaunchDaemons/,成功了。安装成功。

但 10 次中有 8 次成功,2 次失败。

相关内容