আমার ব্যবহারের ক্ষেত্রে হ'ল আমার একটি শিরোনামহীন সার্ভার রয়েছে যা সফ্টওয়্যার বিকাশটি সম্পাদিত হয়। আমি এটির সাথে এসএসএইচ সংযোগগুলির জন্য আমি X11 ফরোয়ার্ডিংটি কার্যকরভাবে সক্ষম করি, তবে ধীর সংযোগের সাথে আমি দূরবর্তী অবস্থানের জন্য পারি না।
আমার গিট শংসাপত্রগুলির জন্য আমার সুরক্ষিত সঞ্চয়স্থান এবং ক্যাচিং দরকার যেহেতু আমি নিয়মিত একটি গাছে ১৮-২০ টি সংগ্রহস্থল নিয়ে কাজ করি, তাই আমি গিট-শংসাপত্র-জেনোম-ক্যারিংকে গিট শংসাপত্র হিসাবে ব্যবহার করি he জিনোম-কিরিং-ডেমনকে। সমাধানগুলি পরীক্ষা করার জন্য, আমি একটি মনিটরের সাথে একটি পিসি সেটআপ করেছি, সিস্টেমে ডিফল্টরূপে কাজ করা কীরিংটি নিশ্চিত করেছি, তারপরে এসএসএইচ দিয়ে চেষ্টা করেছি। এটি এক্স 11 ফরওয়ার্ডিংয়ের সাথে কাজ করে তবে এটি ছাড়া কাজ করে না।
আমি যখন এক্স 11 ফরওয়ার্ডিং ছাড়াই সংযুক্ত থাকি, ক্যারিংটি জিজ্ঞাসা করা হলে নিম্নলিখিত ত্রুটির ফলাফল হয় এবং কমান্ড-লাইনের অনুরোধে টুলটি পিছনে পড়ে:
** (process:18305): CRITICAL **: Error communicating with gnome-keyring-daemon
তদন্তে জানা গেছে যে বেস সমস্যাটি হ'ল জিনোম-কিরিং-ডেমন সংযোগগুলি এটির সাথে কথা বলার জন্য ডিবিস ব্যবহার করবে বলে আশা করছে। এক্স 11 সেশন না থাকলে ডিবিবাস শুরু হয় না, তাই জিনোম-কিরিং-ডেমন এবং লিবग्नোম-কীরিংয়ের সাথে সংযোগ স্থাপনের জন্য কোনও সাধারণ ডিবিস বাস নেই।
অন্যরা এই সমস্যার জন্য পোস্ট করেছেন এমন দুটি সমাধান আমি পেয়েছি, যদিও উভয়ই আমার পক্ষে সঠিকভাবে কাজ করে না।
- এক্স 11 ব্যবহার করে এমন একটি বিদ্যমান সেশন থেকে একটি ডিবিইউএস পোর্ট পান
- ম্যানুয়ালি একটি নতুন ডিবিইএস বন্দর চালু করুন
কোনও বিদ্যমান ডিবিইএস বন্দরে সংযুক্ত করার সময়, বেস ধারণাটি একটি বিদ্যমান লগইন সেশনের পিআইডি সন্ধান করা, সেই পিআইডি জন্য পরিবেশকে প্রকফ থেকে ডাম্প করা, এটি অনুসন্ধান DBUS_SESSION_BUS_ADDRESS
এবং বর্তমান পরিবেশে রফতানি করা। যেহেতু সেশনগুলির প্রত্যেকটি দ্বারা ব্যবহৃত হচ্ছে ডিবিইএস বাস প্রকাশের জন্য এটি পরিবর্তনশীল, তাই এটি নির্ধারণের ফলে সেশনের সমস্ত কিছুকে একটি সাধারণ ডিবিইএস বাসে যোগাযোগ করার সুযোগ দেওয়া উচিত, যদিও এটি বাসটি একটি ভিন্ন সেশনের সাথে সম্পর্কিত।
সূত্রগুলি এখানে:
https://ubuntuforums.org/showthread.php?t=1059023
https://ask.fedoraproject.org/en/question/45246/error-communicating-with-gnome-keyring-daemon-in-ssh-
ssh লগইনে কার্যকর করা হচ্ছে আমার .bashrc এ সেশন / কোড যুক্ত হয়েছে:
if [ -z "$DBUS_SESSION_BUS_ADDRESS" ] ; then
local myPID=`pgrep "(.*session|fluxbox)" | head -n1`
if [ -n "$myPID" ] ; then
local myVar=`cat /proc/${myPID}/environ | grep -z "^DBUS_SESSION_BUS_ADDRESS=" | sed -e 's/DBUS_SESSION_BUS_ADDRESS=//'`
if [ -n "$myVar" ] ; then
export DBUS_SESSION_BUS_ADDRESS=$myVar
fi
fi
fi
দ্বিতীয় পদ্ধতি, অধিবেশনটির জন্য ম্যানুয়ালি ডিবিএস চালু করা, dbus-launch
একটি নতুন অধিবেশন তৈরি এবং DBUS_SESSION_BUS_ADDRESS
পরিবেশের জন্য সেট স্থাপন করা জড়িত , তারপরে জিনোম-কীরিং-ডেমনকে সমস্ত প্রয়োজনীয় পরিষেবাদি দিয়ে শুরু করা যাতে এটি আমাদের তৈরি ডিবিইএস বাস ঠিকানাটি দেখতে পাবে বরং খালি বাসের ঠিকানা। এই সমাধানটির জন্য প্রতি সিস্টেমের জন্য প্রতিটি উদাহরণের চেয়ে সেশন প্রতি এক দৃষ্টান্ত চালনার জন্য জিনোম-কিরিং-ডেমন পরিবর্তন করার প্রয়োজন হতে পারে, তবে এটি পরিষ্কার নয়।
উত্স:
8 নম্বর দিয়ে শুরু করা: https://support.wandisco.com/index.php?/ জ্ঞানব্যাস / আর্টিকেল / ভিউ / 362/17/ how- to-setup-encrypted-svn-password-st સંગ્રહ- using-gnome- কীরিং-ইন-আন-এসএস-সেশন
কীভাবে আপগ্রেডের ক্ষেত্রে পরিবর্তনগুলি না হারিয়ে ডিবিএস সেবার "এক্সিকিউটি" লাইনটি পরিবর্তন করতে হয়
আমার .bashrc এ কোডটি এসএসএস লগইনে কার্যকর করা হচ্ছে:
# then DBUS wasn't started for this session and needs to be
if [ -z "$DBUS_SESSION_BUS_ADDRESS" ] ; then
# start a new dbus session and make sure the variables are exported (automatic output)
eval `dbus-launch --sh-syntax`
# make sure gnome-keyring-daemon is using all the necessary components (it may not be by default)
# Capture the output, which is a series of variable setting commands, one on eachline, and
# export them while setting them
while read -r LINE
do
export $LINE
done <<< $(gnome-keyring-daemon --start --components=gpg,pkcs11,secrets,ssh)
fi
উভয় সমাধান একই ব্যর্থ ফলাফল দেয়। জিনোম-কিরিং-ডেমনটির সাথে তাত্ক্ষণিকভাবে যোগাযোগ করা যায় না এমন নির্দেশ করে ত্রুটি তৈরি করার পরিবর্তে প্রক্রিয়াটি কিছু সময়ের জন্য স্তব্ধ হয়ে যায় এবং তারপরে এই আউটপুটটি উত্পাদন করে:
Gkr-Message: secret service operation failed: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
** (process:31155): CRITICAL **: Error communicating with gnome-keyring-daemon
জিনোম-কীরিং-ডেমন কীভাবে ডিবিইউএসের সাথে ইন্টারঅ্যাক্ট করছে সে সম্পর্কে আমি স্পষ্ট নই, তবে ত্রুটির দ্বিতীয় সেটটি থেকে এটি পরিষ্কার হয়ে গেছে যে এটি একটি নতুন নির্মিত ডিবিইএস বাসের মাধ্যমে পৌঁছানো যায় না, বা কোনও ভিন্ন ডিবিইএস বাসে ক্রস প্রক্রিয়া করে। আমি যা কিছু পেয়েছি তার থেকে জানা যায় যে জিনোম-কিরিং-ডেমনকে ডিবিইউস এর আগে শুরু করা প্রয়োজন হতে পারে তবে এটি ব্যবহারের ক্ষেত্রে (লিবিগনোম-কীরিং) বা ডিমন কিনা তা পরিষ্কার নয়।
আমি কীভাবে এই কাজ করব?