Права доступа к файлам изменились при использовании Copy (программа для синхронизации файлов)

Я только начал использовать Копирование, и это кажется великолепным, хотя у меня есть одна трудность. Я использую два компьютера Xubuntu Linux, один на работе и один дома. Один на работе - 64-битный, а дома - 32-битный (я не знаю, является ли это проблемой или нет, хотя, предположительно, это не должно быть). Проблема в том, что когда я помещаю файл в папку / Copy с любого конца, он появляется на другом компьютере, но его разрешения меняются.

В частности, если я напишу тестовый файл ASCII в emacs и сохраню его, у него будут права:

-rw-rw-r-- 1

Однако, он появится на другом конце с разрешениями:

-rwx------ 1

Это может быть особенно неприятно, тем более что исполняемые файлы окрашены оболочкой в ​​зеленый цвет. Есть ли какое-то решение вокруг этого?

7
задан 01.08.2015, 11:41

3 ответа

Можно использовать rsync для копирования файлов. -p опция сохранит полномочия и столько опций:

-p          --> Preserve permissions 
-E          --> Preserve Executability
-o          --> Preserve OwenrShip
-g          --> Preserve Groups
-t          --> Preserve modifition time

для дальнейшего перезвона используют этот ссылка

0
ответ дан 18.04.2019, 19:53
  • 1
    Поскольку руководство указывает, -a покрытия большая часть " preserve"настройки. -avuz сохранит практически все (-a), только обновит файлы (-u, т.е. don' t копируют, если файл присутствует в месте назначения и равен тому в источнике), сжатие прежде, чем быть передающим (-z) и быть подробным о what' s случай (-v). – Alessandro 08.08.2015, 07:11

cp также может скопировать файлы, сохраняющие полномочия, владение и т.д. Для этого, необходимо использовать эти --preserve переключатель. Вот соответствующая ручная запись:

--preserve[=ATTR_LIST]
preserve the specified attributes (default:
mode,ownership,timestamps), if possible additional attributes:
context, links, xattr, all

, Но поскольку Fiximan предложил cp -a, будет более простым. Из страниц справочника снова,

-a, --archive ; same as -dR --preserve=all

, Таким образом, команда была бы чем-то как:

cp -a <source> <destination>
<час>

Однако так как Вы копируете файлы, особенно между компьютером на работе для размещения через Интернет, лучше использовать scp. scp имеет эти -p переключатель, который сохранит время изменения, времена доступа и режимы из исходного файла. Можно также хотеть использовать эти -r переключатель для рекурсивного копирования папок и подпапок. Здесь хорошее руководство по как использование scp для передачи файлов.

0
ответ дан 18.04.2019, 19:53
  • 1
    cp -a было бы более простым. От man cp: "-a, - архив; то же как - доктор - preserve=all"; или с тех пор it' s удаленный: scp -p – Dimitar Petrov 05.08.2015, 23:58

Если Вы заблокированы поставщиками на Копия , можно спросить поддержку относительно их сайта о сохранении атрибутов.

, Если у Вас есть GUI, я предлагаю использовать FreeFileSync.

Это

  • является программное обеспечение (GPLv3) с открытым исходным кодом;
  • работает отлично с локальным и удаленным (FTP, SMB/CIFS, SSH через GVFS) файлы;
  • выдерживает сравнение атрибутами и содержанием;
  • имеют гибкие синхронизирующие настройки (два пути, зеркало, обновление, пользовательское);
  • имеет синхронизирующий агент в реальном времени;
  • сохраняет атрибуты и позволяет копировать полномочия доступа к файлу.

Также можно попробовать Унисон (пакет Ubuntu доступный) или любая другая программа от список Википедии .

0
ответ дан 18.04.2019, 19:53

Теги

Похожие вопросы