আমাকে সাহায্য করার জন্য @ জেনসডকে ধন্যবাদ, @ আনক্সনাট আপনার মন্তব্যের ভিত্তিতে আমি সমস্যাটি বের করতে সক্ষম হয়েছি।
সমাধান দুটি পদক্ষেপ প্রয়োজন:
- ডিসপ্লে ভেরিয়েবলটি সঠিকভাবে সেট করা উচিত।
- দূরবর্তী সার্ভারে ssh'ing করার সময়, -X সুইচটি চালু থাকতে হবে
আমার আগের চেষ্টাগুলির মধ্যে এই দুটি শর্তের একটি বা উভয়েরই অভাব রয়েছে।
যাইহোক, পরবর্তী ব্যবহারকারীরা এখানে যা দেখেন তাদের জন্য আমি কী বলতে চাইছি তা দেখানোর উদাহরণ examples
মামলা 1
আমার লোকাল মেশিনে কোনও ডিসপ্লে ভেরিয়েবল সেট থাকবে না। এবং তারপরে আমি এক্স-স্যুইচ দিয়ে রিমোট সার্ভারে ssh করব এবং তারপরে মৃত্যুদন্ড কার্যকর করার চেষ্টা করব xclock
।
Black@Black-PC ~
$ echo $DISPLAY
## the blank means that DISPLAY variable has not been specified##
Black@Black-PC ~
$ ssh -X kwagjj@$labserver -p 122
Last login: Tue Jun 24 22:23:13 2014 from
[kwagjj@James5 ~]$ xclock
Error: Can't open display:
[kwagjj@James5 ~]$ setenv | grep $DISPLAY
DISPLAY: Undefined variable.
যেমন আপনি দেখতে পাচ্ছেন Error: Can't open display:
দূরবর্তী সার্ভার টার্মিনালে একটি ত্রুটি দেখানো হয়েছে।
case2
এবার, লোকাল মেশিনে, আমি DISPLAY ভেরিয়েবলটি নির্দিষ্ট করব। তবে যখন আমি শশ করছি তখন আমি-এক্স সুইচটি চালু করব না। ফলাফলটি ব্যর্থতা হবে:
Black@Black-PC ~
$ export DISPLAY=:0.0
Black@Black-PC ~
$ echo $DISPLAY
:0.0
Black@Black-PC ~
$ ssh kwagjj@$labserver -p 122
Last login: Tue Jun 24 22:33:32 2014 from
[kwagjj@James5 ~]$ xclock
Error: Can't open display:
[kwagjj@James5 ~]$ setenv | grep DISPLAY
[kwagjj@James5 ~]$
শুরুতে আপনি দেখতে পাবেন যে আমি ডায়ালস ভেরিয়েবলটি সঠিকভাবে সেট করেছি। তবুও, ssh'ing (-X সুইচ ব্যতীত) এর পরে এক্সক্লকটি কার্যকর হয় না।
* এর সাথে একটি আলাদা ফলাফল setenv | grep DISPLAY
এখানে দেখা যাবে (কেস 1 এর সাথে তুলনা করুন)। কেস 2 এ, ফলাফলটি কেবল ফাঁকা। অন্যদিকে, এই কমান্ড লাইনের কেস 1 এর ফলাফল DISPLAY: undefined variable
.... আমি জানি না যে এই পার্থক্যটি কীভাবে ঘটেছিল তবে আমি একটি শিকারী পাচ্ছি যা এর সাথে সম্পর্কিত যে আপনি উভয় শর্ত পূরণ করেছেন কিনা 1 বা 2 ।
case3
এবার আমি স্থানীয় মেশিনে ডায়ালস ভেরিয়েবলটি সঠিকভাবে নির্দিষ্ট করব এবং আমার-এক্স স্যুইচ অন করে দূরবর্তী সার্ভারেও এসএসএস করব।
Black@Black-PC ~
$ echo $DISPLAY
:0.0
Black@Black-PC ~
$ ssh -X kwagjj@$labserver -p 122
Warning: untrusted X11 forwarding setup failed: xauth key data not generated
Warning: No xauth data; using fake authentication data for X11 forwarding.
Last login: Tue Jun 24 22:37:27 2014 from
[kwagjj@James5 ~]$ xclock &
[1] 9174
[kwagjj@James5 ~]$ setenv | grep DISPLAY
DISPLAY=localhost:11.0
[kwagjj@James5 ~]$
এই সেটিং সহ, xclock
কাজ !! আমি মিথ্যা বলছি না তা প্রমাণ করার জন্য এখানে একটি স্ক্রিনশট রয়েছে।
এক্সক্লোর সফলভাবে আমার স্থানীয় মেশিনে প্রদর্শিত হয়।
আবার, setenv | grep DISPLAY
এই ক্ষেত্রে ফলাফল দেখুন। এটি এখন দেখায় DISPLAY=localhost:11.0
। আমি যা জানি তা থেকে, এটি প্রাক্তন ফাইল ফাইলের এমআইটি-ম্যাজিক-কুকির সাথে সম্পর্কিত তবে যেহেতু আমি এ সম্পর্কে বেশি কিছু জানি না আমি আর আর যেতে পারব না।
উপসংহার: উপরের তিনটি ক্ষেত্রে থেকে আমরা নিশ্চিত করতে পারি যে রিমোট এক্স উইন্ডোজ যথাযথভাবে প্রদর্শিত হতে পারে, উভয়ই স্থানীয় মেশিনের ডিসপ্লে ভেরিয়েবল এবং ২. এসএসএস -X
সুইচটি অবশ্যই সঠিকভাবে সেট করা উচিত। অবশ্যই, রিমোট সার্ভারের X11 ফরওয়ার্ডিংয়ের অনুমতি দেওয়া উচিত।