Відповіді:
Використовуйте smbclient
програму, яка постачається разом із Samba:
$ smbclient //server/share -c 'cd c:/remote/path ; put local-file'
Існує багато прапорів, наприклад, -U
щоб дозволити віддалене ім'я користувача відрізнятися від локального.
У системах, що розділяють Samba на кілька двійкових пакетів, можливо, у вас встановлені сервери Samba ще відсутні smbclient
. В такому випадку, перевірте репозиторій пакетів для пакета з ім'ям smbclient
, samba-client
або аналогічним.
//server
вище, я маю на увазі те, що ви викликаєте клієнтську машину, яка в даному випадку виступає як сервер. Для цього для цього потрібно мати папку або диск, яким можна ділитися через SMB.
scp
. Спасибі все одно!
curl підтримує smb
протокол з v7.40 :
curl --upload-file /path/to/file.ext -u 'DOMAIN\Username' smb://172.16.17.52/ShareName/
curl --upload-file /home/me/local_file.txt --user "OurWindowsDomain\UserName:thePassword" smb://172.16.17.52/ShareName/Path/To/Remote/Dir
. Я отримав список усіх доступних імен спільного доступу доsmbclient -L //172.16.17.52 -U UserName%thePassword -W OurWindowsDomain
Дійсно працює це:
$ smbclient //server/share -c 'cd c:/remote/path ; put local-file remote-file'
local-file - файл з локальної машини
віддалений файл - скопіюйте цей файл на віддаленій машині
Якщо ви використовуєте робочий стіл з папками, які вже змонтовані nautilus , caja або будь-яким іншим файловим менеджером , ви можете використовувати запобіжник (замість smbclient ).
Якщо це так, ви можете знайти деякі точки кріплення на:
ls -l /run/user/$UID/gvfs/
drwx------ 1 charlie charlie 0 Feb 2 10:04 smb-share:server=hostname,share=documents
Так, це точка кріплення !
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
І ви можете використовувати його як звичайну файлову систему.
cp $HOME/myfile \
/run/user/$UID/gvfs/smb-share:server=hostname,share=documents/destpath/
Connection to [IP] failed (Error NT_STATUS_CONNECTION_REFUSED)