亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Mac OS > 正文

讓Mac OS X系統啟動時執行腳本的方法

2020-10-18 13:14:58
字體:
來源:轉載
供稿:網友
公司購買了Zoho公司的資產管理軟件AssetExplorer,該資產管理軟件可以通過在客戶機電腦上安裝Agent客戶端軟件收集客戶機的硬件及軟件信息。公司有若干臺iMac電腦,運行的是Mac OS X 10.6的系統,由于AssetExplorer只支持Windows版本的Agent,對于其他系統的計算機需要通過在客戶端執行bash腳本文件的方式,收集客戶機的信息并上傳到服務器。這就要求客戶機的Mac OS X系統啟動的時候能夠自動執行腳本程序,而且要基于系統服務層面,用戶無需登錄,腳本也能在后臺運行,最好腳本程序后臺還能做到固定時間自動運行。

我們可以利用Mac OS X內置的一種稱為Launch Daemon / Agent的機制來實現系統啟動時自動執行腳本程序。Mac OS X從10.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/目錄下??稍赪indows下預先創建該文件,需要使用支持Unix格式的文本編輯器(比如UltraEdit)創建該文件。
  
其中plist文件格式及每個字段的含義:
ae_scan_mac.plist文件范例:

XML/HTML Code復制內容到剪貼板
  1. <?xml version="1.0" encoding="UTF-8"?>    
  2. <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"     
  3.     "http://www.apple.com/DTDs/PropertyList-1.0.dtd">    
  4. <plist version="1.0">    
  5. <dict>    
  6.     <key>Label</key>    
  7.         <string>com.manageengine.ae_scan_mac</string>    
  8.     <key>Program</key>    
  9.     <string>ae_scan_mac.sh</string>    
  10.     <key>RunAtLoad</key>    
  11.          <true/>    
  12.     <key>WorkingDirectory</key>    
  13.         <string>/Library/LaunchDaemons/</string>    
  14.     <key>KeepAlive</key>     
  15.         <false/>     
  16.     <key>StartCalendarInterval</key>     
  17.     <dict>           
  18.         <key>Hour</key>     
  19.         <integer>11</integer>     
  20.         <key>Minute</key>    
  21.         <integer>0</integer>     
  22.     </dict>     
  23. </dict>    
  24. </plist>  


其中的關鍵字解釋:

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計劃任務的設置方式,比如在該例子中設置為每天11點鐘執行腳本文件。
所有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 644 /Library/LaunchDaemons/ae_scan_mac.plist



3) 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 list



5) 最后待腳本運行后,就能在AssetExplorer服務器上看到這臺客戶機的信息了,之后客戶機就會自動按照plist文件設置的時間或者重啟機器后將機器信息上傳到服務器。

兩個文件的部署有幾個地方需要注意的:

1)文件的權限必須正確,兩個文件所有者必須為root,腳本文件必須有執行權限。
2)plist文件的語法必須正確,要留意配置中的程序工作目錄和運行參數不要錯??蓤绦校簊udo launchctl start /Library/LaunchDaemons/ae_scan_mac.plist
強制運行服務,或者直接運行一下腳本程序,測試一下腳本文件的運行是否正常。
3)每次plist文件修改后必須執行launchctl unload/load卸載并重新載入plist文件,才能使新的配置文件馬上生效。
  腳本程序和配置文件分別在多臺客戶機一次性部署后,AssetExplorer就可以自動收集到所有Mac電腦的硬件和軟件信息,即使機器配置更改了也無需手動添加,方便了公司的資產管理。Launchd進程的功能比較強大,Apple推薦并已使用該進程替代傳統的cron了,大家有興趣可以再研究一下。

原文為博主所著,并刊登于《網絡運維與管理》雜志2014.02.3.4期。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲精品一区二区在线| 国产精品久久久av久久久| 不用播放器成人网| 国模精品视频一区二区| 色偷偷9999www| 成人精品视频在线| 欧美大片欧美激情性色a∨久久| 日韩av中文字幕在线播放| 午夜精品一区二区三区在线| 亚洲丝袜一区在线| 亚洲欧美在线一区二区| 国产精品日韩av| 日本午夜精品理论片a级appf发布| 亚洲欧美日韩图片| 欧美极品美女视频网站在线观看免费| 欧美视频在线免费| 久久资源免费视频| 最好看的2019年中文视频| 青青草原成人在线视频| 亚洲网站在线看| 久久久久国产精品www| 国产精品永久免费在线| 久久久精品久久| 成人免费视频网址| 最近2019中文字幕一页二页| 国产精品激情av在线播放| 91精品国产91久久久久福利| 欧美有码在线观看| 91国语精品自产拍在线观看性色| 久热精品视频在线观看| 国产精品看片资源| 亚洲精选在线观看| 久久久久久91香蕉国产| 国产精品电影一区| 国产精品678| 国产999精品久久久影片官网| 色综久久综合桃花网| 成人激情春色网| 51久久精品夜色国产麻豆| 国产91色在线免费| 奇米成人av国产一区二区三区| 色综合天天综合网国产成人网| 日韩中文字幕在线| 欧美一区二区三区精品电影| 精品av在线播放| 亚洲老头老太hd| 久久国产精品久久国产精品| 欧美成人免费在线视频| 亚洲第一精品夜夜躁人人爽| www.久久草.com| 在线亚洲欧美视频| 日韩成人小视频| 日韩精品亚洲元码| y97精品国产97久久久久久| 97视频人免费观看| 精品久久久久久久久中文字幕| 国产日韩综合一区二区性色av| 久久97久久97精品免视看| 草民午夜欧美限制a级福利片| 国产日本欧美一区| 国产精品私拍pans大尺度在线| 伊人久久大香线蕉av一区二区| 欧美性色视频在线| 国产啪精品视频网站| 欧美激情视频一区二区| 欧美精品久久久久a| 日韩欧美a级成人黄色| 亚洲free性xxxx护士hd| 国产一区二区色| 欧美放荡办公室videos4k| 亚洲精品第一页| 欧美激情亚洲自拍| 狠狠色狠狠色综合日日五| 日韩高清电影免费观看完整版| 国产精品a久久久久久| 亚洲国产天堂久久国产91| 欧美精品久久一区二区| 国内精品一区二区三区四区| 亚洲国产美女久久久久| 精品一区二区三区电影| 国产99视频精品免视看7| 国产精品青青在线观看爽香蕉| 成人黄色在线免费| 青青草原成人在线视频| 日韩中文在线中文网在线观看| 久久久久久久爱| 欧美成年人在线观看| 国产精品天天狠天天看| 欧美成人在线免费| 黄色91在线观看| 欧美性猛交xxxx| 日本欧美国产在线| 久久中文字幕一区| 亚洲综合日韩中文字幕v在线| 国产精品一区=区| 国产精品入口尤物| 国产免费一区二区三区在线能观看| 日韩中文字幕免费视频| 精品欧美国产一区二区三区| 久99久在线视频| 久久免费国产视频| 久久久久久国产| 精品亚洲国产视频| 国产高清视频一区三区| 韩国美女主播一区| 成人欧美一区二区三区在线| 91精品久久久久久久久久| 久久影院免费观看| 亚洲国产精品久久久久秋霞蜜臀| 91精品视频一区| 欧美激情视频在线免费观看 欧美视频免费一| 2019亚洲男人天堂| 91午夜在线播放| 日韩精品欧美激情| 亚洲视频在线观看网站| 最近中文字幕mv在线一区二区三区四区| 久久精品在线播放| 欧美在线视频观看| 久久伊人91精品综合网站| 亚洲国产精品99| 欧美在线一级视频| 九九久久精品一区| 亚洲综合中文字幕68页| 成人女保姆的销魂服务| 亚洲精美色品网站| 日本一区二区在线播放| 欧美视频在线免费| 欧美插天视频在线播放| 欧美激情国产精品| 欧美精品videossex性护士| 亚洲影院色在线观看免费| 国产精品高清在线观看| 日韩**中文字幕毛片| 日韩精品视频在线免费观看| 亚洲视频综合网| 久久精品男人天堂| 国产一区二区三区在线| 亚洲va久久久噜噜噜久久天堂| 亚洲国产精品人久久电影| 日韩电影免费观看在线观看| 欧美有码在线观看视频| xxxxx成人.com| 亚洲精品影视在线观看| 亚洲精品电影久久久| 成人欧美一区二区三区在线湿哒哒| 91九色单男在线观看| 欧美精品videosex性欧美| 欧美在线视频免费观看| 国产视频999| 亚洲理论片在线观看| 亚洲最大av网| 色偷偷噜噜噜亚洲男人的天堂| 中文字幕精品视频| 45www国产精品网站| 中文字幕亚洲欧美在线| 91久久精品日日躁夜夜躁国产| 国产成人精品免高潮在线观看| 久久精品国产视频| 一区二区三区无码高清视频| 国产欧美日韩中文字幕在线| 久久久久国产精品www| 国产精品久久网| 96sao精品视频在线观看| 久久久久久久久久久免费精品|