位置: 编程技术 - 正文

让Mac OS X系统启动时执行脚本的方法(mac如何设置启动系统)

编辑:rootadmin
公司购买了Zoho公司的资产管理软件AssetExplorer,该资产管理软件可以通过在客户机电脑上安装Agent客户端软件收集客户机的硬件及软件信息。公司有若干台iMac电脑,运行的是Mac OS X .6的系统,由于AssetExplorer只支持Windows版本的Agent,对于其他系统的计算机需要通过在客户端执行bash脚本文件的方式,收集客户机的信息并上传到服务器。这就要求客户机的Mac OS X系统启动的时候能够自动执行脚本程序,而且要基于系统服务层面,用户无需登录,脚本也能在后台运行,最好脚本程序后台还能做到固定时间自动运行。 我们可以利用Mac OS X内置的一种称为Launch Daemon / Agent的机制来实现系统启动时自动执行脚本程序。Mac OS X从.4 开始,采用 launchd进程来管理整个操作系统的服务及进程。传统的UNIX 会使用 /etc/rc.* 或其他的机制来管理开机时要启动的启动服务,而现在的Mac OS X则使用launchd来管理,它的启动服务称为Launch Daemon / Agents。利用Launch Daemon / Agent,我们就可以令脚本程序在系统启动的时候在后台运行了。 •Launch Daemon和Launch Agent的区别   Launch Daemon和Launch Agent 是同一种东西在不同应用范围的名称。Launch Daemon是系统级别的服务,称为daemon,Launch Agent是用户级别的服务,称为agent,前者在开机时会加载,后者在用户登录后才会加载。所以我们采用Launch Daemon的方式运行脚本。 •从AssetExolorer导出脚本文件   选择扫描→孤立工作站审计→通过脚本扫描工作站→Mac导出脚本文件ae_scan_mac.sh,并修改脚本文件中的hostName="服务器IP地址或域名地址",并检查portNo一项是否正确。 •创建plist配置文件   Launchd进程需要读取一个xml格式的plist配置文件,创建该文件并将其放置在/System/Library/LaunchDaemons/ 或者/Library/LaunchDaemons/目录下。可在Windows下预先创建该文件,需要使用支持Unix格式的文本编辑器(比如UltraEdit)创建该文件。    其中plist文件格式及每个字段的含义: ae_scan_mac.plist文件范例: XML/HTML Code复制内容到剪贴板 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" " <plist version="1.0"> <dict> <key>Label</key> <string>com.manageengine.ae_scan_mac</string> <key>Program</key> <string>ae_scan_mac.sh</string> <key>RunAtLoad</key> <true/> <key>WorkingDirectory</key> <string>/Library/LaunchDaemons/</string> <key>KeepAlive</key> <false/> <key>StartCalendarInterval</key> <dict> <key>Hour</key> <integer></integer> <key>Minute</key> <integer>0</integer> </dict> </dict> </plist>

推荐整理分享让Mac OS X系统启动时执行脚本的方法(mac如何设置启动系统),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mac怎么设置系统启动项,启动mac系统,mac 启动设置,mac 启动设置,mac 启动设置,mac怎么设置系统启动项,启动mac系统按哪个键,macos设置开机启动,内容如对您有帮助,希望把文章链接给更多的朋友!

其中的关键字解释: 1)Label(必选) 该项服务的名称。 2)Program(ProgramArgument是必选的,在没有ProgramArgument的情况下,必须要包含Program关键字) 指定可执行文件的路径和名称。 3)RunAtLoad(可选) 标识launchd在加载完该项服务之后立即启动路径指定的可执行文件。默认值为false。设置为true即可实现开机运行脚本文件。 4)WorkingDirectory(可选) 运行可执行文件之前,指定当前工作目录的路径。 5)KeepAlive(可选) 这个关键字可以用来控制是否让可执行文件持续运行,默认值为false,也就是说满足具体条件之后才启动。当设置值为ture时,表明无条件的开启可执行文件,并使之保持在整个系统运行周期内。 6)StartCalendarInterval(可选) 该关键字可以用来设置定时执行可执行程序,可使用Month、Day、Hour、Minute等子关键字,它可以指定脚本在多少月、天、小时、分钟、星期几等时间上执行,若缺少某个关键字则表示任意该时间点,类似于Unix的Crontab计划任务的设置方式,比如在该例子中设置为每天点钟执行脚本文件。 所有key关键字详细使用说明可以在Mac OS X终端下使用命令man launchd.plist查询。 •在客户机部署配置文件和脚本文件 1) 首先为Mac OS X系统的当前的用户设置一个密码,在系统偏好设置→账户中设置。   然后,可通过共享等方式将脚本文件ae_scan_mac.sh和plist文件ae_scan_mac.plist拷贝到本地硬盘的一个临时目录中,然后打开实用工具→终端,使用以下命令: sudo mv ae_scan_mac.* /Library/LaunchDaemons 将这两个文件移动到/Library/LaunchDaemons/目录下。 2) 修改文件权限: sudo chown root:wheel /Library/LaunchDaemons/ae_scan_mac.* sudo chmod a+x /Library/LaunchDaemons/ae_scan_mac.sh sudo chmod /Library/LaunchDaemons/ae_scan_mac.plist3) plist文件的编辑和检查 可使用命令sudo vim ae_scan_mac.plist对文件进行修改。 检查plist文件的语法: plutil ae_scan_mac.plist 若返回OK则表示文件语法正确。 4) 启动服务并载入plsit文件: sudo launchctl load /Library/LaunchDaemons/ae_scan_mac.plist 或者重启Mac电脑也可以。 要留意的是,每次修改完plist文件后必须使用以下命令重新载入plist文件又或者重启电脑,plist的配置才会生效。 sudo launchctl unload /Library/LaunchDaemons/ae_scan_mac.plist sudo launchctl load /Library/LaunchDaemons/ae_scan_mac.plist 接着,检查服务的运行状态: sudo launchctl list5) 最后待脚本运行后,就能在AssetExplorer服务器上看到这台客户机的信息了,之后客户机就会自动按照plist文件设置的时间或者重启机器后将机器信息上传到服务器。

让Mac OS X系统启动时执行脚本的方法(mac如何设置启动系统)

两个文件的部署有几个地方需要注意的:

1)文件的权限必须正确,两个文件所有者必须为root,脚本文件必须有执行权限。2)plist文件的语法必须正确,要留意配置中的程序工作目录和运行参数不要错。可执行:sudo launchctl start /Library/LaunchDaemons/ae_scan_mac.plist强制运行服务,或者直接运行一下脚本程序,测试一下脚本文件的运行是否正常。3)每次plist文件修改后必须执行launchctl unload/load卸载并重新载入plist文件,才能使新的配置文件马上生效。  脚本程序和配置文件分别在多台客户机一次性部署后,AssetExplorer就可以自动收集到所有Mac电脑的硬件和软件信息,即使机器配置更改了也无需手动添加,方便了公司的资产管理。Launchd进程的功能比较强大,Apple推荐并已使用该进程替代传统的cron了,大家有兴趣可以再研究一下。

原文为博主所著,并刊登于《网络运维与管理》杂志..3.4期。

OS X El Capitan 下怎么修复磁盘权限? 当前苹果为Mac发布了最新的OSXElCapitan系统,版本为.。新版本的系统增加了一些新功能,另外对原来系统中的一些功能也进行了改进,特别是今天这里

在Mac OS下使用docker构建基于node的博客程序hexo 截止目前为止,在dockerhub上还看不到hexo3+版本的镜像构建。由于Node环境的安装时间比较长,对于电脑比较多的人相对来说还是比较麻烦的。基于DockerFile

Mac OS X .9 Mavericks系统怎么激活? MacOSX.9Mavericks系统激活方法软件名称:MacOSXMavericksV.9固件苹果电脑版软件大小:4.GB更新时间:--、开启Mac启动系统后可看到如下图2、点击选

标签: mac如何设置启动系统

本文链接地址:https://www.jiuchutong.com/biancheng/352987.html 转载请保留说明!

上一篇:Mac怎么快速关闭显示器?mac关闭显示器快捷键的两种教程(mac快速关闭所有窗口)

下一篇:在Mac OS下使用docker构建基于node的博客程序hexo(macbook如何使用word)

  • 所得税调增调减项目有哪些
  • 个人出租商用房税率
  • 借款合同印花税减免优惠政策2022
  • 什么是税目税基税率,简答题
  • 购买二手车还需要交购置税吗
  • 计提所得税费用会计分录
  • 董事会职权是否为强制规定
  • 主营业务成本大于生产成本
  • 股东转让股权公司如何做账
  • 一般纳税人混凝土税率
  • 网上申报中月平均工资怎么计算
  • 安置残疾人加计扣除
  • 实收资本印花税税率
  • 跨月的增值税普通发票开错了怎么办
  • 企业基本医疗保险和综合医疗保险
  • 一个企业只有收入没有支出合理吗
  • 发票对方认证不了怎么回事
  • 小规模纳税人餐饮业税率是多少
  • 中国增值税发展史
  • 哪些行为违反法律但不违反道德
  • 未抵扣进项税会计分录
  • 工费经费用计提吗
  • 持续经营净利润是什么意思
  • 抵扣进项税有期限吗
  • 企业报税的详细流程期限为
  • 1697508871
  • 公司名下商品房卖给个人后房产税怎么交
  • 留底税额怎么分录
  • 鸿蒙3.0内测申请成功显示名额已满
  • php发送电子邮件
  • 电脑中毒后如何不装系统清理掉
  • 苹果手机nfc录门禁卡
  • mac怎么设置默认程序
  • shine.exe - shine是什么进程 有什么用
  • 呆账核销分录
  • 小企业会计准则和企业会计准则的区别
  • 购税盘分录
  • 坏账准备税收调整
  • 每个开发人员都有编制吗
  • 活动补助会计分录
  • 怎样合理的运用网络
  • 股东出资不足需要赔偿吗
  • 加工费能直接抵税吗
  • 织梦建站详细步骤
  • sse后端向前端推送 前端只能收到 末尾的值
  • 织梦自适应模板怎么弄
  • mongodb索引存储方式
  • 小规模纳税人网上报税
  • 印花税的税率变动
  • 企业借款利息计入什么科目
  • 营改增的不利影响
  • 福利费可以抵扣进项税
  • 公司注销前的资产负债
  • 分期付款服务费是什么
  • 员工加班打车费报销
  • 印花税计入什么会计分录
  • 收到预付款项发票怎么开
  • 财务独立核算的条件
  • mysql 备份方式
  • mysql压缩包安装教程5.7.32
  • sqlserver 统计sql语句大全收藏
  • 删除默认操作系统选项
  • 配置结果
  • wbs是什么的缩写
  • pptd40nt.exe是什么进程 有什么用 pptd40nt进程查询
  • win8系统怎么安装软件
  • linux文件批处理命令
  • bootstrap下拉框设置默认值
  • javascript事件模型介绍
  • perl有什么用
  • python常用的安装扩展
  • NodeJS配置HTTPS服务实例分享
  • unity怎么写接口
  • Android应用与开发
  • 山东省关于退林还耕的规定
  • 东莞市国税局南城莫
  • 欠款抵押房产可以直接过户吗
  • 小规模纳税人土地税减免政策
  • 税收超额负担图解
  • 苏州虎丘区税务局在哪里
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设