Mac OS 的开机启动方式

launchd 是 Mac OS 下用于初始化系统环境的关键进程,它是内核装载成功之后在OS环境下启动的第一个进程。其实它的作用就是我们平时说的守护进程,简单来说,用户守护进程是作为系统的一部分运行在后台的非图形化程序。采用这种方式来配置自启动项很简单,只需要一个plist文件,该plist文件存在的目录有:

  • LaunchDaemons ~/Library/LaunchDaemons
    用户登陆前运行 plist(程序)
  • LaunchAgents ~/Library/LaunchAgents
    用户登录后运行相应的 plist(程序)

你需要.plist文件来指定需要开机启动的程序。首先来创建一个.plist文件:

  1. sudo vim /Library/LaunchDaemons/org.mongodb.mongod.plist

以下是开机启动的.plist配置文件的示例:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN""http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  3. <plist version="1.0">
  4. <dict>
  5. <key>Label</key>
  6. <string>org.mongodb.mongod</string>
  7. <key>ProgramArguments</key>
  8. <array>
  9. <string>/usr/local/mongodb-2.0.3/bin/mongod</string>
  10. <string>run</string>
  11. <string>--config</string>
  12. <string>/usr/local/mongodb-2.0.3/mongod.conf</string>
  13. </array>
  14. <key>RunAtLoad</key>
  15. <true/>
  16. <key>KeepAlive</key>
  17. <true/>
  18. <key>WorkingDirectory</key>
  19. <string>/usr/local/mongodb-2.0.3</string>
  20. <key>StandardErrorPath</key>
  21. <string>/usr/local/mongodb-2.0.3/log/error.log</string>
  22. <key>StandardOutPath</key>
  23. <string>/usr/local/mongodb-2.0.3/log/mongo.log</string>
  24. </dict>
  25. </plist>
粘贴完以后,我们需要对上面的内容做两处修改:一个是“redis-server”的路径,这里需要改为你自己的安装路径(可以使用”which redis-server”命令来查看具体的路径)。还有一个就是redis配置文件的路径,这个是可选的,如果没有使用配置文件那么就把第二个删除,如果使用了配置文件,一定要改为正确的路径。

将plist文件载入到launchd

编辑完plist文件以后,我们需要将该文件载入到launchd里,使用launchctl命令,具体命令如下:
  1. sudo launchctl load /Library/LaunchDaemons/org.mongodb.mongod.plist
重启以后,redis就可以开机启动了。如果不想重新启动,也可以使用如下命令:
  1. sudo launchctl start org.mongodb.mongod
如果想关闭redis的话,使用如下命令:
  1. sudo launchctl stop org.mongodb.mongod
为了使用方便,我们可以给redis的开启和关闭命令设置别名:
  1. alias mongodbstart='sudo launchctl start org.mongodb.mongod'
    alias mongodbstop='sudo launchctl stop org.mongodb.mongod'

参考:

1、https://www.teakki.com/p/57e224390906a5d20a8f90d3

2、https://www.jianshu.com/p/e73978416920

mac下设置mongodb开机启动方法的更多相关文章

  1. mac下设置redis开机启动方法

    Mac OS 的开机启动方式 launchd 是 Mac OS 下用于初始化系统环境的关键进程,它是内核装载成功之后在OS环境下启动的第一个进程.其实它的作用就是我们平时说的守护进程,简单来说,用户守 ...

  2. centos7 下设置 mongodb 开机启动 (重点)

    centos 7的开机启动跟之前版本的centos有很大不同.现在用 systemctl命令代替了之前的chkconfig 和 service 命令 注册到开机启动的方法如下: 在系统服务目录下新建m ...

  3. Windows8系统下设置Mongodb开机启动

    1. 官网下载安装 MongoDB https://www.mongodb.com/ 2. 环境变量设置 把 mongod.exe 所在路径加入到环境变量的PATH, 我这里安装的路径是 D:\db\ ...

  4. centos下设置nodejs开机启动

    node环境的安装便不再赘述了,网上有很多教程,也非常简单. 上一篇博客介绍了用nginx代理nodejs.这一篇是使用pm2实现nodejs的自动重启. 什么是pm2? 如官网介绍的,pm2是nod ...

  5. Centos7 设置Mongodb开机启动-自定义服务

    (1).在/lib/systemd/system/目录下新建mongodb.service文件,内容如下 [Unit] Description=mongodb After=network.target ...

  6. mac 下nginx加入开机启动

    通过brew install nginx后设置开机启动项 sudo cp /usr/local/opt/nginx/*.plist /Library/LaunchDaemonssudo launchc ...

  7. Mac下使Iterm2开机启动不显示界面

    一.在登录项上添加Iterm2的启动项 二.打开Iterm2 1.启动后会显示Iterm2,此时点击关闭按钮,保证桌面上没有任何的控制台窗口. 2.按[Command]+[Shift]+[S],保存名 ...

  8. Mac下配置nacos开机启动

    nacos能正常启动后,开始制作启动app. 1.打开自带的 自动操作 2.点击选项 3.选择应用程序 4.搜索shell,点击运行Shell脚本,写入脚本,$NACOS 为nacos的绝对路径,保存 ...

  9. Linux下设置Tomcat开机启动

    1.进入/etc/rc.d/init.d,新建文件tomcat,并让它成为可执行文件 chmod 755 tomcat. #!/bin/bash # # /etc/rc.d/init.d/tomcat ...

随机推荐

  1. OpenSSL 中 RSA 加密解密实现源代码分析

    1.RSA 公钥和私钥的组成.以及加密和解密的公式: 2.模指数运算: 先做指数运算,再做模运算.如 5^3 mod 7 = 125 mod 7 = 6 3.RSA加密算法流程: 选择一对不同的.而且 ...

  2. 用node.js写的代码

    下面的代码摘抄于官方网站,我在本地跑了一下,并且把自己的理解简单的做了记录 服务端 app.js var app = require('http').createServer(handler) var ...

  3. Internal Server Error: /favicon.ico 的解决方法

    项目大致环境:Linux + Apache + Django + Python 因为项目的需求重写了Python Logger.error 方法,每当记录错误日志的时候就发送一封邮件到指定的邮箱.项目 ...

  4. 选择合适的Linux版本

    以下纯属个人想法:欢迎指正 1.Linux桌面系统,首选Ubuntu.当然Ubuntu也有服务器版本,不建议使用 2.服务端的Linux稳定的服务器系统,在企业中从事运维工作Redhat或者CentO ...

  5. hdu 4865 Peter&#39;s Hobby(概率dp)

    http://acm.hdu.edu.cn/showproblem.php? pid=4865 大致题意:有三种天气和四种叶子状态.给出两个表,各自是每种天气下叶子呈现状态的概率和今天天气对明天天气的 ...

  6. PHPstorm最常用的快捷键,提高开发效率

    PHPstorm最常用的快捷键,提高开发效率 •ctrl+b 跳到变量申明处 •Ctrl + E 打开最近文件 •Ctrl + R 替换. •Ctrl + D 复制粘贴.将当前行或者选择的内容复制粘贴 ...

  7. Android自动填写获取到的验证码

    Android需要添加的相关权限 <uses-permission android:name="android.permission.RECEIVE_SMS">< ...

  8. ios上线流程

    一.前言: 作为一名iOSer,把开发出来的App上传到App Store是必要的.下面就来详细讲解一下具体流程步骤. 二.准备: 一个已付费的开发者账号(账号类型分为个人(Individual).公 ...

  9. ios的坑 无痕模式

    我们的一个小应用,用localStorage做了下缓存,测试上线之后有反馈页面数据拉取不到, 最后定位到是localStorage有问题. 是Private Browsing Mode引起的.然后查看 ...

  10. Windows I/O完成端口

    内容: 1.基本概念     2.WINDOWS完成端口的特点     3.完成端口(Completion Ports )相关数据结构和创建     4.完成端口线程的工作原理     5.Windo ...