ข้อผิดพลาด“ rsync: ล้มเหลวในการตั้งค่าการอนุญาตใน…” ด้วยข้อผิดพลาด rsync -a หรือ -p


37

เมื่อฉันใช้ตัวเลือก -a ตามที่ถามและตอบในการสงวนสิทธิ์ด้วย rsyncฉันได้รับข้อผิดพลาด "rsync: ล้มเหลวในการตั้งค่าการอนุญาต" จำนวนมาก

rsync: failed to set permissions on "/ata/text/RCS/jvlc,v": Operation not permitted (1)
rsync: failed to set permissions on "/ata/text/RCS/jvm,v": Operation not permitted (1)
rsync: failed to set permissions on ...

ทำไมนี้ ไฟล์เป็นไฟล์ปกติที่ได้รับอนุญาตจาก 0664


คุณสามารถให้เอาท์พุต ls -al ให้เราสำหรับบางไฟล์ที่ได้รับผลกระทบได้หรือไม่?
pdo

คำตอบ:


28

เป็นไปได้มากว่า rsync ที่ปลายปลายทางไม่ได้ทำงานในฐานะผู้ใช้ที่ได้รับอนุญาตให้ใช้chmodไฟล์เหล่านั้น (ซึ่งจะต้องเป็นทั้งเจ้าของไฟล์หรือรูท)


มันเพิ่งเกิดขึ้นว่าไฟล์เป็นของ _www การเปลี่ยนเจ้าของแก้ไขปัญหานี้ได้ ขอบคุณสำหรับความช่วยเหลือ
prosseek

2
ควรสังเกตว่าคุณจะได้รับข้อผิดพลาดนี้แม้ว่าผู้ใช้ rsync จะอยู่ในกลุ่มเดียวกันกับไฟล์ก็ตาม ในการแก้ไขข้อผิดพลาดนี้ไฟล์จะต้องเป็นของผู้ใช้เดียวกันกับ rsync ไม่ใช่เฉพาะกลุ่ม
Cerin

34

ข้อผิดพลาดนี้เกิดขึ้นเนื่องจากไม่อนุญาตการดำเนินการสำหรับเปลี่ยนสิทธิ์ ดังนั้นตรวจสอบว่าผู้ใช้ของคุณดำเนินการคำสั่งมีสิทธิ์ที่ถูกต้อง (เช่นเขาไม่ใช่เจ้าของ) หรือระบบไฟล์ของคุณไม่สนับสนุน

คุณสามารถเพิกเฉยต่อคำเตือนได้โดยระบุอาร์กิวเมนต์เพิ่มเติมเพื่อ rsync --no-permsและ-O( --omit-dir-times) เพื่อหลีกเลี่ยงการพยายามกำหนดสิทธิ์และเวลาในการแก้ไขไฟล์ / ไดเรกทอรี สิ่งนี้ควรแก้ไขข้อผิดพลาด -aอีกวิธีหนึ่งคือหลีกเลี่ยงการใช้


6

rsyncในฐานะที่เป็นแล้วกล่าวว่าปัญหาเกิดขึ้นเมื่อใดก็ตามที่คุณไม่ได้รับอนุญาตให้เปลี่ยนแปลงสิทธิ์ไฟล์บนปลายทางของ อย่างไรก็ตามคุณสามารถหลีกเลี่ยงข้อผิดพลาดนี้โดยใช้สองอาร์กิวเมนต์เพิ่มเติมและ--no-o--no-g

ตัวอย่าง:

rsync -ahv --no-o --no-g target/ destination/

4
--no-ownerและ--no-groupไม่ต้องควบคุมการอนุญาต คุณต้องการ--no-permsสิ่งนั้น หากคุณต้องการหลีกเลี่ยงการพยายามเปลี่ยนความเป็นเจ้าของคุณอาจต้องใช้ทั้งสามค่าสถานะ
roaima

1

พื้นหลัง

โดยทั่วไปrsyncคุณจะเห็นคำเตือนหาก:

  • rsyncเซิร์ฟเวอร์ที่ส่วนอื่น ๆ ไม่ได้มีสิทธิ์ในการดำเนินการดำเนินการที่เกี่ยวข้องกับต่อไปนี้:
    • เจ้าของ
    • กลุ่ม
    • สิทธิ์
    • เวลาในการเข้าถึง
  • หรือระบบไฟล์ทางด้านระยะไกลไม่รองรับเมทาดาทาประเภทเดียวกันกับผู้ส่ง (การอนุญาตความเป็นเจ้าของและอื่น ๆ )

ปัญหาเหล่านี้จะปรากฏในrsyncไคลเอนต์ที่พยายามสื่อสารกับrsyncเซิร์ฟเวอร์ที่ปรากฏเป็นข้อความเช่นนี้เมื่อพยายามคัดลอกไฟล์ / ไดเรกทอรีไปยังผู้รับ:

เจ้าของ

rsync: chown "/ mnt / music / The Fleetwood Mac / Trilogy - 2006 / Trilogy - 2006 - ซีดี 3 / 311_fleetwood_mac _-_ eyes_of_the_world.mp3" ล้มเหลว: การดำเนินการไม่ได้รับอนุญาต (1)

กลุ่ม

rsync: chgrp "/ mnt / music / The Fleetwood Mac รายชื่อจานเสียงโดย Sketch / Trilogy - 2006 / Trilogy - 2006 - ซีดี 3 / 311_fleetwood_mac _-_ eyes_of_the_world.mp3" ล้มเหลว: การดำเนินการไม่ได้รับอนุญาต (1)

สิทธิ์

rsync: ล้มเหลวในการตั้งค่าการอนุญาตใน "/ mnt / music / The Fleetwood Mac Discography โดย Sketch / Trilogy - 2006 / Trilogy - 2006 - CD 3": การดำเนินการไม่ได้รับอนุญาต (1)

ในกรณีที่ด้านการรับไม่สามารถทำการดำเนินการเหล่านี้คุณสามารถแนะนำrsyncให้ข้ามการพยายามทำโดยตระหนักว่าปลายทางจะไม่เหมือนกันกับข้อมูลเมตาของผู้ส่งที่อยู่รอบ ๆ ไฟล์ สิ่งนี้จะยังคงสร้างสำเนาที่เหมือนกันของส่วนไบนารีของไฟล์และไดเรกทอรี

หากต้องการบอกว่าrsyncไม่ต้องกังวลเกี่ยวกับข้อมูลเมตาคุณสามารถใช้--no-OPTIONเพื่อปิดใช้งานตัวเลือกโดยนัยเหล่านี้

rsync man page
--no-OPTION
      You  may  turn off one or more implied options by prefixing the option name
      with “no-”.  Not all options may be prefixed with a “no-”: only options that
      are  implied  by  other  options (e.g.  --no-D,  --no-perms)  or  have
      different  defaults  in  various  circumstances (e.g.  --no-whole-file,
      --no-blocking-io, --no-dirs).  You may specify either the short or the long
      option name after the “no-” prefix (e.g. --no-R is the same as --no-relative).

      For  example: if you want to use -a (--archive) but don’t want -o (--owner),
      instead of converting -a into -rlptgD, you could specify -a --no-o (or -a
      --no-owner).

      The order of the options is important:  if you specify --no-r -a, the -r
      option would end up being  turned  on,  the  opposite  of  -a  --no-r.
      Note  also that the side-effects of the --files-from option are NOT positional,
      as it affects the default state of  several  options and slightly changes the
      meaning of -a (see the --files-from option for more details).

ดังนั้นในกรณีของเราเราต้องการใช้สิ่งนี้เพื่อปิดการใช้งาน:

$ rsync -avz --no-o --no-g --no-perms <src> <dst>

ตัวอย่าง

$ rsync -avz --delete --no-o --no-g --no-perms The\ Fleetwood\ Mac/ /mnt/music/The\ Fleetwood\ Mac/.
sending incremental file list
Trilogy - 2006/
Trilogy - 2006/Trilogy - 2006 - CD 3/
Trilogy - 2006/Trilogy - 2006 - CD 3/301_fleetwood_mac_-_love_in_store.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/302_fleetwood_mac_-_cant_go_back.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/303_fleetwood_mac_-_thats_alright.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/304_fleetwood_mac_-_book_of_love.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/305_fleetwood_mac_-_gypsy.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/306_fleetwood_mac_-_only_over_you.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/307_fleetwood_mac_-_empire_state.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/308_fleetwood_mac_-_straight_back.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/309_fleetwood_mac_-_hold_me.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/310_fleetwood_mac_-_oh_diane.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/311_fleetwood_mac_-_eyes_of_the_world.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/312_fleetwood_mac_-_wish_you_were_here.mp3

sent 61993245 bytes  received 289 bytes  17712438.29 bytes/sec
total size is 2596551439  speedup is 41.88

ทางเลือก

เหตุผลนี้เกิดขึ้นเนื่องจากการใช้-aสวิตช์ -aรวมถึงครอบครัวของสวิทช์:

    -a, --archive               archive mode; equals -rlptgoD (no -H,-A,-X)

แทนการใช้-aคุณสามารถใช้สวิทช์ของแต่ละบุคคลและ Forgo ต้องใช้--no-OPTION's

เหล่านี้คือตัวเลือกส่วนบุคคลที่มาพร้อมกับ -a
    -r, --recursive             recurse into directories
    -l, --links                 copy symlinks as symlinks
    -p, --perms                 preserve permissions
    -t, --times                 preserve modification times
    -o, --owner                 preserve owner (super-user only)
    -g, --group                 preserve group
    -D                          same as --devices --specials
        --devices               preserve device files (super-user only)
        --specials              preserve special files

การทำสิ่งต่าง ๆ ในลักษณะที่ตัวอย่างด้านบนจะกลายเป็นสิ่งนี้แทน:

$ rsync -rltDvz --delete The\ Fleetwood\ Mac/ /mnt/music/The\ Fleetwood\ Mac/.
sending incremental file list
Trilogy - 2006/
Trilogy - 2006/Trilogy - 2006 - CD 3/
Trilogy - 2006/Trilogy - 2006 - CD 3/301_fleetwood_mac_-_love_in_store.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/302_fleetwood_mac_-_cant_go_back.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/303_fleetwood_mac_-_thats_alright.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/304_fleetwood_mac_-_book_of_love.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/305_fleetwood_mac_-_gypsy.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/306_fleetwood_mac_-_only_over_you.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/307_fleetwood_mac_-_empire_state.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/308_fleetwood_mac_-_straight_back.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/309_fleetwood_mac_-_hold_me.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/310_fleetwood_mac_-_oh_diane.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/311_fleetwood_mac_-_eyes_of_the_world.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/312_fleetwood_mac_-_wish_you_were_here.mp3

sent 61993245 bytes  received 289 bytes  17712438.29 bytes/sec
total size is 2596551439  speedup is 41.88
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.