Samba - Criar e alterar arquivos sem poder deletar [RESOLVIDO]

13. ou melhor stick bit

  


14. Re: Samba - Criar e alterar arquivos sem poder deletar [RESOLVIDO]

Jonatas Prust
JPrust

(usa Ubuntu)

Enviado em 31/10/2013 - 10:56h

Bom dia Franklincsilva, obrigado pela dica.

Realmente já estudei as permissões, e acho, pelo menos de meu ponto de vista, (por favor me corrijam se estiver errado), impossível fazer o que quero apenas com as permissões básicas de Escrita-leitura e execução.
A combinação disto com mais algo, como o sticky bit pode me ajudar(eu imagino), mas não sei ao certo como fazer.


franklincsilva escreveu:

Veja esse material e diga o que encontrou:
http://www.infowester.com/linuxpermissoes.php

Certamente você tenha que fazer é separar:

Proprietário; Grupos e Usuários

Já que cada um terá seu nível de permissão.

Isso também já foi motivo de muita discussão já que o concorrente tem um arsenal nessa área mais não duvido que o Linux fique devendo algo.





15. Re: Samba - Criar e alterar arquivos sem poder deletar [RESOLVIDO]

Jonatas Prust
JPrust

(usa Ubuntu)

Enviado em 31/10/2013 - 11:16h

Isso realmente ajuda...
Estou estudando o sticky bit e ficando preocupado também, pois os resultados que consegui são os de meu post anterior.
O problema é que eu preciso que o pessoal consiga alterar o conteúdo dos arquivos, mesmo que não consiga apagar.

Obrigado Frank. Caso encontre algo mais, não deixe de postar.






16. Funciona!

Jonatas Prust
JPrust

(usa Ubuntu)

Enviado em 31/10/2013 - 13:59h

Funcionou, o sticky bit resolve o problema!

Eu estava testando diretamente no linux, com o gedit, modificando os arquivos e tentando gravar os mesmos, não tinha permissão para tal operação.
Agora abri minha máquina virtual com windows XP e consegui testar:
Criei uma pasta e um arquivo teste.txt pelo linux com usuário "usadmin" e consegui alterar o conteúdo do arquivo no windows com o bloco de notas com o usuário "us1".

Esta solução apesar de ser legal, e atender ao que me solicitaram, vai ser inviável, pois tudo depende do comportamento de cada programa quanto ao compartilhamento, o word por exemplo não consegue salvar o arquivo, talvez por causa do temporário criado pelo mesmo.

Outra coisa é que achei uma gambiarra o que fiz, será que alguém tem uma sugestão de como melhorar isso?
Sem falar que a tarefa do cron irá mudar as permissões constantemente, o que pode envolver tempo ao adicionar a pasta 40GB de informação.

Segue o que fiz:


JPrust escreveu:

Tenho 3 usuários(por exemplo) no grupo projetos:
"usadmin","us2","us3".
O "usadmin" pode apagar os arquivos, portanto é ele que irá fiçar o sticky bit e ser dono de todos os arquivos dentro da pasta.
Para que isso ocorra eu coloquei no Crontab:

* * * * * root chown -R usadmin:projetos /dados/dados/ftp
* * * * * root chmod -R 1770 /dados/dados/ftp

A config da seção do samba é esta:

[FTP]
path = /dados/dados/ftp
comment = Pasta de armazenamento FTP
force create mode = 770
force directory mode = 770
create mode = 770
directory mode = 770
writable = yes
available = yes
browseable = yes
force group = projetos





17. Re: Samba - Criar e alterar arquivos sem poder deletar [RESOLVIDO]

Jonatas Prust
JPrust

(usa Ubuntu)

Enviado em 31/10/2013 - 14:24h

Muito obrigado Riesdra!

Realmente você estava certo desde o princípio. :)
Agora será que existe uma forma elegante de redefinir o dono dos arquivos e pastas, pois estou utilizando isto aqui no crontab:

* * * * * root chown -R usadmin:projetos /dados/dados/ftp

E me parece uma gambiarra o que fiz.

Quanto ao adicionar o sticky bit ao samba eu já adotei sua dica:

riesdra escreveu:

sim consegue alterar, mas o como eu disse o dono do arquivo consegue apagar, apenas os outros que não.


e pode usar stick bit direto no samba

force create mode = 1770
force directory mode = 1770
create mode = 1770
directory mode = 1770




18. Re: Samba - Criar e alterar arquivos sem poder deletar [RESOLVIDO]

Crauss Ferraz
cferraz

(usa CentOS)

Enviado em 06/06/2014 - 17:54h

JPrust escreveu:

Agora será que existe uma forma elegante de redefinir o dono dos arquivos e pastas, pois estou utilizando isto aqui no crontab:


[/quote]

Olá JPrust

eu encontrei uma forma elegante de fazer!

Eu utilizei ACL + Sticy bit no samba, com isso todos os arquivos e diretórios criados são salvos como o dono da pasta. Primeiro é necessário que seja habilitada ACL na partição desejada.

no /etc/fstab:

/dev/sda2 /dados ext4 defaults,acl 1 1

Em seguida remonta a partição:

mount /dados -o remount,acl

Agora basta adicionar no seu compartilhamento:

inherit owner = yes

Com isso, tudo criado com usuário dono da pasta, mas eu encontrei um problema relacionado a renomear aquivos e pastas. Pois só o dono da pasta pode fazer isso, mas descobri uma forma de dá permissões um usuário ou grupo para fazer a manutenção geral do compartilhamento, renomear e excluir sem ser o dono, adicionando no compartilhamento:

admin users = +staff

no meu caso criei um grupo staff que pode o mesmo que root no compartilhamento, logo pode ignorar o sticky bit.




01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts