Я наконец-то преобразовал свой настольный компьютер из Windows Vista в Lubuntu 13.04. У меня проблемы с настройкой программы синхронизации файлов unison (версия 2.40.65) для работы на компьютере Lubuntu, несмотря на то, что я очень старался весь день искать в разных форумах.
Вот основные настройки: настольный компьютер Lubuntu (DTM); Запоминающее устройство с доступом к сети Dlink (NAS), которое монтируется на DTM как / mnt / nas (в fstab, cifs, по умолчанию).
Унисон работает от NAS до DTM. Однако если файл создается или обновляется в DTM, unison не может распространяться на NAS. Он создает новый файл .unison. newfile .XXXX.unison.tmp с правильным размером в целевом каталоге NAS, но не может переименовать его. Точное сообщение об ошибке Failed: ошибка в переваривании .unison. newfile .XXXX.unison.tmp .unison. newfile .XXXX.unison.tmp: разрешение запрещено. Если я запускаю Unison под sudo, то изменения DTM распространяются на NAS. Однако изменения со стороны NAS копируются в DTM в качестве пользователя root, что создает бесконечные проблемы для m
Кстати, на моей старой Windows Vista я без проблем запускал Unison под Cygwin.
Ваш ответ очень важен. Спасибо.
Я разобрался с ответом. оказывается, что это не связано с Unison, но имеет все, что связано с тем, как NAS монтируется на локальной машине Linux.
В /etc/fstab
я использовал
//192.168.1.61/Volume_1 /mnt/nas cifs defaults 0 0
Теперь я монтирую, используя
//192.168.1.61/Volume_1 /mnt/nas cifs guest,rw,uid=1000,gid=1000,nounix,iocharset=utf8,file_mode=0644,dir_mode=0755 0 0
Унисон теперь работает без сбоев. Ключ заключается в том, что смонтированные uid
и gid
должны соответствовать uid
и gid
на локальной машине, что НЕ в случае использования опции defaults
. Поэтому Unison сталкивался со всевозможными проблемами, связанными с разрешениями.
Я надеюсь, что это полезно для других, сталкивающихся с подобными проблемами.
Есть альтернативное решение, которым, вероятно, стоит поделиться: если вы позвоните unison
с помощью -dontchmod
, оно будет работать нормально для меня.
Обратите внимание, что вы не можете синхронизировать разрешения как прямое следствие, и вам необходимо дополнительно указать -perms 0
, по крайней мере, для моей версии unison
.
Кроме того, ваше решение, по-видимому, потерпит неудачу, если я укажу флаг nounix
. Может быть из-за моей настройки, хотя. (Я хотел бы поместить эту последнюю часть в качестве комментария, но мне не хватает представителя)