Tenho um servidor Linux que exporta pastas compartilhadas do Samba para um cliente Windows. Em um shell do Linux, preciso definir o atributo do sistema. No Windows, eu executaria
attrib +s folder
Como posso fazer isso no servidor Linux?
Responder1
O atributo do sistema é específico do Windows. Não há equivalente no Linux.
O Samba tem uma maneira de mapear atributos do Windows para permissões que existem no Linux. No entanto, pode ser perturbador, pois as permissões do Linux têm um significado diferente. Portanto, o sistema e o atributo oculto não são mapeados por padrão.
Para disponibilizar o sistema e os atributos ocultos, edite a configuração do Samba ( /etc/samba/smb.conf
ou similar, o caminho exato depende da sua distribuição). Ative as opções map system
e map hidden
na [data]
seção:
[data]
…
map system = yes
map hidden = yes
Em seguida, o atributo do sistema é mapeado para o bit de permissão de execução de grupo ( g+x
) e o atributo oculto é mapeado para o bit de permissão de outra execução ( o+x
). Assim, o equivalente a attrib +s some.file
no Windows é
chmod g+x some.file
no servidor Linux.
Esteja ciente de que isso significa que se você tornar um arquivo executável no Linux ( chmod a+x some.file
), isso o tornará oculto e sistematizado no Windows. Portanto, certifique-se de normalmente não tornar arquivos executáveis no Linux.