Come trasferire file usando Samba da command line

Cerca

Lavorando da command line può sorgere a volte la necessità di trasferire file da o verso una share di rete attraverso Samba. In questa rapida guida vediamo due metodi alternativi per raggiungere l’obiettivo.

Samba da command line usando smbclient

smbclient è un ftp-like client che permette di accedere risorse SMB/CIFS su un server.

Su Ubuntu possiamo installarlo attraverso apt

				
					sudo apt install smbclient
				
			

Per una guida ufficiale possiamo fare riferimento a questo link: https://www.samba.org/samba/docs/current/man-html/smbclient.1.html

Vediamo qui di seguito alcuni esempi di funzionamento del comando.

Trasferimento senza username e password
				
					smbclient //[server-ip]/[nome-share] -c "put nome-file"
				
			
Trasferimento in una sottocartella della share
				
					smbclient //[server-ip]/[nome-share] -c "cd remote/path; put nome-file"
				
			
Trasferimento con username e password

In questo scenario, il trasferimento dei dati via Samba prevede l’autenticazione via username e password. Queste credenziali sono ovviamente quelle configurate sul server Samba.

				
					smbclient //[server-ip]/[nome-share] -U alessandro -c "cd remote/path; put nome-file"
				
			

Avendo specificato il nome utente verrà richiesto successivamente l’inserimento della password

				
					Enter WORKGROUP\alessandro's password:
				
			

Quando invece lo scenario non prevede l’interattività con l’utente e pertanto non è possibile inserire la password quando richiesta, si può salvare le credenziali in un file di testo ed usare il comando così

				
					smbclient //[server-ip]/[nome-share] -A [password-file] -c "cd remote/path; put nome-file"
				
			

Il file contenente le credenziali dovrà essere così formattato

username = alessandro
password = mypassword
domain = WORKGROUP

Samba da command line usando curl

Dalla versione 7.40 curl supporta il protocollo SMB/CIFS. Qui di seguito il link al changelog di curl: https://curl.se/changes.html

Il comando per poter trasferire un file da locale a remoto via Samba è il seguente

				
					curl --upload-file /path/to/file.ext -u "DOMAIN\Username:Password" smb://[server-ip]/[nome-share]/
				
			

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Most Recent

Come installare Composer su Ubuntu

Composer è il gestore delle dipendenze per PHP. Per installarlo su Ubuntu seguiamo questi semplici passi illustrati qui sotto. Installazione di Composer Per prima cosa

Come realizzare un client NTP in Python

In questo post vediamo come realizzare, utilizzando poche righe di codice, uno script Python che agisca da client NTP. Soluzione 1 In questa prima soluzione

Come avviare UEFI dopo reboot su Linux

L’accesso a UEFI al boot del computer richiede la pressione di un tasto che varia per ogni produttore di hardware. I tasti che più comunemente

Partners