美文网首页
[Mac]launchd添加开机启动程序

[Mac]launchd添加开机启动程序

作者: ljjkerwin | 来源:发表于2017-09-18 18:17 被阅读0次

0.准备知识


Launchd是Darwin核心启动后所调用的第一个也是唯一一个进程,剩下所有的系统服务和用户进程都由它管理。

Mac 下 Launchd 指定目录有:

~/Library/LaunchAgents
/Library/LaunchAgents
/Library/LaunchDaemons
/System/Library/LaunchAgents
/System/Library/LaunchDaemons

其中的区别:

/System/Library 目录下存放的是系统文件
/Library 、~/Library/ 目录是用户存放的第三方软件
LaunchDaemons 是用户未登陆前就启动的服务
LaunchAgents 是用户登陆后启动的服务
Plist 配置

这里列举几个比较有用的配置关键字:

Label - 标识符,用来表示该任务的唯一性
Program - 程序名称,用来说明运行哪个程序、脚本
ProgramArguments - 数组程序名,同上,只是可以运行多个程序
WatchPaths - 监控路径,当路径文件有变化是运行程序,也是数组
RunAtLoad - 是否在加载的同时

1.创建plist文件


sudo vi /Library/LaunchDaemons/{name}.plist

<?xml version="1.0" encoding="UTF-8"?>  
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">  
<plist version="1.0">  
<dict>  
        <key>Label</key>  
        <string>{name}.plist</string>  
        <key>ProgramArguments</key>  
        <array>  
                <string>/usr/local/bin/nginx</string>  
        </array>  
        <key>KeepAlive</key>  
        <false/>  
        <key>RunAtLoad</key>  
        <true/>  
        <key>StandardErrorPath</key>  
        <string>/usr/local/var/log/nginx/error.log</string>  
        <key>StandardOutPath</key>  
        <string>/usr/local/var/log/nginx/access.log</string>  
</dict>  
</plist>  

2.注册服务


sudo launchctl load -w /Library/LaunchDaemons/{name}.plist

卸载

sudo launchctl unload -w /Library/LaunchDaemons/{name}.plist

3.reboot并自动运行


立即运行

sudo launchctl start /Library/LaunchDaemons/{name}.plist

查看启动日志

cat /var/log/system.log

相关文章

  • [Mac]launchd添加开机启动程序

    0.准备知识 Launchd是Darwin核心启动后所调用的第一个也是唯一一个进程,剩下所有的系统服务和用户进程都...

  • macOS Mojave系统下 开机自动运行Redis,测试有效

    设置redis开机启动,使用的是Mac的launchd,但是苹果新版系统对于用的权限已经逐步收编, 所以只能将Re...

  • Ubuntu 18.04添加开机自启

    Ubuntu 18.04添加开机自启地两种方式 一、通过命令行添加自启动程序 添加服务:添加这个服务并且开机自启动...

  • win10自启动管理

    虽然开机自启动程序会影响开机速度,不过将一些必用软件设置生开机自启动也是很爽的。 添加开机自启动 WIN键 + R...

  • 2018-10-25 共享macOS 代理

    安装 Privoxybrew install privoxy 将 Privoxy 添加到开机启动中 添加开机启动:...

  • MAC启动项

    Mac设计开机启动项 MAC设置开机启动项分两种级别。简单和深度。 简单设置开机启动项 此种方法是通过系统->用户...

  • mongodb

    mac 安装 开机启动mongodb命令 (配置开机自启) 使用launchctl启动mongodb server...

  • Mac设置开机启动

    Mac设置开机启动 本文针对命令行使用的开发工具或自己编写的脚本设置开机启动,图形化界面的程序仅需要设置->用户与...

  • centos 安装samba

    关闭SELinux 安装samba 安装成功之后查看服务状态 添加开机启动 取消开机启动 配置 添加 share ...

  • logstash服务启动脚本

    添加用户 设置开机启动

网友评论

      本文标题:[Mac]launchd添加开机启动程序

      本文链接:https://www.haomeiwen.com/subject/nhwbsxtx.html