Як встановити дозволи призначення за допомогою rsync (chown chmod)


13

Я намагаюся зробити локальну rsync - від точки монтажу до локальної папки. Мені потрібно встановити власника, групу та дозволи для певних налаштувань. Ось що я використовую:

 rsync -rtlv --chown=process:sambausers --chmod=D770,F770 /mnt/owncloud_mnt/Engineering/ /Drive_D/docs/Engineering_test

У кінцевому підсумку з дозволами 760 і на каталоги, і на файли, і на root: root на право власності (rsync запускається як root).

Що я роблю неправильно?

ТІА


Чи є цільова файлова система чимось на зразок NTFS, оскільки це "Drive_D"?
Самі Кухмонен

цільова файлова система ext4
Roger Creasy

Чи допомагає додавання -p?
Самі Кухмонен

-p робить chmod на переміщених файлах працювати. Мені потрібно перевірити, щоб переконатися, що він не перезаписав дозволи на жодні існуючі файли. Дякую. І, у мене все ще є питання про те, що відбулося,
Роджер Крізі,

1
Для цього вам насправді потрібен –гo я думаю
Самі Кухмонен

Відповіді:


19

rsync потрібно повідомити, що ви хочете встановити дозволи та інформацію про власника / групу. Логічно було б припустити, що мати --chmodабо --chownсказати це, але вони цього не роблять.

Для отримання дозволів на розповсюдження вам потрібен прапор --permsабо -pпрапор, а для власника / групи вам потрібні --owner --groupабо -ogпрапори для встановлення інформації про власника / групи / дозволу.

Документація трохи неясно написана, тому не зрозуміло, як дозволи обробляються різними комбінаціями чи впливають на існуючі файли.


все ще незрозуміло, тому що, працюючи як sudo, що їм потрібно робити, docs linux.die.net/man/1/rsync вказують, що ви можете встановити призначення лише те саме, що і джерело. Проблема полягає в тому, що мені потрібно встановити його таким, яким є зареєстрований користувач, наприклад$(whoami)
Brian Thomas

2

Я вважаю, що ця версія StackOverflow того ж питання є більш корисною, тому що, здається, у мене з Роджером є rsyncs з різними уподобаннями до формату --chmod(мій 3.1.3 від пакета Debian).

Як сказав Самі, rsync потрібно повідомити "дозволи", тому або включайте -p, або включайте їх неявно за допомогою використання -a. Але тоді, щоб отримати команду насправді запустити, вам потрібно (наприклад, для каталогів 755 та файлів 644) --chmod=Du=rwx,Dg=rx,Do=rx,Fu=rw,Fg=r,Fo=r, а не формату "D755, F644".

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.