Problemas com Codificações e Permições em pasta de rede

Iniciado por Roger_Pereira, 12 de Agosto de 2010, 11:15

tópico anterior - próximo tópico

Roger_Pereira

1- Primeiro problema que tenho é que tenho o servidor samba funcionando e as estações windows tem suas unidades de rede, so que ao criar ou enviar qualquer arquivo para essa unidade de rede que fica no meu servidor linux as letras Maiusculas ficam todas minusculas. Geralmente se escreve a primeira letra maiuscula e agora todos arquivos tão minusculos, tem como resolver esse problema, para reverter o que já foi feito e também para não acontecer mais isso daqui para frente?

2- Outro problema é de codificação as vezes entro em pasta de usuarios e vejo lá que tem problema de codificação nas pastas e arquivos acho q tem haver com acento e caracteres especiais tem como resolver esse problema também?

3- Me veio na cabeça outro problema que estou tendo, tenho uma pasta na rede publica onde todos acessam está com chmod 777, contudo se o joãozinho criar ou colocar um arquivo lá, o pedrinho não pode ir lá e deletar esse arquivo, somente o joãozinho que pode deletar, a pergunta é, mesmo estando chmod 777 na pasta tem que estar com a mesma permição no arquivo do samba? acho q é esse o problema, so queria confirmar se é isso mesmo o problema.


Agradeço desde já uma ajuda.

zekkerj

Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Roger_Pereira

Segue abaixo como solicitado o smb.conf


[global]
# Nome do Servidor
netbios name = Servidor

# Nome do Dominio
workgroup = eletrons

# Tipo de Servidor
server string = Servidor

# Dominio Principal
domain master = yes

preferred master = yes
local master = yes
domain logons = yes
passdb backend = tdbsam
log file = /usr/local/samba/log.%m
max log size = 1000

#Script de unidades
logon script = %U.bat

# Onde vai Armazenar Perfil movel
logon home = \\%N\profiles\%U
logon path = \\%N\profiles\%U

#Unidade do Perfil do Usuario
logon drive = Z:

security = user
encrypt passwords = true
os level = 100

# Letras Maiusculas e Minusculas
preserve case = yes

default case = lower
wins support = yes
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

# IP da Rede
hosts allow = 192.168.1.

unix charset = iso8859-1
display charset = cp850
username map = /etc/samba/smbusers
       
[netlogon]
comment = Servico de Logon
path = /etc/samba/netlogon
writeable = no
browseable = no

[Documentos]
comment = Pasta dos Usuarios
path = /media/arquivos/Documentos
browseable = yes
writeable = yes
guest ok = yes
available = yes
delete veto files = yes
veto files = /*.mp3/*.wav/*.wma/*.wmv/*.mpg/*.avi/*.mp4
create mask = 0777
directory mask = 0777

[Projetistas]
comment = Pasta dos Projetistas
path = /media/arquivos/Projetistas
browseable = yes
writeable = yes
guest ok = yes
available = yes
delete veto files = yes
veto files = /*.mp3/*.wav/*.wma/*.wmv/*.mpg/*.avi/*.mp4
vfs object = /usr/lib/samba/vfs/recycle.so
create mask = 0777
directory mask = 0777

[profiles]
comment = Perfil movel de usuarios
path = /var/profiles
writeable = yes
browseable = no
create mask = 0600
directory mask = 0700

[Backups Diarios]
comment = Backup dos Documentos
path = /media/diario
writeable = yes
browseable = no
create mask = 0600
directory mask = 0700

[Backups Diversos]
comment = Backup dos Projetistas e Profiles
path = /media/backup
writeable = yes
browseable = no
create mask = 0600
directory mask = 0700


Gostaria de dizer que resolvi o problema das letras Maiuscula, até em comentario ali como proceder.

Problema da codificação não consegui resolver não e o problema do pessoal onde quem cria so ele pode deletar eu mudo qual create mask ou directory mask alguém pode me explicar a diferença dos 2?
Se olharem a pasta projetista já estão com os 2 em 777 contudo ainda o joãozinho cria o o pedrinho não deleta, o que pode ser o problema? dae toda hora tenho que ir lá e dar um chmod -R 777 na pasta inteira dae sim o usuario consegue deletar o arquivo.

Roger_Pereira

Continuo com 2 problemas.

1- O Windows manda pro servidor pastas acentuadas e com caracteres especiais e enxerga normalmente como eles são, agora se acesso o linux pela area de trabalho e vejo as pastas aparece problema de codificação tem como resolver isso?

2- Fora dar chmod 777 em uma pasta o que tenho q fazer para uma pasta de rede ficar 100% liberada para todos poderem acessar e deletar tudo? pq tenho uma pasta publica com nome de cada usuario, sendo que se o joãozinho colocar um arquivo na pasta do pedrinho, o pedrinho não consegue deletar esse arquivo. Como resolver esse problema?

zekkerj

Citação de: Roger_Pereira online 20 de Agosto de 2010, 10:23
1- O Windows manda pro servidor pastas acentuadas e com caracteres especiais e enxerga normalmente como eles são, agora se acesso o linux pela area de trabalho e vejo as pastas aparece problema de codificação tem como resolver isso?
Sim, tem. Use o comando "unix charset" pra forçar o código de caracteres que vc usa no Unix. P.ex.,

unix charset = utf8

Citar
2- Fora dar chmod 777 em uma pasta o que tenho q fazer para uma pasta de rede ficar 100% liberada para todos poderem acessar e deletar tudo? pq tenho uma pasta publica com nome de cada usuario, sendo que se o joãozinho colocar um arquivo na pasta do pedrinho, o pedrinho não consegue deletar esse arquivo. Como resolver esse problema?
777 normalmente é má idéia. Vc pode usar as diretivas "force create mode" e "force directory mode" pra controlar as permissões dos novos arquivos.

Agora, nos diretórios "públicos", é regra que "pedrinho" não possa apagar os arquivos que "joaozinho" criou; faça o teste no próprio Linux, usando o diretório "/tmp" e vc vai ver. A solução pra isso é "pedrinho" e "joaozinho" cada um ter sua própria pasta, e um não mexer no que é do outro.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Roger_Pereira

Citação de: zekkerj online 20 de Agosto de 2010, 13:16
Citação de: Roger_Pereira online 20 de Agosto de 2010, 10:23
1- O Windows manda pro servidor pastas acentuadas e com caracteres especiais e enxerga normalmente como eles são, agora se acesso o linux pela area de trabalho e vejo as pastas aparece problema de codificação tem como resolver isso?
Sim, tem. Use o comando "unix charset" pra forçar o código de caracteres que vc usa no Unix. P.ex.,

unix charset = utf8

Citar
2- Fora dar chmod 777 em uma pasta o que tenho q fazer para uma pasta de rede ficar 100% liberada para todos poderem acessar e deletar tudo? pq tenho uma pasta publica com nome de cada usuario, sendo que se o joãozinho colocar um arquivo na pasta do pedrinho, o pedrinho não consegue deletar esse arquivo. Como resolver esse problema?
777 normalmente é má idéia. Vc pode usar as diretivas "force create mode" e "force directory mode" pra controlar as permissões dos novos arquivos.

Agora, nos diretórios "públicos", é regra que "pedrinho" não possa apagar os arquivos que "joaozinho" criou; faça o teste no próprio Linux, usando o diretório "/tmp" e vc vai ver. A solução pra isso é "pedrinho" e "joaozinho" cada um ter sua própria pasta, e um não mexer no que é do outro.


Sobre as permições das pasta, no windows é possivel esse caso porque no linux não poderia a ser possivel fazer isso?
Eu preciso que na pasta do "pedrinho" o "joãozinho" coloque um arquivo e depois o pedrinho delete caso ele não precise mais do arquivo, senão ele vai ter um arquivo em sua pasta que ele não é "dono" que não pode fazer o que bem intender com o arquivo;

Se alguém suber como arrumar isso agradeço.

zekkerj

CitarSobre as permições das pasta, no windows é possivel esse caso porque no linux não poderia a ser possivel fazer isso?
Não é pq pode fazer no windows que é uma boa idéia.

Não é pq não é uma boa idéia fazer, que é impossível... ;)

CitarEu preciso que na pasta do "pedrinho" o "joãozinho" coloque um arquivo e depois o pedrinho delete caso ele não precise mais do arquivo, senão ele vai ter um arquivo em sua pasta que ele não é "dono" que não pode fazer o que bem intender com o arquivo;
A forma mais simples de arrumar isso é cada usuário ter sua pasta pessoal. Assim nunca vai haver a necessidade de um usuário escrever na pasta do outro, eliminando a possibilidade de que o outro precise apagar os arquivos criados pelo um...

Não é uma questão de permissões, e sim de organização.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Roger_Pereira

certo eu já intendi mais quero saber como contornar isso...

Todos usuarios tem sua pasta particular onde só eles acesam tido como unidade R:

Agora todos computadores tem uma outra unidade P: onde dentro dessa todos tem uma pasta onde todos acessam e usam para troca de arquivos, então o joãozinho viu um video legal e coloco na pasta do pedrinho, blz, pedrinho já viu e agora quer deletar pra manter a pasta limpa e organizada sem coisas desnecessaria, ah pois então dae o pedrinho não pode deletar um arquivo na pasta dele pq o dono do arquivo é o joãozinho, se a pasta é do joãozinho ele faz o que quer com os arquivos que tiver na pasta dele, é simples isso, é isso q preciso fazer pq TODOS estão acostumados a fazer isso quando servidor era windows e agora mudei pra linux tem q manter a mesma forma de trabalho deles.



zekkerj

Agora pense em outra situação: Pedrinho quer mandar um vídeo pra Joãozinho. Só que Joãozinho já foi pra casa, só vai ter tempo de ver o vídeo amanhã. Nesse meio tempo, vem o Zezinho, que não tinha nada a ver com a história e apaga o vídeo.

E aí?

Citarpreciso fazer pq TODOS estão acostumados a fazer isso quando servidor era windows e agora mudei pra linux tem q manter a mesma forma de trabalho deles.
O Linux não é o Windows. Não espere que os dois trabalhem do mesmo jeito.

Mas se você insiste em fazer as coisas do jeito errado, leia sobre o uso do "sticky bit" em diretórios públicos.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Roger_Pereira

Citação de: zekkerj online 26 de Agosto de 2010, 13:47

Mas se você insiste em fazer as coisas do jeito errado, leia sobre o uso do "sticky bit" em diretórios públicos.

Sim vou insistir pq é exatamente isso que preciso fazer, já entendi a bastante tempo que isso é uma segurança mais eu quero eliminar isso em uma pasta especifica que é o meu publico ou temp.

o que entendi sobre "sticky bit" que ele vai fazer exatamente o que está acontecendo agora, não vai deixar ninguem que não seje o dono deletar os arquivivo em um pasta tmp. No caso eu quero fazer exatamente o contrario liberar para todos poderem deletar. Acredito eu que o "sticky bit" esteje integrano nas versões mais novas do linux pelo menos foi o que deu a intender.

Bom se alguém puder continuar me ajudando a eliminar essa trava para todos poderem deletar e não só o dono fico grato.


Ah me surgiu uma coisa agora, se eu der um comando pra retirar o "sticky bit" será que não rola dae? mesmo eu não ter colocado? ou será q intendi tudo errado?

zekkerj

CitarAh me surgiu uma coisa agora, se eu der um comando pra retirar o "sticky bit" será que não rola dae? mesmo eu não ter colocado? ou será q intendi tudo errado?
Caiu a ficha? ;) Exatamente o que você precisa fazer. Faça isso no diretório do compartilhamento.

Não precisa fazer nos sub-diretórios, até pq estes pertencem a quem os criou, a menos que você esteja forçando acesso público nos sub-diretórios também (o que um cidadão precisa fazer pra ter um pouco de privacidade por aqui???)
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D