서버 백업을 공유하기 위해 Raspberry Pi에 간단한 하위 볼륨 Data01을 사용하여 btrfs 파일 시스템을 만들었습니다. Raspberry Pi에 삼바 공유를 만들었습니다.
그 후 fstab을 통해 우분투 20.04 서버에 삼바 공유를 마운트하고 서버의 일부 파일을 raspi로 동기화하려고 시도했습니다.
처음에는 잘 작동했지만 두 번째 동기화에서는 rsync가 모든 파일을 다시 복사하는 것처럼 보였습니다. 이전에는 rsync를 사용한 적이 없었기 때문에 서버의 폴더에 대용량 파일(3.2GB ISO)을 추가했는데, 한 번 복사하지만 매번 더 작은 파일을 복사합니다.
그래서 내가 한 다음 일은 rsync가 복사를 멈출 때마다 파일 크기가 26MB처럼 보이는지 확인하는 것이었습니다.
그래서 나중에 통계를 살펴본 결과 더 작은 파일의 시간 값이 정확하지 않다는 것을 알 수 있었습니다.
Datei: Zwergentrunk-1.pdf
Gr▒▒e: 740838 Bl▒cke: 1448 EA Block: 4096 regul▒re Datei
Ger▒t: 2eh/46d Inode: 4917 Verkn▒pfungen: 1
Zugriff: (0744/-rwxr--r--) Uid: ( 1001/srvbackup) Gid: ( 1001/srvbackup)
Zugriff : 2022-04-06 21:16:26.471913500 +0200
Modifiziert: 2022-04-06 21:16:26.563488588 +0200
Ge▒ndert : 2022-04-06 21:16:26.557414539 +0200
Geburt : -
하지만 파일이 더 큽니다.
Datei: ubuntu-20.04.4-desktop-amd64.iso
Gr▒▒e: 3379068928 Bl▒cke: 6599744 EA Block: 4096 regul▒re Datei
Ger▒t: 2eh/46d Inode: 4911 Verkn▒pfungen: 1
Zugriff: (0744/-rwxr--r--) Uid: ( 1001/srvbackup) Gid: ( 1001/srvbackup)
Zugriff : 2022-04-06 18:40:32.667789400 +0200
Modifiziert: 2022-03-20 23:29:45.304778200 +0100
Ge▒ndert : 2022-04-06 18:40:36.193852990 +0200
Geburt : -
누군가가 어떤 아이디어를 갖고 있기를 바랍니다. 감사합니다.
raspi의 fstab (단축)
UUID=1483d2ca-66f7-4fe4-9494-4802b078a30b /mnt/Backup01 btrfs defaults 0 1
smb 구성 파일
[global]
workgroup = ESD
dns proxy = no
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
server role = standalone server
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
map to guest = bad user
usershare allow guests = yes
[homes]
comment = Home Directories
browseable = no
read only = yes
create mask = 0700
directory mask = 0700
valid users = %S
[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
guest ok = no
read only = yes
create mask = 0700
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
browseable = yes
read only = yes
guest ok = no
[Backup01-Data01]
path= /mnt/Backup01/Data01
browsable = yes
read only false
guest ok = no
inherit acls = no
inherit permissions = yes
ea support = no
store dos attributes = no
printable = no
#create mask = 0664
#force create mode 0664
#directory mask = 0775
#force directory mode = 0775
hide special files = yes
follow symlinks = yes
hide dot files = yes
valid users = srvbackup
invalid users =
read list = srvbackup
write list = srvbackup
force user=srvbackup
서버의 fstab(단축형)
//officebeere/Backup01-Data01 /mnt/Backup01-Data01 cifs _netdev,uid=1000,gid=1000,username=srvbackup,password=********** 0 0
rsync 명령
sudo rsync -avit --no-p --progress --delete Zwergentrunk/ /mnt/Backup01-Data01/
고쳐 쓰다:
더 많이 테스트했는데 btrfs 문제가 아니라고 말할 수 있습니다(다른 HDD 및 ext4로 테스트해도 여전히 동일한 문제임). rsync 관련일 뿐만 아니라 cp -a 또는 cp -preserver=timestamps --> 동일한 문제도 시도했지만 사본에 약간의 차이가 있습니다. 올바른 수정 날짜를 먼저 확인한 다음 변경하면 됩니다.
Windows에서 복사하여 붙여넣기를 사용해 보았습니다. --> 수정된 날짜가 정확합니다.
그러나 touch -r sourefile destfile을 사용하면 정확한 날짜를 얻을 수 있으므로 해결 방법이 가능합니다.
누군가 더 나은 해결책을 갖고 있기를 바랍니다. 이는 Samba 서버 또는 Mount smb 공유 문제인 것 같습니다.
마운트에서는 이것이 내 마운트 옵션이라고 말합니다.
//officebeere/Backup01-Data01 on /mnt/Backup01-Data01 type cifs (rw,relatime,vers=3.1.1,cache=strict,username=srvbackup,uid=1000,noforceuid,gid=1000,noforcegid,addr=192.168.1.5,file_mode=0755,dir_mode=0755,soft,nounix,serverino,mapposix,rsize=4194304,wsize=4194304,bsize=1048576,echo_interval=60,actimeo=1,_netdev)
답변1
알았어 찾았어 삼바의 버그라서 버전을 확인하고 최신 라즈베리 OS로 업그레이드했더니 이제 작동한다