Unionfs-fuse 파일 시스템을 어떻게 자동 마운트합니까?

Unionfs-fuse 파일 시스템을 어떻게 자동 마운트합니까?

쉘 명령을 실행할 수 있습니다.

unionfs-fuse /changedata=RW:/immutedata=RO -o cow /data

이것은 내가 원하는 방식으로 정확하게 파일 시스템을 마운트합니다. 이제 필요할 때 다시 마운트할 수 있도록 자동 마운트에 통합해야 합니다.

/etc/auto.misc에서 내가 시도한 것:

/data -fstype=fuse,cow /changedata=RW:/immutedata=RO

ls /data를 수행할 때 automount --debug -f /etc/auto.master가 말하는 내용:

handle_packet: type = 5
handle_packet_missing_direct: token 19, name /data, request pid 6063
attempting to mount entry /data
lookup_mount: lookup(file): looking up /data
lookup_mount: lookup(file): /data -> -fstype=fuse,cow /changedata=RW:/immutedata=RO
parse_mount: parse(sun): expanded entry: -fstype=fuse,cow /changedata=RW:/immutedata=RO
parse_mount: parse(sun): gathered options: fstype=fuse,cow
parse_mount: parse(sun): dequote("/changedata=RW:/immutedata=RO") -> /changedata=RW:/immutedata=RO
parse_mapent: parse(sun): gathered options: fstype=fuse,cow
parse(sun): invalid location 
dev_ioctl_send_fail: token = 19
failed to mount /data

구글은 거의 공개하지 않습니다. 이 파일 시스템을 통합하면 매뉴얼 페이지가 비어 있습니다.

어쩌면 /etc/fstab에 넣고 사용자에게 다시 마운트하도록 요청해야 할까요?

답변1

답변하기에는 너무 늦었다는 것을 알고 있지만 Ubuntu의 /etc/fstab에 다음을 추가하면 작동합니다.

/dir/A=RW:/dir/B=RO /dir/my-union fuse.unionfs-fuse allow_other,cow,use_ino  0   0

답변2

autofs를 사용하여 Unionfs 자동 마운트

TLDR: 아래에 설명된 대로 다음 항목을 생성 /etc/auto.misc하고 포함합니다 etc/auto.master.

data    -fstype=fuse,cow,allow_other :unionfs\#/changedata=RW\:/immutedata=RO

보너스: nfs 자동 마운트 위에 Unionfs 자동 마운트 생성(autofs를 올바르게 구성하는 방법을 설명하기 위해)

NFSv4를 사용하는 경우 IMAPD를 활성화합니다./etc/default/nfs-common

NEED_IDMAPD=yes

autofs가 항상 마운트용 디렉터리를 생성하도록 하려면 다음에서 browser_mode를 활성화하십시오./etc/autofs.conf

browse_mode = yes

이제 핵심 부분으로 이동하십시오. /etc/auto.master다음 줄을 추가 하십시오.

# automount all nfs volumes under /nfs and misc filesystems under /mnt
/nfs   /etc/auto.nfs
/mnt   /etc/auto.misc

/etc/auto.nfsautofs는 under 에 지정된 모든 파일 시스템 /nfs/<mount>/etc/auto.miscunder 에 지정된 모든 파일 시스템을 마운트합니다 /mnt/<mount>.

내에는 /etc/auto.nfs다음과 같은 (예제) 항목이 있습니다.

# FileServer: nfs data configuration
data01 -fstype=nfs4,ro,soft,intr,rsize=8192,wsize=8192,nosuid,tcp,allow_other 192.168.3.100:/mnt/data01
data02 -fstype=nfs4,ro,soft,intr,rsize=8192,wsize=8192,nosuid,tcp,allow_other 192.168.3.100:/mnt/data02
data03 -fstype=nfs4,ro,soft,intr,rsize=8192,wsize=8192,nosuid,tcp,allow_other 192.168.3.100:/mnt/data03
data04 -fstype=nfs4,ro,soft,intr,rsize=8192,wsize=8192,nosuid,tcp,allow_other 192.168.3.100:/mnt/data04
data05 -fstype=nfs4,ro,soft,intr,rsize=8192,wsize=8192,nosuid,tcp,allow_other 192.168.3.100:/mnt/data05

그리고 나는 /etc/auto.miscUnionfs에 대해 다음 항목을 추가했습니다.

# unionfs mount of all /nfs/data* mounts into /mnt/data
data    -fstype=fuse,allow_other,use_ino,ro,noatime :unionfs\#/nfs/data01=RO\:/nfs/data02=RO\:/nfs/data03=RO\:/nfs/data04=RO\:/nfs/data05=RO

모든 파일에 권한이 있는지 확인하십시오 644(필요한 경우 조정 chown 644 /etc/auto.{nfs,misc}).

그런 다음 autofs를 활성화하고 서비스를 다시 시작할 수 있습니다.

# reload autofs to enable all shares
systemctl enable autofs
systemctl restart autofs

이제 다음을 수행할 수 있습니다.ls /mnt/data

관련 정보