systemd를 사용하여 ArchLinux를 설치했습니다. 암호화된 데이터 장치를 마운트한 후 바로 후크를 실행하여 그 위에 플래시캐시를 배치하려고 합니다. 작동하는 스크립트가 있지만 올바른 순서로 로드할 수 없습니다. 이것이 내가 한 일입니다:
문서:/usr/lib/systemd/system/flashcache.service
[Unit]
Description=FlashCache
[email protected]
[Service]
Type=oneshot
RemainAfterExit=no
ExecStart=/usr/local/bin/flashcache_startup_script
[Install]
WantedBy=dev-mapper-data_cached.device
파일을 생성한 후 실행해봤습니다 systemctl enable flashcache.service
.
그러나 부팅 시 시작되지 않고 dev-mapper-data_cached 시간이 초과된 후 루트 셸에 들어가서 flashcache_startup_script
수동으로 실행할 수 있습니다.
출력을 확인한 journalctl -b
결과 시간 초과가 발생할 때까지 FlashCache 서비스가 로드되지 않는 것으로 확인되었습니다.
내가 시도했지만 성공하지 못한 또 다른 옵션은Requires=dev-mapper-vg1-data.device
내가 뭘 잘못했나요?
답변1
나는 주로 다음을 사용하여 다양한 접근 방식을 시도했습니다.다음 리소스. 왜 작동하는지 잘 모르겠지만 다음 단위 파일이 문제를 해결했습니다.
[Unit]
Description=FlashCache
BindsTo=dev-vg1-data.device
After=dev-vg1-data.device
DefaultDependencies=no
[Service]
Type=oneshot
RemainAfterExit=no
ExecStart=/usr/local/bin/flashcache_startup_script
[Install]
WantedBy=sysinit.target