টার্মিনালে নন-রুট ব্যবহারকারী হিসাবে লগইন করুন


18

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

আমি চেষ্টা করেছিলাম

su -- username

এবং তারপরে পাসওয়ার্ডটি চাবি দিলে এটি কোনও ত্রুটি তৈরি করে নি তবে কমান্ডের প্রম্পটে কোনও দৃশ্যমান পরিবর্তন দেখা যায় নি এটি এখনও আমার নাম @ মাইহোস্ট বলে। হোম ডিরেক্টরিটি আমার নামটি ছিল এবং নতুন লগইন হিসাবে আমি লগইন করার চেষ্টা করিনি।

আমি - এটি এখন যেমন আপাত - লিনাক্স / উবুন্টুতে বেশ অনভিজ্ঞ, তাই কোনও তথ্য স্বাগত।

উত্তর:


18

আপনি কোন ব্যবহারকারীর কাছে পরিবর্তন করতে চান?

সমস্যাটি হ'ল আপনি এমন কোনও ব্যবহারকারীকে "su" দেওয়ার চেষ্টা করছেন যার কাছে শেল বরাদ্দ নেই। আপনি যখন সফ্টওয়্যার ইনস্টল করেন তখন সিস্টেম দ্বারা তৈরি বা কিছু প্যাকেজ দ্বারা তৈরি বেশিরভাগ ব্যবহারকারী যেমন মাইএসকিএল, ডাল ইত্যাদি a

কোনও /etc/passwdফাইলের মধ্যে তাকিয়ে কোনও ব্যবহারকারীর শেল রয়েছে কিনা তা আপনি পরীক্ষা করে দেখতে পারেন , প্রতিটি ব্যবহারকারীর লাইনের শেষটি দেখুন, যদি /bin/falseএটির অর্থ এটির শেল নেই তবে এটির মতো /bin/bashবা অন্য কোনও কিছু থাকলে শেল, তারপরে আপনার সেই ব্যবহারকারীর মধ্যে "su" সক্ষম হওয়া উচিত।

যখন আমি বলি "শেল বরাদ্দ" এটির মূলত অর্থ এটিতে যে "শেল অ্যাক্সেস" রয়েছে

তবুও যদি ব্যবহারকারীর শেল অ্যাক্সেস না থাকে তবে আপনি সর্বদা সেই ব্যবহারকারী হিসাবে কমান্ড কার্যকর করতে পারেন

 sudo -u user command

তবুও যদি ব্যবহারকারীর শেল অ্যাক্সেস না থাকে তবে আপনি সর্বদা "sudo -u ইউজার কমান্ড" দিয়ে সেই ব্যবহারকারী হিসাবে আদেশগুলি কার্যকর করতে পারেন
স্যাম

পরিশেষে -s /bin/bashআপনার টু suআদেশ বা ব্যবহারের chsh -u username -s /bin/bashএকটি ব্যবহারকারীর জন্য শেল পরিবর্তন। এটির যে সুরক্ষা প্রভাব থাকতে পারে সে সম্পর্কে সাবধান থাকুন।
gertvdijk

7

আপনার যদি সুডো অ্যাক্সেস থাকে তবে আমি সুপারিশ করব

sudo su username -

এটি মূলত একই জিনিসটি করে তবে কেবল আপনার পাসওয়ার্ডটি অন্য ব্যবহারকারীদের নয় তা আপনার জানা দরকার।

তবে আপনার যদি অন্য ব্যবহারকারীদের পাসওয়ার্ড থাকে:

su username - ঠিক কাজ করা উচিত।

1 টি লক্ষ্য করুন - এবং এটি শেষের দিকে।


যেভাবে আপনি বর্ণনা করেছেন উভয়ভাবেই আমার মতো আচরণ করুন - কমান্ডটি ত্রুটি ছাড়াই গৃহীত হয়েছে তবে হোম ডিরেক্টরি সঠিক নয় এবং প্রম্পটটি বলে যে আমি এখনও মূল ব্যবহারকারী। আমি যদি এর পরে লগআউট করি তবে আমি সম্পূর্ণ লগআউট করি।
অ্যান্ড্রু সাভিনিখ

ঠিক আছে, ব্যবহারকারী কি আপনার লগ ইন লগ ইন করার অনুমতি হিসাবে? আপনি তাদের শেলটি "সত্য" এ সেট করে অ্যাকাউন্টটি লগ ইন করা থেকে আটকাতে পারেন এবং এটি আপনার বর্ণনার মতোই করবে। এটি " sudo cat /etc/passwdআপাচে " এবং "এফটিপি" এর মতো "সিস্টেম" অ্যাকাউন্টে প্রচুর পরিমাণে ব্যবহৃত হত কন্টেন্টটি এখানে পেস্ট করবেন না তা পরীক্ষা করতে । এটি কেবল নজরকাড়া করুন এবং নিশ্চিত করুন যে ব্যবহারকারীর কাছে তাদের লাইনের শেষ সামান্য অংশ হিসাবে একটি বাস্তব শেল রয়েছে।
কোটায়র

1
পার্শ্ব নোট, এটি করার আরও সঠিক উপায় শেলটিকে "মিথ্যা" এ সেট করা যা ত্রুটি ছুঁড়ে দেবে। যদিও কিছু সিস্টেম এবং অ্যাকাউন্টগুলি এখনও প্রযুক্তিগত বা সিউডো-সুরক্ষার কারণে (ওয়ানা-হ্যাকারগুলি থেকে সটকে বাড়িয়ে তোলার জন্য) সত্য ব্যবহার করে
কোটায়ার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.