방금 Fedora 15로 업그레이드했습니다. Bacula 몇 년 동안 백업을 위해, 그리고 그것은 잘 작동합니다. 하지만 지금은 문제가 생겼습니다. 아마도 Bacula가 루트가 아닌 사용자 bacula로 실행 중이기 때문일 것입니다.
내 백업 미디어는 두 개의 USB 디스크 드라이브입니다 (필자는 오프 사이트로 유지하고 한 달에 한 번 정도 스왑합니다). 그러나 페도라는 700이라는 모드로 내 UID가 소유 한 마운트 포인트로 USB 드라이브를 자동 마운트합니다. 아마도 로그인했기 때문에 이것이 대부분의 USB 스토리지에 적합 할 것입니다. 그러나이 경우에는 Bacula가 액세스 할 수 없으므로 아닙니다.
이벤트의 순서를 올바로 이해하면 udev가 / dev / sdb 및 / dev / sdb1 장치 노드를 만들고 이들이 udisk (Gnome 구성 요소)에 의해 자동 마운트됩니다. 마운트 매개 변수가 무엇인지 결정하는 것이 udisk입니다.
내가 원하는 것은 “BACKUP *”이라는 레이블이 붙은 디스크가 bacula 소유의 마운트 포인트로 마운트되도록하는 것입니다 : bacula, mode 700. /etc/udev/rules.d에 사용자 정의 udev 룰 파일이 필요하다고 생각합니다. 나는 udev (7) 페이지와 ” udev 규칙 작성하기 “여기까지는”10-backup-disk.rules “라는 파일에서 지금까지 살펴본 내용이 있습니다 .Udev가 구문 분석하고 있지만 작동하지 않습니다. 디스크가 계속 소유되고 있습니다. 누군가 내가 잘못하고있는 것을 말해 줄 수 있습니까?
감사.
KERNEL!="sd[a-z][0-9]", GOTO="backup-disk_auto_mount_end"
ENV{ID_FS_LABEL}!="BACKUP*", GOTO="backup-disk_auto_mount_end"
# Import FS infos
IMPORT{program}="/sbin/blkid -o udev -p %N"
# Get disk label
ENV{dir_name}="%E{ID_FS_LABEL}"
# Global mount options
ACTION=="add", ENV{mount_options}="relatime,rw"
# Filesystem-specific mount options
ACTION=="add", ENV{mount_options}="$env{mount_options}"
# Mount the device
ACTION=="add", RUN+="/bin/mkdir -p /media/%E{dir_name}", RUN+="/bin/mount -o $env{mount_options} /dev/%k /media/%E{dir_name}"
# Clean up after removal
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l /media/%E{dir_name}", RUN+="/bin/rmdir /media/%E{dir_name}"
# Exit
LABEL="backup-disk_auto_mount_end"
답변
나는 아무것도 몰라. udev ,하지만 Fedora 15를 사용하고 있기 때문에 다음과 같은 작업을 수행 할 수 있습니다. 시스템 훨씬 더 간단합니다.
BACKUP_ONE이라는 USB 드라이브가 있다고 가정하고 다음 파일을 만듭니다.
/etc/systemd/system/mnt-backup1.mount
:
[Mount]
What=/dev/disk/by-label/BACKUP_ONE
Where=/mnt/backup1
Options=uid=bacula,gid=bacula,mode=0700
파일 이름은에서 끝나야합니다. .mount
마운트 지점과 일치하는 이름을가집니다 ( Where=
단위 파일의 라인), 슬래시 ( /
) 대시로 변경됨 ( -
). 자세한 내용은 다음을 참조하십시오. man systemd.unit
.
또한 Bacula가 실제로 백업을 실행할 때까지 (또는 드라이브에 액세스하려고 시도 할 때까지) 드라이브를 마운트하지 못하게 할 수 있습니다. /etc/systemd/system/mnt-backup1.automount
:
[Automount]
Where=/mnt/backup1
[Install]
WantedBy=remote-fs.target
다른 드라이브에서이 작업을 반복 한 다음 실행하십시오. systemctl enable mnt-backup1.automount
과 systemctl daemon-reload
알려 시스템 변화의 (나는 그들이 지금 혼란에 빠지지 않도록이 시간에 플러그가 뽑혔는지 확인해야한다.)
udisks 이제 너를 연기 할거야. 시스템 구성하고 정의한 옵션으로이를 마운트하십시오.