XDG_RUNTIME_DIRsystemctl --userকাজ করার জন্য প্রয়োজনীয় ।
আমি সিস্টেমযুক্ত ব্যবহারকারী সেশনগুলি চালানোর জন্য ওবুন্টু সার্ভার 16.04 সেট আপ করেছি। এখন, এগুলি পরিচালনা করার চেষ্টা করার সময়, আমি দেখতে পাচ্ছি যে যখন কোনও ব্যবহারকারীকে sudo -u $user -iবা তার মাধ্যমেও পরিবর্তন করা হয় তখন su - $userপরিবেশটি XDG_RUNTIME_DIRসেট করে না , systemctl --userকাজ করা থেকে বিরত থাকে । যাইহোক, আমি যখন sshসরাসরি সেই ব্যবহারকারীটিতে প্রবেশ করি তখন এটি সঠিকভাবে সেট করা থাকে।
আমি যদি ডকুমেন্টেশনটি সঠিকভাবে বুঝতে পারি তবে libpam-systemdএটি ব্যবহারকারীর সেশন তৈরি করার সময় সেট করা উচিত । ব্যবহারকারীর স্লাইসটি সঠিকভাবে শুরু করা হয়েছে, যে ডিরেক্টরিটি XDG_RUNTIME_DIRনির্দেশ করতে হবে ( /run/users/$uid) এর উপস্থিত থাকা উচিত । আমি এটিকে কেবল হার্ডকোড করতে দ্বিধা বোধ করছি, বলুন, .bash_profileকারণ এটি হ্যাকি মনে হচ্ছে (যদিও কাজ করা হচ্ছে), যখন পামের যত্ন নেওয়া উচিত।
আমি, অবশ্যই, যোগ করতে পারেন XDG_RUNTIME_DIRকরার env_keepমধ্যে sudoers, কিন্তু যে মাত্র sudoing ব্যবহারকারীর পরিবেশ সংরক্ষণ হবে, যা না করলে আমি কী চাই। আমি লক্ষ্য ব্যবহারকারীর পরিবেশ চাই।
আমি যা সত্যিই ভাবছি, যদিও কীভাবে আসলটি সঠিকভাবে সেট আপ করা হয় sshতবে তা দিয়ে suবা হয় না sudo -i?
XDG_RUNTIME_DIRজন্য সেট করবে নাsudo? আমার ধারণা আমি তখন এটি সেট করেছিলাম ঠিক~/.profileতেমন হ্যাকি নয় isn't