এক সার্ভার থেকে অন্য সার্ভারে স্কিপ করবেন?


34

আমি আমার স্থানীয় কম্পিউটারকে বাইপাস করে একটি সার্ভার থেকে সরাসরি অন্য সার্ভারে ফাইলগুলি অনুলিপি করার চেষ্টা করছি।

আমি করেছিলাম

scp -r usrname@server1.com:~/data/* usrname@server2.com:~/data/
Password: 
Host key verification failed.
lost connection

এটা কি সম্ভব? আমি কীভাবে এটি ঠিক করতে পারি?


আপনি কি নিম্নলিখিত কমান্ডের আউটপুট পোস্ট করতে পারেন- scp -r -v usrname@server1.com: ~ / তথ্য / * usrname@server2.com: ~ / তথ্য /
বাস্তবিক

উত্তর:


55

দুটি সার্ভারের মধ্যে কোনও সংযোগ সম্ভব না হলে আমি প্রায়শই প্রায়শই ব্যবহার করি

scp -3 user@server1:/path/to/file user@server2:/path/to/file

সূত্র

-3 দুটি দূরবর্তী হোস্টের মধ্যে অনুলিপি স্থানীয় হোস্টের মাধ্যমে স্থানান্তরিত হয়। এই বিকল্পটি ব্যতীত দুটি দূরবর্তী হোস্টের মধ্যে ডেটা সরাসরি অনুলিপি করা হয়। নোট করুন যে এই বিকল্পটি অগ্রগতি মিটারটিকে অক্ষম করে।

ধরে নিচ্ছি আপনার উভয়ের সাথেই আপনার ভাল যোগাযোগ রয়েছে, এটি খুব ধীর নয়।


অতিরিক্ত হিসাবে যদি আপনার উভয় সার্ভারে বিশেষ বন্দরগুলি ব্যবহার করতে হয়: superuser.com/questions/686394/…
পিট

আপনি -rযদি কোনও ডিরেক্টরি অনুলিপি করেন তবে পতাকাটি যুক্ত করতে ভুলবেন না ।
টেলর এডমিস্টন

16

হ্যাঁ এটি সম্ভব, তবে কেবল যদি সেই নামটি ব্যবহার করে server1.comপৌঁছতে পারে server2.com। তা না হলে আপনি সম্ভবত একটি বার্তা পাবেন:ssh: connect to host server2 port 22: Connection refused

manজন্য পৃষ্ঠা scpপরিষ্কারভাবে বলে যে, এটি একটি নেটওয়ার্কে এবং যে হোস্ট সিস্টেমের মধ্যে কপি:

দুটি দূরবর্তী হোস্টের মধ্যে অনুলিপিও অনুমোদিত।

আপনার (একবার) যা sshকরা উচিত তা হ'ল username@server1.comসেখান sshথেকে আসা username@server2.com। হোস্ট কী ভেরিফিকেশন বার্তাটি করার সময় পরিত্রাণ পেতে আপনি হ্যাঁর সাথে পাবেন এমন সত্যতার প্রশ্নের উত্তর দিনscp

আপনাকে এর সাথে ফরওয়ার্ডিং এজেন্ট সক্ষম করতে হতে পারে:

scp -o "ForwardAgent yes" -r usrname@server1.com:~/data/* usrname@server2.com:~/data/

তবে নিশ্চিত হয়ে নিন যে আপনি ( man ssh_config) এর মধ্যে বিপদটি উপলব্ধি করেছেন


আমি শুধু sshথেকে ed server1.comথেকে server2.com, এবং আমি প্রকৃতপক্ষে প্রশ্নের উত্তর এবং সফল হয়েছে। তারপরে, আমি আমার স্থানীয় কম্পিউটারে ফিরে যাই, আবার এটি করি এবং server2.comপাসওয়ার্ড প্রম্পটটি পাই । তবে এটি এখানে ব্যর্থ হয়:Permission denied (publickey,keyboard-interactive). lost connection
সিবস জুবিলিং

1
@ সিবসগাম্বলিং আমি মনে করি এটি আপনার ব্যক্তিগত কী ফরোয়ার্ড করার উপর নির্ভর করে। আপনি কি কোনও পাসওয়ার্ড না দিয়ে উভয় সার্ভারে লগইন করতে পারেন? আপনি কোনও পাসওয়ার্ড server1না server2দিয়েই লগইন করতে পারবেন । আপনাকে "ফরওয়ার্ড এজেন্ট হ্যাঁ" সেট করতে হতে পারে।
অ্যান্থন

1

প্রথমত আপনাকে যাচাই করতে হবে যে আপনি কোনও ত্রুটি ছাড়াই সার্ভার 2 এ এসএসএস করতে সক্ষম হচ্ছেন, যদি আপনি একই ত্রুটি পান তবে দয়া করে ফাইলটি খুলুন ~/.ssh/known_hostsএবং সার্ভার 2 কীটি অনুসন্ধান করুন এবং এটি মুছুন।

তারপরে আপনি হোস্টের নাম দিয়ে সার্ভারটি পিং করতে সক্ষম কিনা তা পরীক্ষা করে দেখুন

যদি না হয় তবে দয়া করে নীচে উল্লিখিত হিসাবে উভয় সার্ভার হোস্ট ফাইল সম্পাদনা করুন

 #vi /etc/hosts  
 server1 192.186.x.x  
 server2 192.186.x.xx   
 :wq   ---> to save  

আপনি এই সিডি দিয়ে ফাইলটি সার্ভার 2 এ অনুলিপি করতে চাইলে লোকেশন করুন

scp file_name user@server2:/path_to_the_directory ---> আপনাকে হোস্ট নামের পরিবর্তে আইপি ব্যবহার উল্লেখ করতে পারেন পারেন -Rএকটি ডিরেক্টরি কপি করা।


0

~/.ssh/known_hostsউভয় সার্ভারের জন্য যথাযথ রেকর্ড রয়েছে কিনা তা পরীক্ষা করে দেখুন

সার্ভার 1 এর সার্ভার 2-এর সঠিক ~/.ssh/known_hostsরেকর্ড রয়েছে কিনা তাও পরীক্ষা করে দেখুন


-2

আপনি এই সার্ভার থেকে অন্য সার্ভারে অনুলিপি করতে নীচের কমান্ডটি ব্যবহার করতে পারেন:

scp source_user@source_remote_host:/usr/bin/mysql_backup.sh \
         target_user@target_remote_host:/var/tmp/
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.