Copy / .ssh / id_rsa.pub অনুলিপি করতে অক্ষম


117

আমি এসএসএইচ কী তৈরির ক্ষেত্রে অনুসরণ করছি , এটি বলে

sudo apt-get ইনস্টল এক্সক্লিপ

# ডাউনলোড এবং এক্সক্লিপ ইনস্টল করে। আপনার যদি না থাকে তবে আপনার apt-getঅন্য ইনস্টলার ব্যবহার করার প্রয়োজন হতে পারে (যেমন yum)

xclip --sel ক্লিপ <~ / .ssh / id_rsa.pub

# Id_rsa.pub ফাইলের সামগ্রীগুলি আপনার ক্লিপবোর্ডে অনুলিপি করে

কিন্তু আমি চালাতে xclip -sel clip < ~/.ssh/id_rsa.pubআমি পেতে Error: Can't open display: (null) সমস্যা কী? আমি প্রায় googled কিন্তু এটি সম্পর্কে কিছুই পাইনি


কি echo $DISPLAYবলে?
ফ্রেড ফু

কিছুই নেই। আমি এই কমান্ডটি সার্ভারে ssh- এর মাধ্যমে চালাচ্ছি
মাইকেল পাচেকো

উত্তর:


123

DISPLAY=:0 xclip -sel clip < ~/.ssh/id_rsa.pubআমার জন্য কাজ করে না ( ubuntu 14.04), তবে আপনি ব্যবহার করতে পারেন:

cat ~/.ssh/id_rsa.pub

আপনার পাবলিক কী পেতে


11
যে কেউ ssh
dval এর

23
আপনি যখন একটি দীর্ঘ ফাইল অনুলিপি করার চেষ্টা করছেন ব্যতীত।
ফ্লাভিয়ান হাটবোইস

26
@ ডভাল, আমি সম্মতি দিচ্ছি না যে এটি 1 নম্বর উত্তর হবে, কারণ প্রশ্নটিতে ব্যাশের xclipমধ্যে এসএসএইচ কীটি প্রদর্শন না করে ব্যবহারের উল্লেখ রয়েছে cat ~/.ssh/id_rsa.pub। তবে এটি সমস্যা সমাধানে সহায়তা করে, কারণ যখন এটি প্রদর্শিত হয় তখন আপনি মানটি অনুলিপি করতে পারেন।
নিক সুমেকো

123
কি?! এটি কীভাবে এক্সক্লিপ কাজ না করে সমস্যার সমাধান করতে পারে?
ভ্যাটো

26
আসলে, এই উত্তরটি অত্যন্ত বিভ্রান্তিকর।
হাসান ক্যান সরল

78

এই প্রশ্নের তারিখের ভিত্তিতে মূল পোস্টারটি লিনাক্সের জন্য উইন্ডোজ সাবসিস্টেম ব্যবহার করে না । তবে আপনি যদি হন এবং আপনি একই ত্রুটিটি পান তবে নিম্নলিখিত বিকল্পগুলি কাজ করে:

clip.exe < ~/.ssh/id_rsa.pub

উইন্ডোজ ক্লিপ.এক্সে নির্দেশ করার জন্য এই পৃষ্ঠার জন্য ধন্যবাদ (এবং আপনাকে ".exe" টাইপ করতে হবে) বাশ শেল থেকে চালানো যেতে পারে।


8
আপনি পাইপগুলি cat ~/.ssh/id_rsa.pub | clip.eseকেবল কাজের জন্যও ব্যবহার করতে পারেন
চিরিজ

2
@ চিরিজ আমার কি মনে হয় আপনি "এক্সি" মানে "ইএস" নন?
মার্ক স্টোবার

3
ওহ হ্যাঁ, দুঃখিত যে এটি কেবল একটি টাইপো ছিল, এটি cat ~/.ssh/id_rsa.pub | clip.exe। যে ইশারা জন্য ধন্যবাদ।
ক্রিজ

1
@ ময়তাবা কন্ট্রোল শিফট ভি।
জোয়ানকোমাসএফডিজে

1
এবং যারা সমস্ত প্ল্যাটফর্মে একক কমান্ড পছন্দ করেছেন তাদের জন্য: এটি আপনার ~/.bashrcবা ~/.bash_profile: এ যুক্ত করুন alias pbcopy="clip.exe"। এবং পাইপটি ঠিকঠাক |কাজ করার জন্য @ চিরিজকে ধন্যবাদ জানায় ।
ডিও ফুং

37

এটি এখানে পোস্ট না করা উত্তরের খুব ভাল ছিল । এটি জিলস থেকে এসেছে , আসকবুন্টুর সহযোগী ব্যবহারকারী :

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

আমি ধরে নিয়েছি যে আপনি লিনাক্স চালিত কোনও মেশিনের থেকে এসএসএইচ দিয়ে রিমোট সার্ভারের সাথে সংযোগ করছেন। X11 ফরোয়ার্ডিং ক্লায়েন্ট কনফিগারেশন এবং সার্ভার কনফিগারেশনে উভয়ই সক্ষম হয়েছে তা নিশ্চিত করুন। ক্লায়েন্ট কনফিগারেশন, আপনি লাইন থাকতে হবে ForwardX11 yesমধ্যে ~/.ssh/configএটি ডিফল্ট আছে, অথবা বিকল্প পাস -Xকরার sshঠিক যে সেশনের জন্য কমান্ড। সার্ভার কনফিগারেশনে আপনার লাইনটি X11Forwarding yesথাকা দরকার /etc/ssh/sshd_config(এটি উবুন্টুতে ডিফল্টরূপে উপস্থিত থাকে)।

কিনা X11 ফরওয়ার্ডিং সক্রিয় করা হয় পরীক্ষা করার জন্য, মান তাকান DISPLAYএনভায়রনমেন্ট ভেরিয়েবল: echo $DISPLAY। আপনার মতো মান দেখতে হবে localhost:10(দূরবর্তী মেশিনে চলমান অ্যাপ্লিকেশনগুলিকে একই মেশিনে চলমান একটি ডিসপ্লেতে সংযোগ করতে বলা হয়, তবে সেই ডিসপ্লে সংযোগটি আসলে এসএসএইচ দ্বারা আপনার ক্লায়েন্ট-সাইড ডিসপ্লেতে ফরোয়ার্ড করা হয়েছে)। মনে রাখবেন যে যদি DISPLAYসেট না করা থাকে তবে এটি ম্যানুয়ালি সেট করার কোনও ব্যবহার নেই: ফরোয়ার্ডিং স্থানে থাকলে পরিবেশের পরিবর্তনশীল সর্বদা সঠিকভাবে সেট করা থাকে। আপনি, SSH সংযোগের সমস্যাগুলি নির্ণয় করার প্রয়োজন হলে, বিকল্প পাস -vvvকরার sshকি ঘটছে একটি বিস্তারিত ট্রেস জন্য।

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

দ্বারা গিলেজ askubuntu থেকে


17

আপনি যদি রিমোট হোস্টে এক্সক্লিপ ব্যবহার করার চেষ্টা করছেন তবে আপনার এসএসএস কমান্ডটিতে কেবল এক্স যোগ করুন

ssh user@host -X

আরও বিস্তারিত তথ্য এখানে পাওয়া যাবে: https://askubuntu.com/a/305681


10

আপনি লিঙ্কযুক্ত ডকুমেন্টেশন পড়েছেন। একেবারে বোকা! xclipকেবল একটি ক্লিপবোর্ড। আপনি কীটি পেস্ট করার জন্য অন্য উপায়গুলি খুঁজে পাবেন ... (আমি নিশ্চিত)


যদি আপনি কোনও গ্রাফিকাল এক্স সেশনটির ভিতরে থেকে কাজ না করে থাকেন তবে আপনাকে $DISPLAYপরিবেশের ভারটি কমান্ডের মধ্যে দিয়ে যেতে হবে। এটি এইভাবে চালান:

DISPLAY=:0 xclip -sel clip < ~/.ssh/id_rsa.pub

অবশ্যই :0আপনি যে ডিসপ্লেটি ব্যবহার করছেন তার উপর নির্ভর করে। আপনার যদি একটি সাধারণ ডেস্কটপ মেশিন থাকে তবে সম্ভবত এটিই সম্ভবত:0


7
আমি পেতে Error: Can't open display: :0। যাইহোক, আমি গিট ব্যাশের মাধ্যমে একটি ভিপিএস অ্যাক্সেস করছি। ভিপিএস উবুন্টু, লোকাল মেশিনটি
উইন্ডোজ

আমি তাই মনে করি. তবে আমি উবুন্টুর সাথে পরিচিত নই। আপনি আমাকে কিছু পরামর্শ দিতে পারেন?
cqcn1991

লোল, আমাকে মোটেও বেতন দেওয়া হচ্ছে না। আমি বিড়াল ইন্টাড ব্যবহার করি তবে এটি নিজেই ফমর্ট করতে হবে
cqcn1991


1
DISPLAY=:0 xclipকোনও কাজ থেকে ক্লিপবোর্ড সাফ করার জন্যও ব্যবহার করে । আমার ক্ষেত্রে, আমি atঅনুলিপি করার দুই মিনিট পরে ক্লিপবোর্ডটি সাফ করতে ব্যবহার করছি ।
মাজগিস

9

এটি ব্যবহার করে দেখুন এটি একটি কবজির মতো কাজ করবে। আমার একই ত্রুটি ছিল তবে এই পদ্ধতির ফলে আমার পক্ষে কৌশলটি কার্যকর হয়েছিল:

ssh USER@REMOTE "cat file"|xclip -i

8

নিম্নলিখিতগুলিও আমার জন্য কাজ করছে:

ssh <user>@<host>  "cat <filepath>"|pbcopy 

একটি পেম ফাইল ব্যবহার করেও কাজ করে: ssh -i /path/myapp.pem <user> @ <host> "বিড়াল <ফিলিপথ>" | পিবিসিপি
আলেমল

4
আমি ভেবেছিলাম পিবিসিপি একটি ম্যাক জিনিস, লিনাক্স নয়
আলেকজান্ডার মিলস

1

ব্যবহারকারীর দ্বারা এই কমান্ডটি রুট করুন: ssh user_to_acces @ hostName -X

user_to_acces = ব্যবহারকারী হোস্টনাম = হোস্টনাম মেশিন

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.