Enviando arquivos pelo Samba com linha de comando

11

Eu queria saber se existe uma maneira de usar o Samba para enviar itens para uma máquina cliente através da linha de comando (eu preciso enviar os arquivos do servidor Samba). Eu sei que eu poderia sempre usar scp , mas primeiro eu queria saber se há uma maneira de fazer isso com o Samba. Obrigado!

    
por t0xic 29.05.2015 / 23:50

4 respostas

15

Use smbclient , um programa que acompanha o Samba :

$ smbclient //server/share -c 'cd c:/remote/path ; put local-file'

Existem muitos sinalizadores, como -U , para permitir que o nome do usuário remoto seja diferente do nome local.

Em sistemas que dividem o Samba em múltiplos pacotes binários, você pode ter os servidores Samba instalados e ainda assim estar faltando smbclient . Nesse caso, verifique seu repositório de pacotes para um pacote chamado smbclient , samba-client ou similar.

    
por 29.05.2015 / 23:55
2

Realmente o trabalho será:

$ smbclient //server/share -c 'cd c:/remote/path ; put local-file remote-file'

arquivo local - arquivo da máquina local

remote-file - copie para este arquivo na máquina remota

    
por 12.05.2016 / 12:42
0

Outra maneira se o compartilhamento já estiver montado por fusível

Se você estiver executando algum desktop com compartilhamentos já montados pelo nautilus , caja ou qualquer outro gerenciador de arquivos , você pode estar usando fusível (em vez de smbclient ).

Nesse caso, você pode encontrar alguns pontos de montagem em:

ls -l /run/user/$UID/gvfs/
drwx------ 1 charlie charlie 0 Feb  2 10:04 smb-share:server=hostname,share=documents

Sim, este é um ponto de montagem !

df -h /run/user/$UID/gvfs/*
Filesystem      Size   Used  Avail  Use% Mounted on
gvfsd-fuse      16.2T  3.6T  12.6T   59% /run/user/1000/gvfs

E você pode usá-lo como um sistema de arquivos normal.

cp $HOME/myfile \
    /run/user/$UID/gvfs/smb-share:server=hostname,share=documents/destpath/
    
por 07.02.2018 / 13:02
0
O

curl suporta o protocolo smb desde a v7.40 : curl --upload-file /path/to/file.ext -u 'DOMAIN\Username' smb://172.16.17.52/ShareName/

    
por 11.10.2018 / 18:12