OS X에서 부팅 할 때 스크립트를 실행하는 가장 쉬운 방법은 무엇입니까?


12

OS X에서 부팅시 스크립트 (bash / zsh / ruby ​​/ ...)를 실행하고 싶습니다. xml / plist 파일을 엉망으로 만들지 않고 메타 AppleScript를 만들 필요가없는 가장 간단한 방법은 무엇입니까? .

답변:


7

MacOS X은 재부팅시 실행할 특별한 메타 태그가있는 Vixie cron을 사용합니다. 파일 형식 은 매뉴얼 페이지 를 참조하십시오 .

같은 :

@reboot /path/to/script.sh

crontab에서 작동합니다. 나는 이것이 발사 된 것보다 더 나은 해결책인지 확실하지 않다. 아마 cron보다 발사 된 메타 도구가 더 많을 것이다.


그것을 좋아합니다, 당신은 저를 잘못 증명했습니다 :-) 비록 cronOS X에서는 기본적으로 로깅에 그다지 좋지는 않습니다 (몇 일 전에 주제가있었습니다).
다니엘 벡

이것은 완벽 해요.
John Bachir

1
cron, at 등은 어느 정도 OS X에서 더 이상 사용되지 않습니다. 나는 다양한 문서에서 그에 대한 명시 적 진술을 찾을 수 없으며, 얼마나 적극적으로 더 이상 사용되지 않는지 알지 못하지만 시작된 것이 일반적으로 선호되는 것처럼 보입니다. 소개 는 시작된 설명서 를 참조하십시오 .
Norman Grey

plist는 나를 위해 작동하지 않습니다-이것은 매력처럼 작동합니다-감사합니다! :-D
BG Bruno 1

OS X에서 구문이 동일한 지 확실하지 않았습니다.
NobleUplift

6

의견이 바뀔 경우 :

<?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>com.superuser.245713</string>
    <key>ProgramArguments</key>
    <array>
        <string>/path/to/script.sh</string>
    </array>
    <key>UserName</key>
    <string>someuser</string>
</dict>
</plist>

같은 매장 com.superuser.245713.plist에서 /Library/LaunchAgents/와 만드는 root:wheel소유자 / 그룹.


1
그것은에 넣어 틀림없이 더 나은 /Library/LaunchAgents보다는 /System/Library/LaunchDaemons이후 /SystemOS 특정 물건이며, 하나 개의 아래는 /Library타사 물건에 대한 더 많은 사용된다. 또한 LaunchDaemons" LaunchAgents사용자 또는 사용자 영역의 컨텍스트에서 실행 "인 루트 (일반적으로 백그라운드 프로세스)로 실행되는 항목을 포함해야합니다 . 이러한 인용문의 출처는 출시 된 질문에 대해 상담하는 출시에 대한 훌륭한 기사입니다 .
더그 해리스

@DougHarris 제안 해 주셔서 감사합니다! 나는이 임시를 입력하고 있음을 인정해야합니다. 일반적으로 솔루션을 테스트하는 동안 내 컴퓨터를 다시 시작하지는 않았습니다.
Daniel Beck

비록 Vixie cron 솔루션을 더 좋아하지만, 이것은 매우 좋습니다 :)
John Bachir

실제로는 / Library / LaunchDaemons에 있어야합니다. 에이전트는 사용자 세션 내에서만 실행됩니다. 즉, 누군가 로그인 할 때까지 실행되지 않거나보다 정확하게 실행할 수 있습니다. 누군가 로그인 할 때마다 다시 실행되며 항상 현재 로그인 한 사용자로 실행됩니다. 부팅시 데몬이 실행 (/ 실행 가능)되고 일반적으로 루트로 실행되는 동안 UserName 키를 사용하여 다른 사용자로 실행할 수 있습니다.
Gordon Davisson


2

컴퓨터가 부팅 될 때가 아니라 사용자가 로그인 할 때 스크립트가 루트로 실행되도록하려면 로그인 후크 도 있습니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.