Skip to main content
  1. internet/

mac系统设置程序开机启动

·460 words·1 min·

背景 #

之前写了一套密码管理工具,其中包含了一个服务端。我现在将自己的mac电脑作为服务器,运行这个服务端,这样就能实现多端同步以及浏览器插件获取账号信息的功能。 可是如果每次都手动启动这个服务端,那无疑会让开机操作更加枯燥。所以还是有必要加上自动启动的。

实现 #

在mac上有两种实现方式

Automator #

  1. 启用Automator.app(中文名自动操作),这是mac自带的一个工具。

  2. 在左侧的侧边栏选择[资源库]-[实用工具]-[运行Shell脚本], 然后将服务脚本启动命令写入到脚本中。

    截图

  3. 保存为APP, 然后设置为开机启动即可

    截图

Launchctl #

  1. 在’/Library/LaunchAgents’目录下创建’xxxx.plist’文件,e.g.:
<?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>stong.secretbookserver</string>
    <key>ProgramArguments</key>
    <array>
        <string>/xxxxxx/secret_book_server</string>
        <string>/xxxxxx/secret.db</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>KeepAlive</key>
    <true/>
</dict>
</plist>
  1. ProgramArguments中设置命令执行,比如第一个是我的服务可执行文件,第二个是服务启动所需的配置文件
  2. 设置开机启动:RunAtLoad
  3. 设置保活: KeepAlive
  4. 加载文件:launchctl load xxxx.plist

参考文档 #