コマンドラインを使用してSamba経由でファイルを送信する


17

Sambaを使用して、コマンドライン経由でクライアントマシンにアイテムを送信する方法があるかどうか疑問に思っていました(Sambaサーバーからファイルを送信する必要があります)。私はいつも使用できることを知っていますscpが、最初にSambaでそれを行う方法があるかどうか疑問に思っていました。ありがとう!

回答:


19

smbclientSambaに付属するプログラムを使用します。

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

-Uリモートユーザー名をローカルのものと異なるものにするなど、多くのフラグがあります。

Sambaを複数のバイナリパッケージに分割するシステムでは、Sambaサーバーがインストールされていても、まだインストールされていない場合がありますsmbclient。こうしたAの場合には、名前のパッケージのためにあなたのパッケージリポジトリをチェックしsmbclientsamba-clientまたは類似。


取得し続けるConnection to [IP] failed (Error NT_STATUS_CONNECTION_REFUSED)
-t0xic

私が//server上で書いたとき、私はあなたがクライアントマシンと呼んでいるものを意味します、この場合、それはサーバーとして機能しています。これを機能させるには、SMBを介して共有されるフォルダーまたはドライブが必要です。
ウォーレンヤング

ああ...それは私には本当に機能しません。使用するだけだと思いますscp。とにかくありがとう!
t0xic

@ fleebow8:サードパーティのSCPサーバーをクライアントマシンにインストールできますが、Windowsエクスプローラーでフォルダーを右クリックして「共有」と言うことはできませんか?
ウォーレンヤング

すべてを自動化したい特定のプロジェクトがあります。
t0xic

12

curlはv7.40以降smbプロトコルをサポートしています: 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
Matthias Braun

これは完璧です!
サイコゾイック

2

本当に機能するのはこれです:

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

local-file-ローカルマシンのファイル

remote-file-リモートマシン上のこのファイルにコピーします


0

共有が既にヒューズによってマウントされている場合の別の方法

既にnautiluscaja、または他のファイルマネージャーによってマウントされた共有を使用してデスクトップを実行している場合は、smbclientの代わりにfuseを使用できます。

その場合、次の場所にいくつかのマウントポイントがあります。

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/

0

smbclient Version 4.9.5-Debianそして、curl 7.64.0(私のために動作しませんでしたLinux kali 4.19.0-kali4-amd64

これは:

smbmap -H server -u username -p password --upload local-filename share\\remote-filename
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.