Erro rsync: mkstemp

Iniciado por g4p, 22 de Outubro de 2013, 20:23

tópico anterior - próximo tópico

g4p

Citarneto@storagehd:~$ rsync -av /srv/storage1/oliverio/teste.txt /srv/hd_storage_rede/oliverio/
sending incremental file list
teste.txt
rsync: mkstemp "/srv/hd_storage_rede/oliverio/.teste.txt.T1lOaS" failed: Operation not permitted (1)

sent 89 bytes  received 31 bytes  240.00 bytes/sec
total size is 0  speedup is 0.00
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1070) [sender=3.0.9]

Alguém sabe o motivo deste erro?

O diretório /srv/ está da seguinte maneira, caso ajude a vocês.

Citarneto@storagehd:~$ ls -la /srv
total 32
drwxr-xr-x  6 root    root   4096 Oct 21 11:53 .
drwxrwxrwx 24 root    root   4096 Oct  8 09:09 ..
drwxrwxrwx  1 totalle users 12288 Oct 22 10:17 hd_storage_rede
drwxrwxrwx  2 root    root   4096 Oct 21 11:53 neto
drwxrwxrwx  1 totalle users  4096 Sep  2 08:13 original_hd_storage_rede
drwxrwxrwx  9 totalle users  4096 Oct 22 18:13 storage1

zekkerj

Certifique-se de que vc tem permissão de escrita em "/srv/hd_storage_rede/oliverio", e permissão de execução em todos os diretórios do caminho.

Se esse tal "hd_storage_rede" for um ponto de montagem (local ou remoto), certifique-se de que está montado em modo R/W. Do contrário, nem o root conseguirá escrever um bit nele.
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

g4p

Uma solução que achei foi usar o BITSUID.

chmod 4755 /usr/bin/rsync

Problema resolvido!

zekkerj

Cuidado com isso... observe se os arquivos copiados pertencem a você ou ao root.

PS: Se tinha que trabalhar como root, pq não fez isso com "sudo"?
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

g4p

Porque não vou está disponível, no momento do backup, para digitar a senha.

O horário do backup é de 01h todo dia.

zekkerj

Pra isso tem o crontab... vc roda o cron com o usuário que quiser, na hora em que quiser.

Outra pergunta, esse HD não é NTFS ou VFAT, é? Pq se for, há opções no ponto de montagem pra isso não acontecer.
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

g4p

Mas não tem como rodar com o root, eu deixo ele desabilitado por questões de segurança.

O Storage1 é NTFS, os outros 2 de backup são XFS.

zekkerj

#7
Adicione
Citação de: g4p online 24 de Outubro de 2013, 23:45
Mas não tem como rodar com o root, eu deixo ele desabilitado por questões de segurança.
Desabilitar o root pra login não significa que ele não possa executar tarefas agendadas. Alias, quem você acha que dá boot e desliga sua máquina?

CitarO Storage1 é NTFS, os outros 2 de backup são XFS.
Vc está usando montagem automática em todos?

XFS é nativo, se vc for dono do ponto de montagem vc ganha acesso de escrita na raiz da partição; pode usar "chown" pra se tornar dono de qq arquivo ou diretório nela.

Observe no entanto que se a partição estiver sendo montada a partir da rede, não vale o sistema onde ela está sendo gravada, e sim o sistema de rede que vc usou pra compartilhar.

Tipo, se vc estiver compartilhando pelo Samba um arquivo numa partição ReiserFS, quem acessar esse compartilhamento vai acessar como "smbfs", não como Reiser.
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

g4p

Então eu posso habilitar o root, agendar uma tarefa e desabilitar ele e, assim mesmo, vai continuar executando as tarefas?

zekkerj

Sim, pode. E como na hora de criar o agendamento vc estará num terminal, pode usar o sudo sem problemas...
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

g4p

Se eu usar o sudo, na hora exata do agendamento vai pedir a senha e eu não vou está no momento pra digitar.

zekkerj

Você não entendeu o que eu disse. Você usa o sudo pra fazer o agendamento, não no comando agendado. O comando é agendado pra ser executado pelo root, não precisa de sudo, su, ou qualquer outro artifício pra virar root. O simples fato de ser agendado pra ser executado pelo root já resolve.

Quer entender melhor?

sudo crontab -e

Agende alguma coisa.

Depois, execute só

crontab -e

Veja que o que vc agendou não está mais lá. Pq? Pq o primeiro agendamento que vc fez foi feito pelo root, pra si mesmo. Já o segundo foi feito pelo seu usuário.
Entendeu agora?
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

g4p

Sim, entendi, nem tinha pensado nisso.

Vou fazer o teste e digo alguma coisa.