systemd
로 서비스/대몬 설정을 다룬다./etc/systemd/system
/run/systemd/system
/usr/local/lib/systemd/system
/usr/lib/systemd/system
# 지금 시작 systemctl start unit # 종료 systemctl stop unit # 재시작 systemctl restart unit # booting 시 시작하게 설정 systemctl enable unit # booting 시 시작하게 하면서, 지금 당장도 실행하게 systemctl enable --now unit
NAME=value
형태만 된다./etc/environment.d/*.conf
, ~/.config/environment.d/*.conf
파일에 환경변수를 NAME=VALUE
형태로 지정한다.# 예시 /etc/environment.d/60-foo.conf: FOO_DEBUG=force-software-gl,log-verbose PATH=/opt/foo/bin:$PATH LD_LIBRARY_PATH=/opt/foo/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} XDG_DATA_DIRS=/opt/foo/share:${XDG_DATA_DIRS:-/usr/local/share/:/usr/share/}
sudo apt install systemd-bootchart systemd-analyze systemd-analyze blame
init=/lib/systemd/systemd-bootchart
넣고 부팅하면 /run/log/bootchart-날짜-번호.svg
파일이 생성되고 이 이미지를 보고 부팅 성능 병목 지점을 찾을 수 있다.SysVInit
이 사용하던 /etc/init.d/*
의 서비스를 systemd 명령으로 사용가능하다./etc/init.d/*
의 서비스를 읽어서 동적으로 systemd unit 으로 바꿔주기 때문이다. (/usr/lib/systemd/system-generators/systemd-sysv-generator
)/run/systemd/generator.late
에 *.service
로 동적으로 생성된다.init.d
를 자동 인식하는게 아니라, systemd unit 이라고 인식하게 되는 것이다.init.d
의 서비스 파일에는 주석으로 LSB Headers라는 값이 들어있어서 systemd 로 변환하는 정보로 사용한다.