Файл размещен на сервере самбы (18.04). Файл содержит резервную копию этого 18.04-сервер. Некоторому инструменту резервного копирования на базе MS (на сервере Windows) требуется так называемый набор битов архива для резервного копирования этого конкретного файла. Если не установлен, этот файл игнорируется во время резервного копирования из 18.04-сервер к windows-сервер.
Я загружаю свою общую папку через локальную файловую систему на хосте samba /var/mySharedFolder/
. Какой бы файл я ни поместил в локальную папку, он показан в общей папке samba, введенной другим windows-сервер через //18.04-server/mySharedFolder
.
Как установить бит архива из 18.04-сервер сторону загруженного файла?
По умолчанию Samba сохраняет атрибут файла архива (из файловой системы DOS / Windows) в файловой системе Linux.
Вот подробное объяснение сохранение атрибута архива.
Это делается путем установки исполняемого бита для владельца, когда файл имеет атрибут архива; например:
-rw-rw---- 1 nobody nogroup 0 Nov 26 11:21 file_no_arch.txt
-rwxrw---- 1 nobody nogroup 0 Nov 26 11:55 smb_crt.txt
Как видите, у файла "file_no_arch.txt" бит исполняемого файла отключен, и когда вы просматриваете его в Windows, он скажет, что это не архив. Файл "smb_crt.txt" имеет этот бит, поэтому он также будет иметь атрибут архива.
Если файлы, загруженные из окна окна, не имеют установленного атрибута архива - проверьте конфигурацию Samba (/etc/samba/smb.conf) - в частности, две вещи:
Для тестирования я установил Debian 9 и установил Samba, как описано Вот. Другой системой, использованной для тестирования, был Windows Server 2012.
Если вы просто хотите заставить окно Windows думать, что у файла есть атрибут архива, вы можете просто ввести:
chmod +x my_backup_file.zip
И если вы используете какой-то сценарий для создания этого файла резервной копии, просто введите в него эту команду, и каждый файл будет иметь этот бит.
Мой пример файла smb.conf:
[global]
workgroup = WORKGROUP
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
[homes]
comment = Home Directories
browseable = yes
read only = no
create mask = 0700
directory mask = 0700
valid users = %S
[public]
comment = public anonymous access
path = /var/samba/
browsable =yes
create mask = 0760
directory mask = 0771
writable = yes
guest ok = yes