কমান্ড লাইনের সাহায্যে সাম্বার উপর ফাইল পাঠানো


17

আমি ভাবছিলাম যে কমান্ড লাইনের মাধ্যমে কোনও ক্লায়েন্ট মেশিনে আইটেম প্রেরণের জন্য সাম্বা ব্যবহার করার কোনও উপায় আছে (আমি সাম্বা সার্ভার থেকে ফাইলগুলি প্রেরণ করা প্রয়োজন)। আমি জানি আমি সর্বদা ব্যবহার করতে পারি scpতবে প্রথমে আমি ভাবছিলাম যে সাম্বার সাথে এটি করার কোনও উপায় আছে কিনা। ধন্যবাদ!

উত্তর:


19

smbclientসাম্বার সাথে আসা একটি প্রোগ্রাম ব্যবহার করুন :

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

অনেকগুলি পতাকা রয়েছে, যেমন -Uদূরবর্তী ব্যবহারকারীর নাম স্থানীয় নামের থেকে আলাদা হতে দেয়।

যে সমস্ত সিস্টেমে সাম্বাকে একাধিক বাইনারি প্যাকেজগুলিতে বিভক্ত করে, আপনি সাম্বা সার্ভারগুলি ইনস্টল করে থাকতে পারেন এখনও নিখোঁজ রয়েছে smbclient। যেমন একটি ক্ষেত্রে, নামে একজন প্যাকেজের জন্য আপনার প্যাকেজ সংগ্রহস্থলের পরীক্ষা smbclient, samba-clientবা অনুরূপ।


আমি পেতে থাকিConnection to [IP] failed (Error NT_STATUS_CONNECTION_REFUSED)
t0xic

আমি যখন //serverউপরে লিখেছি , আমার অর্থ আপনি কী ক্লায়েন্ট মেশিনকে কল করছেন যা এই ক্ষেত্রে সার্ভার হিসাবে অভিনয় করছে । এটি কাজ করার জন্য এটির একটি ফোল্ডার বা এসএমবির মাধ্যমে ড্রাইভ থাকা দরকার।
ওয়ারেন ইয়ং

ওহ ... এটি আমার পক্ষে সত্যিই কাজ করবে না। আমি ঠিক কি করবো ব্যবহার করব scp। যাইহোক ধন্যবাদ!
t0xic

@ ভিজোবো 8: আপনি ক্লায়েন্ট মেশিনগুলিতে একটি তৃতীয় পক্ষের এসসিপি সার্ভার ইনস্টল করতে পারেন, তবে আপনি উইন্ডোজ এক্সপ্লোরারের কোনও ফোল্ডারে ডান ক্লিক করতে পারবেন না এবং "ভাগ করুন" বলতে পারবেন না?
ওয়ারেন ইয়ং

আমার একটি নির্দিষ্ট প্রকল্প আমি করছি যেখানে আমি চাই সবকিছু স্বয়ংক্রিয় হোক।
t0xic

12

কার্ল 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
ম্যাথিয়াস ব্রাউন

এই নিখুঁত!
সাইকোকোজিক

2

সত্যিই কাজ করা এটি হবে:

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

লোকাল ফাইল - স্থানীয় মেশিন থেকে ফাইল

রিমোট-ফাইল - রিমোট মেশিনে এই ফাইলটিতে অনুলিপি করুন


0

শেয়ারটি ইতিমধ্যে মাউন্ট করা থাকলে অন্য উপায় ফিউজ

আপনি যদি ইতিমধ্যে নটিলাস , কাজা বা অন্য কোনও ফাইল ম্যানেজার দ্বারা চালিত শেয়ারগুলি সহ কিছু ডেস্কটপ চালাচ্ছেন তবে আপনি ফিউজ ব্যবহার করতে পারেন (পরিবর্তে এসএমবিসিলেট ) ।

যদি তা হয় তবে আপনি এখানে কিছু মাউন্টপয়েন্টগুলি পেতে পারেন:

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.