본문 바로가기

서비스

(3)
systemd 사용자 유닛 만들기 systemd에서는 사용자만의 유닛을 만들고 로그인 시 자동으로 실행하도록 설정할 수 있습니다. 이것으로 개별 사용자의 입맛대로 시작 프로그램을 등록할 수 있고, .timer나 resource control 등의 systemd 기능들을 사용할 수 있습니다. 먼저 사용자의 systemd 유닛 파일이 존재하는 디렉토리는 계정의 홈 디렉토리 아래의 .config/systemd/user/ 입니다. 사용자가 어떤 유닛을 만들어서 사용하고 싶다면 이 디렉토리에 저장되어 있어야 합니다. 예시로 chromium을 관리하는 서비스를 만들려면 아래와 같이 하면 됩니다. [Unit] Description=Chromium service [Service] ExecStart=/usr/bin/chromium 이 내용을 ~/.con..
systemd timer로 cron 대체하기 리눅스 init으로 많이 사용되는 systemd의 기능 중에 timer가 있습니다. 이 timer는 이름 그대로 일정 시간이 지난 이후에 작업을 수행하도록 하는 기능입니다. 예전의 리눅스에서는 cron이란 프로그램으로 crontab 설정파일을 통하여 일정 시간마다 프로그램을 실행시켰습니다만 가독성이 그리 좋지 못합니다.systemd에서는 가독성이 좋으면서 부가적인 옵션이 많으며 간단하게 설정이 가능하고, 리눅스가 실행되는 도중에는 절대 죽지 않기 때문에 사용자도 모르게 cron 서비스가 죽어버리는 사태도 막을 수 있습니다. 그러므로 만약 지금까지 cron을 사용하셨다면 systemd로 넘어오는게 시스템 자동화와 일률적인 관리 편의성을 위해서라도 바람직할거라 생각합니다. systemd는 모든 설정을 Uni..
systemd로 서비스 관리하기 systemd로 서비스를 관리하기 위해서는 먼저 systemctl이란 명령을 알아야합니다.systemctl은 systemd의 전반적인 설정에 필수적인 명령으로, 앞으로 systemd를 사용하기 위해서 가장 많이 사용할 명령입니다. 먼저 시스템 내부의 유닛들을 보기 위해서 list-units 라는 내부 명령이 있습니다. $ systemctl list-units 이렇게 정말 다양한 unit들이 존재합니다. list-units는 기본적으로 실행중인 유닛들을 표시합니다. 만약 모든 유닛들을 보고싶다면 --all 옵션을 사용하면 됩니다. $ systemctl --all list-units 여기서는 service 유닛들을 다룰 예정이라 이 유닛들만 보기 위해서는 -t 옵션을 사용하면 됩니다. $ systemctl ..