/run/media/*의 ACL 설정을 변경하지 않고 유지하려면 어떻게 해야 합니까?

/run/media/*의 ACL 설정을 변경하지 않고 유지하려면 어떻게 해야 합니까?

Fedora 25 워크스테이션 호스트에서 게스트로 실행되는 다양한 가상 머신이 있습니다. 가상 디스크(및 기타 모든 개인 데이터)를 두 번째 내부 디스크의 다른 별도 파티션에 저장합니다. virt-manageruser 로 가상 머신을 실행하면 qemu디스크를 부팅하기 위해 다음을 실행해야 합니다.

sudo setfacl -R -m u:qemu:rwx /run/media/cl

이를 통해 qemu사용자는 이러한 가상 디스크를 사용하여 가상 머신을 부팅할 수 있습니다. 하지만 호스트 시스템을 재부팅하면 ACL 설정이 손실되어 명령을 다시 실행해야 합니다. Ubuntu 시스템을 호스트로 사용하는 경우 명령은 한 번만 실행하면 되며 이후 재부팅 시에도 권한 변경 사항이 유지됩니다.

Ubuntu처럼 재부팅 시 Red Hat 기반 시스템이 수정된 ACL 설정을 기억하도록 하려면 어떻게 해야 합니까?

답변1

해킹이지만 systemd시작 시 실행되도록 빠른 서비스를 작성할 수 있습니다 /etc/systemd/system/set-qemu-acl.service.

[Unit]
 Description=QEMU ACL Hack
 Requires=local-fs.target
 After=local-fs.target

[Service]
 ExecStart=/usr/bin/setfacl -R -m u:qemu:rwx /run/media/cl

[Install]
 WantedBy=multi-user.target

그런 다음 활성화하면 됩니다.

sudo systemctl enable set-qemu-acl.service

시스템 테이블에 행을 추가할 수도 있습니다 cron.

* * * * * root /usr/bin/getfacl /run/media/cl | grep 'user:qemu:rwx' || /usr/bin/setfacl -R -m u:qemu:rwx /run/media/cl

또는 수동으로 설치하는 경우 래퍼 스크립트를 사용하여 설치할 수도 있습니다 /usr/local/bin/mount-acl.

#!/bin/sh
mount $1 $2
setfacl -R -m u:qemu:rwx $2

그러면 sudo mount-acl /dev/partition /run/media/wherever당신이 가고 싶은 곳으로 데려갈 수 있겠죠?

관련 정보