
안녕하세요 여러분,
저는 Arch Linux를 사용하여 Banana Pi를 작업 중이며 현재 다음을 수행하려고 합니다.
- 누군가 내 외부 저장소 시스템에 대해 암호화된 키 파일을 마운트한 후 해당 키 파일을 사용하고 외부 저장소를 마운트해야 합니다.
- systemd는 외부 저장소에서 작동하는 모든 서비스를 시작합니다.
- 종료 시 암호화된 볼륨을 마운트 해제하기 전에 모든 것이 중지됩니다.
몇 시간 후에 마침내 작동했고 더 작은 해결책이 있는지 궁금합니다.
/etc/systemd/시스템
luks.keys.경로
[Unit]
Description=luks-keys found in /etc/luks-keys
[Path]
DirectoryNotEmpty=/etc/luks-keys/
[Install]
WantedBy=multi-user.target
luks.keys.service
[Unit]
Description=luks-keys availible
Conflicts=umount.target
Before=umount.target
[Service]
Type=simple
ExecStart=/usr/local/bin/storage
RemainAfterExit=yes
스토리지.대상
[Unit]
Description=Storage
Requires=basic.target
After=multi-user.target
Requisite=luks.keys.service
AllowIsolate=yes
./storage.target.wants/minidlna.service
[Unit]
Description=minidlna server
After=network.target
Requisite=luks.keys.service
[Service]
Type=forking
ExecStart=/usr/bin/minidlnad -P /run/minidlna/minidlna.pid
PIDFile=/run/minidlna/minidlna.pid
[Install]
WantedBy=storage.target
/usr/로컬/빈/스토리지
#!/bin/bash
systemclt isolate storage.target
cryptsetup --key-file /etc/luks-keys/storage1 luksOpen /dev/sda1 storage1
mount /dev/mapper/storage1 /mnt/storage1
파이 부츠:
- systemd는 multi-user.target을 시작합니다.
- luks.keys.path를 활성화합니다. 마녀는 /etc/luks-keys에서 파일을 기다립니다.
- 파일을 찾았습니다
- luks.keys.service가 활성화되고 Storage.target이 시작됩니다.
- 다른 서비스가 시작되는 중이에요
마운트 해제 전:
- systemctl이 luks.keys.service를 중지하려고 합니다.
- Storage.target 및 기타 서비스는 luks.keys.service가 필요하기 때문에 중지됩니다.
- luks.keys.service가 마침내 중지되고 umount.target으로 계속 종료됩니다.
더 적은 노력으로 이 작업을 수행할 수 없는 경우 질문에 대한 답변을 제시해 드리겠습니다.
서비스가 작동하는 나중에 마운트된 암호화 볼륨에 대해 systemd를 구성하는 방법