คำถามติดแท็ก launchd

ระบบสำหรับการเริ่มหยุดและจัดการกระบวนการอัตโนมัติ

2
อะไรคือจุดประสงค์ของคีย์ TimeOut ในโปรแกรมเรียกใช้
อะไรคือวัตถุประสงค์ของคีย์ 'TimeOut' ในการเริ่มใช้งาน ฉันคิดว่าโปรแกรมที่ระบุผ่านพารามิเตอร์แรกของ ProgramArguments จะถูกเรียกใช้งานหลังจากรอวินาทีที่ระบุเป็นค่าของ 'TimeOut' แต่นี่ไม่ได้เกิดขึ้น ฉันใช้ Mac OS X เวอร์ชั่น 10.8.2 Plist ที่ฉันใช้คือ: <?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>script.test2</string> <key>ProgramArguments</key> <array> <string>/bin/sh</string> <string>/var/scripts/test2.sh</string> </array> <key>RunAtLoad</key> <true/> <key>StandardOutPath</key> <string>/tmp/test2_script.out</string> <key>StandardErrorPath</key> <string>/tmp/test2_script.err</string> <key>TimeOut</key> <integer>600</integer> </dict> </plist> สิ่งที่ฉันอาจจะทำผิดที่นี่?

1
Apache จะไม่เริ่มการบู๊ตใหม่
ฉันมีปัญหาที่ Apache จะไม่เริ่มการรีสตาร์ท ฉันได้ลองคำสั่งเช่น sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist เพื่อให้ Apache เริ่มทำงาน แต่วางสายและฉันไม่สามารถเข้าถึงไซต์ได้ ฉันได้รับข้อความ (48)address already in use ah00072 Unable to open logs. ซึ่งบอกฉันว่าพอร์ต 80 ใช้งานอยู่ เมื่อฉันดูกระบวนการที่ใช้งานอยู่กำลังฟังพอร์ต 80 ฉันพบว่ามันเป็น apache (httpd) เป็นกระบวนการเดียวที่ทำงานบน 80 ดังนั้นฉันจึงเรียกใช้ sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist เพื่อลบ apache จากการ 'เปิดตัว' โดยอัตโนมัติเมื่อเริ่มต้นและฉันสามารถทำงานได้apachectl startโดยไม่มีปัญหา Mac ทำงาน 10.12.5 Sierra

0
ปิดการใช้งาน daemon ตาม Launchd การบอกเลิกอย่างฉับพลันเมื่อปิดเครื่อง
ฉันใช้ดีมอนของตัวเองภายใต้ macOS Sierra และ High-Sierra และมีพฤติกรรมที่ไม่คาดคิดเมื่อปิดตัวลง ตามคู่มือของวงจรชีวิต daemonมันบอกว่า ... หากระบบกำลังปิดหรือรีสตาร์ทระบบจะส่งสัญญาณ SIGTERM ไปยัง daemons ทั้งหมดตามด้วยสัญญาณ SIGKILL สองสามวินาทีต่อมา อย่างไรก็ตามในกรณีของฉันฉันเห็นว่า daemon ของฉันรับ SIGKILL จากเท่านั้นlaunchd(ฟังก์ชันตัวจัดการโทรกลับสัญญาณของฉันสำหรับ SIGTERM ไม่ได้ถูกเรียก) ฉันได้ตรวจสอบแล้วว่าฉันไม่อนุญาตให้มีการยกเลิกอย่างกะทันหันโดยการตั้งค่าฟิลด์ต่อไปนี้เป็นแบบ: <key>NSSupportsSuddenTermination</key> <false/> <key>EnableTransactions</key> <false/> ความคิดใดที่ฉันหายไปที่นี่

1
ปิดการแชร์หน้าจอผ่านบรรทัดคำสั่งใน Mountain Lion
ฉันต้องการที่จะเปิดใช้งานและปิดการใช้งานการแชร์หน้าจอจากบรรทัดคำสั่งมากกว่าผ่านการตั้งค่าระบบ นี่คือวันที่ 10.8.3 หากต้องการเปิดใช้งานการแชร์หน้าจอฉันพบว่าฉันต้องเปลี่ยนค่าพจนานุกรมในรายการต่อไปนี้เท่านั้น: /var/db/launchd.db/com.apple.launchd/overrides.plist เพื่อความแม่นยำในการเปิดใช้งานการแชร์หน้าจอฉันทำดังต่อไปนี้: sudo defaults write /var/db/launchd.db/com.apple.launchd/overrides.plist com.apple.screensharing -dict Disabled -bool false และการเปลี่ยนแปลงนั้น: sudo defaults read /var/db/launchd.db/com.apple.launchd/overrides.plist com.apple.screensharing { Disabled = 1; } ไปที่: sudo defaults read /var/db/launchd.db/com.apple.launchd/overrides.plist com.apple.screensharing { Disabled = 0; } ละเอียด. ฉันเห็นจากเว็บไซต์นี้ที่ฉันต้องทำแล้ว (ไม่แน่ใจว่าทำไม): sudo launchctl load /System/Library/LaunchDaemons/com.apple.screensharing.plist ตอนนี้ถ้าฉันต้องการปิดการแชร์หน้าจอฉันลองย้อนกลับ: sudo defaults write /var/db/launchd.db/com.apple.launchd/overrides.plist com.apple.screensharing …

1
ไม่สามารถฆ่ากระบวนการ Bitdefender หลังจากถอนการติดตั้งไม่พบ launch daemons
ฉันเพิ่งติดตั้ง Bitdefender Antivirus ฉันต้องการลบมันหลังจากระยะเวลาทดลองใช้งาน หลังจากถอนการติดตั้งผ่าน CCleaner การย้ายทุกสิ่งจาก Librar ฉันพบว่ายังมีเอเจนต์อยู่และทำงานอยู่ ฉันไม่สามารถฆ่ากระบวนการนั้นแม้เป็นราก: bdagent - pid 65 sudo su - kill -9 65 -sh: kill: (65) - Operation not permitted การฆ่ามันผ่านการตรวจสอบกิจกรรมก็ไม่ได้ผลเช่นกัน ผลผลิตของ ps คือ: root# ps -ef | grep defender 0 65 1 0 11:08PM ?? 6:49.98 /Library/Bitdefender/Central/Agent/bdagentd 0 211 1 0 11:08PM …

1
การตั้งค่าหน้าจออัตโนมัติใน command line / shell script
ดังนั้นฉันจึงกำหนดค่าแม่แบบผู้ใช้เริ่มต้น LaunchAgents เพื่อกำหนดค่าสกรีนเซฟเวอร์เริ่มต้นสำหรับแฟนอาร์ตยอดนิยมของ บริษัท ของฉัน (มันได้รับการตอบรับอย่างดีจากทีมจริงๆ) พวกเขาได้รับการออกแบบเป็นรูปภาพที่รันครั้งแรกเมื่อพวกเขาลงชื่อเข้าใช้ผู้ใช้ Active-Local Active Directory อย่างไรก็ตามตอนนี้ฉันได้รับผลลัพธ์ที่ไม่สอดคล้องกันมากนั่นคือมันไม่ทำงาน .plist เรียกใช้ Shell Script ที่อยู่ในโฟลเดอร์ / sbin / สิ่งที่แปลกคือมันใช้งานได้ในผู้ใช้ที่มีอยู่เป็นส่วนใหญ่ โปรแกรมรักษาหน้าจอมีไว้เพื่อใช้ "Flipup" กับโฟลเดอร์เฉพาะของรูปภาพ, สุ่มรูปภาพและตั้งเวลาเริ่ม 5 นาที ตัวอย่างเช่นฉันตั้งใจตั้งค่าหน้าจอ "ผู้ใช้การกำหนดค่าเริ่มต้น" เป็น "Holiday Mobile" เป็นครั้งแรกให้ตั้งค่าการเลือกรูปภาพเป็น "Cosmos" (ค่าเริ่มต้นหนึ่ง) ด้วยเวลาเริ่มต้น 20 นาทีและยกเลิกการเลือก จากนั้นฉันเปลี่ยนเป็น "Arabesque" เมื่อฉันออกจากระบบและกลับเข้าสู่ระบบเพื่อเตะในสคริปต์ผลลัพธ์คือฉันได้รับ "Holiday Mobile" อย่างไรก็ตามเมื่อฉันไปที่ "การตั้งค่าเดสก์ท็อปและสกรีนเซฟเวอร์" "Arabesque" ถูกเลือกจริง ๆ แม้ว่าตัวอย่าง "Holiday Mobile" …

2
ทำการเปลี่ยนแปลง sysctl เมื่อเริ่มต้น
ฉันต้องการเปลี่ยนการตั้งค่าเริ่มต้น smb เมื่อเริ่มต้นเพื่อลบการหมดเวลา ฉันมีสคริปต์ดังต่อไปนี้ #!/bin/sh sysctl net.smb.fs.kern_deadtimer=0 sysctl net.smb.fs.kern_hard_deadtimer=0 sysctl net.smb.fs.kern_soft_deadtimer=0 การรันสคริปต์นี้ด้วยการsudoตั้งค่าตัวเลือกเคอร์เนลที่เกี่ยวข้องอย่างถูกต้อง ดังนั้นฉันรู้ว่าคำสั่งเหล่านี้ถูกต้อง ฉันสร้าง LaunchDaemon ต่อไปนี้/Library/LaunchDaemons/เพื่อลองและเรียกใช้สคริปต์นี้เมื่อเริ่มต้น <?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>com.jo.sysctl</string> <key>Disabled</key> <false/> <key>UserName</key> <string>admin</string> <key>GroupName</key> <string>staff</string> <key>ProgramArguments</key> <array> <string>/Users/admin/scripts/sysctl.sh</string> </array> <key>KeepAlive</key> <false/> <key>RunAtLoad</key> <true/> </dict> </plist> ฉันตรวจสอบรายละเอียดplutilแล้วและตรวจสอบตกลง ฉันได้ตั้งสิทธิ์บนเชลล์สคริปต์ไป0755และการตั้งค่าความเป็นเจ้าของของไฟล์ plist …

1
ข้อผิดพลาด Plj Mojave: เส้นทางมีการเป็นเจ้าของ / สิทธิ์ที่ไม่ถูกต้อง
ฉันกำลังพยายามติดตั้งไฟล์แชร์ตอนบูต ฉันคัดลอกเพลทจากมินิ 2012 (ซึ่งวิ่งได้ดี) ไปยังมินิ 2018 ทั้งคู่วิ่งโมฮาวี ใน mini ใหม่ฉันได้รับข้อผิดพลาด: Path had bad ownership/permissions <?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>local.mount.video</string> <key>ProgramArguments</key> <array> <string>/sbin/mount_smbfs</string> <string>smb://jeff:mypass@bignas1/video</string> <string>/Volumes/home/jeff/bignas1/video</string> </array> <key>RunAtLoad</key> <true/> </dict> </plist> ผู้วางแผนเป็นเจ้าของ (501) ที่มีสิทธิ์ 0600 เหมือนกับใน 2012 mini ไดเร็กทอรีที่แบ่งใช้ถูกเมานต์เป็นเจ้าของ 501 เช่นกันพร้อมสิทธิ์ 0755 …

1
AppleScript ที่เริ่มต้นและเวลาที่กำหนด
ฉันกำลังพยายามเริ่มต้น AppleScript และ AppleScript ซึ่งทำงานในเวลาที่กำหนด (ฉันเกลียดวิธีการอัตโนมัติ / ปฏิทิน) on idle set currentTime to current date if the weekday of currentTime is (need to do for Tuesday to Saturday) then do shell script "kextunload /System/Library/Extensions/AppleHDA.kext " password "..." with administrator privileges end if --only check once a day return 24 * …

1
ใช้ launchd เพื่อเริ่ม VMware ของ VM บนการเชื่อมต่อ VNC
ฉันมี VM (VMware Fusion) ที่เปิดใช้งานการเข้าถึง VNC ฉันต้องการที่จะสามารถเข้าถึงได้จากเครือข่าย น่าเสียดายที่ VMware ต้องการให้ VM ทำงานเพื่อให้สามารถยอมรับการเชื่อมต่อ VNC และ vmware-vmx เป็นกระบวนการที่รับฟังบนพอร์ต VNC ความคิดของฉันคือการมีงาน launchd ที่จะเรียกใช้ VM ที่ต้องการเมื่อมีบางสิ่งมาถึงพอร์ต ฉันได้งานต่อไปนี้แล้ว: <?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>com.kulakov.vm.development</string> <key>ProgramArguments</key> <array> <string>/usr/local/bin/vmw</string> <string> </string> </array> <key>StandardOutPath</key> <string>/Users/kentzo/Desktop/com.kulakov.vm.development.log</string> <key>StandardErrorPath</key> <string>/Users/kentzo/Desktop/com.kulakov.vm.development.log</string> <key>Sockets</key> <dict> …

1
OS X: กำหนดการ Launchctl เพื่อออกจากแอปพลิเคชันในเวลาที่กำหนด
ฉันสร้างสิ่งนี้แล้ว launchctl .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>caffeine-timecontrol.job</string> <key>ProgramArguments</key> <array> <string>/Applications/Caffeine.app/Contents/MacOS/Caffeine</string> </array> <key>StartCalendarInterval</key> <dict> <key>Minute</key><integer>40</integer> <key>Hour</key><integer>7</integer> <key>WeekDay</key><integer>1234567</integer> </dict> </dict> </plist> ข้างต้นควรจะปลุกแอพ Caffeine ที่ 7:40 AM Every day. อย่างไรก็ตามฉันสามารถรวมประโยคเพื่อให้แอปพลิเคชั่นหยุดการทำงานที่ 00:00 AM Every day ถ้าคอมพิวเตอร์เป็น ตื่นตัว …

1
วิธีเรียกใช้ httpd บน macOS โดยไม่ใช้ Apache [ปิด]
ฉันกำลังพยายามสร้างแอปพลิเคชันBCHS ฉันมีเซิร์ฟเวอร์ระยะไกลที่ใช้ OpenBSD แต่เวลาแฝงเครือข่ายกำลังฆ่าฉันดังนั้นฉันตัดสินใจที่จะพัฒนาบน MacBook Air ของฉันและปรับใช้กับเซิร์ฟเวอร์ OpenBSD ในภายหลัง ฉันยังไม่ได้ติดตั้ง Apache (และไม่คิดว่าฉันต้องการ) แต่httpdดูเหมือนจะเป็นยูทิลิตี้ของ macOS ในตัว ~ ❯ httpd -v Server version: Apache/2.4.28 (Unix) Server built: Oct 9 2017 19:54:20 ฉันพยายามเริ่มต้นhttpdด้วยวิธีการต่อไปนี้ แต่ไม่ได้ผล: ❯ launchctl enable httpd Unrecognized target specifier. <service-target> takes a form of <domain-target>/<service-id>. Please refer to `man launchctl` for …

2
x3d คืออะไร ต้องการความช่วยเหลือในการถอดรหัสบันทึกข้อผิดพลาดของคอนโซล
สองสามวันตอนนี้เครื่อง Macbook Air ของฉันดูเหมือนจะค้างอยู่หนึ่งวินาทีทุก ๆ ห้าวินาทีหรือมากกว่านั้น มันเห็นได้ชัดในเบราว์เซอร์ของฉันเท่านั้น Chrome, FF และ Safari ทุกคนมีปัญหาเดียวกันกับที่เบราว์เซอร์เพิ่งล็อคเป็นวินาทีก่อนดำเนินการต่อ ฉันดูในคอนโซลและเป็นรายงานความผิดพลาดเดียวกันที่สร้างขึ้นทุกห้าถึงสิบวินาที จุดเริ่มต้นของบันทึกกล่าวถึงกระบวนการ x3d: Process: x3d [3646] Path: /private/etc/.x3/x3d Identifier: x3d Version: ??? Code Type: X86-64 (Native) Parent Process: launchd [1] Responsible: x3d [3646] User ID: 0 ทำการค้นหาบางอย่าง แต่เกิดมือเปล่าขึ้นมา ฉันได้วางบันทึกการทำงานเต็มแล้วที่นี่: http://pastebin.com/G9cTLFLR ดูเหมือนว่าปัญหาจะหายไปหากคอมพิวเตอร์ของฉันออฟไลน์ ไม่มีใครมีความคิดใด ๆ สิ่งนี้มาจากไหน? ขอบคุณล่วงหน้า!

1
บริการลูกค้า nrpe (icinga) ไม่โหลด / เรียกใช้
ฉันเพิ่งเขียน.plistไฟล์ต่อไปนี้ซึ่งฉันใส่ลงไป/System/Library/LaunchDaemonsอย่างโชคไม่ดีดูเหมือนจะไม่ทำงานและฉันก็ไม่รู้ว่าเกิดอะไรขึ้น: <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/ PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>UserName</key> <string>admin</string> <key>GroupName</key> <string>staff</string> <key>ProgramArguments</key> <array> <string>/usr/bin/nrpe</string> <string>-c</string> <string>/etc/nrpe.cfg</string> <string>-i</string> </array> <key>Sockets</key> <dict> <key>Listeners</key> <dict> <key>SockServiceName</key> <string>5666</string> <key>SockType</key> <string>stream</string> <key>SockFamily</key> <string>IPv4</string> </dict> </dict> <key>inetdCompatibility</key> <dict> <key>Wait</key> <false/> </dict> <key>Label</key> <string>org.hasfailed.nrpe</string> </dict> </plist> ฉันใช้โปรแกรมติดตั้งอ้างอิงที่นี่: http://tbartelmess.github.io/NRPE-OSX/ เมื่อโทรมา launchctl load org.hasfailed.nrpe.plist …

0
ตัวแทนการเปิดตัวของฉันไม่ lauching ที่โหลดระบบ
ฉันพยายามสร้าง Launch Agent แบบง่าย ๆ ที่เรียกใช้แอปทดสอบที่โหลดระบบ ฉันติดตามเอกสารอย่างเป็นทางการ แต่ไม่สามารถใช้งานได้ ไฟล์ plist ของฉันอยู่ที่ /Library/LaunchAgents/Test.launcher.mac.service.plist a ls -l ส่งคืน: -rwx------@ 1 root wheel 578 Jan 21 08:46 /Library/LaunchAgents/Test.launcher.mac.service.plist. เนื้อหาของฉันคือ: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/P$ <plist version="1.0"> <dict> <key>Label</key> <string>Test.launcher.mac.service</string> <key>KeepAlive</key> <true/> <key>StandardOutPath</key> <string>/var/opt/AuraService.log</string> <key>StandardErrorPath</key> <string>/var/opt/AuraServiceError.log</string> <key>Program</key> <string>/Applications/TextEdit.app/Contents/MacOS/TextEdit</string> <key>Debug</key> …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.