포럼 내용이 있는 곳으로 건너뜀

사과나무 이야기 마당

Mac 사용자 정보 교류 마당 - AppleTree forums for Korean Mac users

로그인하지 않으셨습니다. 로그인 또는 가입해 주세요.

이곳은 Mac 관련 유용한 정보들을 모아 많은 분과 함께 공유하기 위해 운영되고 있습니다. 잠깐 들르시는 나그네라도 자유롭게 글을 올리시고 의견을 나누실 수 있습니다.

새 댓글 작성

새 댓글 작성

새 댓글을 작성합니다.

사용 가능: BBCode 이미지 그림 문자

양식을 전송하기 전에 (필수)라고 표시된 모든 항목을 입력해야만 합니다.

손님인 경우 필수로 요구되는 정보


필수 정보
글 설정 선택사항

글타래 내용 (최신 글 먼저)

3

앞에서도 이미 소개해 드렸던 Launchd Property List 파일의 생성/편집 도구인 Launchd Editor와 비슷한 기능을 가진 도구로 Lingon이 새로 배포되고 있답니다.

Lingon만의 장점은 Property List 파일들의 생성/편집 기능 뿐만이 아니라, 위의 그림에서처럼 Launchd에 등록되어(Loaded) 있는 작업들의 목록을 유형별로 쉽게 확인할 수 있으며, 또한 Mac OS X의 launchctl을 통해 작업들의 등록 및 해제를 간편하게 수행할 수도 있답니다.

http://appletree.or.kr/forum/files/lingon.png먹음직스러워 보이는 Lingon(스웨덴 산 lingonberry)의 아이콘을 보고 있으면 떠오르는 아이콘들이 있지요. roll

http://appletree.or.kr/forum/files/smultron.png http://appletree.or.kr/forum/files/hallon.png SmultronHallon의 아이콘들로 각각 스웨덴 어로 산딸기와 나무딸기를 뜻한답니다.
알고 보니, 모두 같은 농사꾼의 솜씨로군요. smile

2

launchd와는 관련이 없는 내용이지만, Tiger로 업그레이드를 했을 경우에 추가로 정리해 주어야 할 작업이라서 여기에 같이 덧붙입니다.

Tiger 이전에서는 사용자의 Console log가 /Library/Logs/Console/<사용자의_짧은_이름>/에 저장되었지만, Tiger의 Console log는 /Library/Logs/Console/501/ 디렉토리에 쓰여지게 되었답니다.(이곳의 501은 OS가 처음으로 생성한 계정을 위한 사용자 ID를 나타냅니다.)
그래서, Tiger로 업그레이드 설치를 하였을 경우, 쓸모가 없게 된 /Library/Logs/Console/<사용자의_짧은_이름>/ 디렉토리를 지워주면, 약간의 공간이라도 절약할 수 있답니다.
참고로, 터미널에서 다음과 같이 입력하면, consol.log 파일을 생성한 Mac OS 버전을 확인하실 수 있습니다:

head -1 /Library/Logs/Console/501/console.log

1

Tiger로 업그레이드 했을 경우, launchd를 쓰게 만들기

만약에, 깨끗한 설치가 설치가 아닌 10.4로 업그레이드 설치를 하였을 경우에는 모든 daemon들(예로, ftp, ssh 등과 같은)이 여전히 xinetd를 통해 실행되게 되는 데, 이것은 앞으로 더 이상 지원되지 않을 예정으로, Apple에서는 호환을 위해 계속 xinetd을 제공하고 있지만, 최적의 성능을 위한 대세는 새로운 launchd으로의 전환이라고 합니다.

이전에 /etc/xinetd.d 안에 기타 서비스들이 등록되어 있는 상태였다면, 업그레이드 시, launchd 대신에 xinetd가 사용되게 되므로, 강제로 launchd이 서비스들의 실행을 도맡게 하려면 다음과 같이 터미널에서 xinetd 관련 파일들을 따로 옮겨서 저장해 놓습니다.

sudo mkdir /etc/xinetd.d.bak
sudo mv /etc/xinetd.d* /etc/xinetd.d.bak/

그리고, 이전에 등록해 두었던 서비스들은 launchd의 새로운 plist 형태의 파일에 추가해서 옮기면 되고, 여기에 필요한 정보는 man launchd, launchctl, launchd.plist를 살펴보거나, Apple의 Introduction to System Startup Programming Topics 문서를 참고하시기 바랍니다. 새로 더해질 항목들은 /Library/LaunchDaemons에 붙게 되고, 시동 시에 자동 실행되거나 혹은 다음과 같이 직접 실행시킬 수 있습니다:

sudo launchctl load /Library/LaunchDaemons/new_service_name.plist

이런 과정 후에는, 시스템 환경설정에서 원하는 서비스들을 켜주고 다시 시동하면, 더 이상 xinetd이 시동 시에 간섭을 안하게 되고, 모든 서비스들의 실행은 새로운 launchd이 도맡게 됩니다. 이렇게 하면 시스템 시동시간을 단축시키는 효과도 볼 수 있다고 합니다.

따옴 - Mac OS X Hints

예전에는 주로 컴퓨터 시동시 실행되는 Apache, FTP, Telnet, Samba와 같은 각종 서비스들을 실행하고 정지시키는 일을 xinetd라는 놈이 도맡아 왔었습니다만, 시스템에 부하를 줄이고 손쉬운 관리를 위해 Apple에서는 이전의 못 미더운 도구를 갈아치우면서 Launchd(launch deamon)이라는 놈을 새로 짜맞추게 되었답니다.

이렇게 해서 사용 환경상 변경된 것은, 예전의 StarupItems 폴더에 위치했던 실행파일과 설정 관련 파일들이 Tiger에 와서는 필요가 없게 되었고, 대신 크게 두 개(LaunchDaemons, LaunchAgents)로 나뉘는 서비스의 사용 용도에 따라 다음의 다섯 곳에 설정 관련 Property List 파일들이 존재하게 되었습니다.

  • ~/Library/LaunchAgents

  • /Library/LaunchAgents

  • /Library/LaunchDaemons

  • /System/Library/LaunchAgents

  • /System/Library/LaunchDaemons

여기에 저장될 Property List 파일을 만드는 방법은 위에 소개된 Apple 문서 안에 자세하게 설명되어 있습니다만, 이미 시스템 차원에서 제공되어 있는 서비스들을 사용하는 사용자 입장에서는 이것은 신경쓰실 필요가 없습니다.

참고로, Launchd용 property list 파일의 생성은 Launchd Editor로도 손쉽게 할 수 있습니다.



Mac으로 운영됩니다