লিনাক্সে ডিফল্ট শেল পরিবর্তন করা [বন্ধ]


317

ডিফল্ট শেলটি কীভাবে পরিবর্তন করা সম্ভব? envকমান্ড বর্তমানে বলেছেন:

SHELL=/bin/tcsh

এবং আমি এটি বাশে বদলাতে চাই।


4
এটি একটি ভাল প্রশ্ন, তবে এটি লিনাক্স কিউএ সাইটের জন্য আরও উপযুক্ত হতে পারে।
ব্র্যাডলিডটনেট

6
/ etc / passwd এ সেট করুন
ফলাফলও

উত্তর:


414

লিনাক্স কমান্ড চেষ্টা করুন chsh

বিস্তারিত কমান্ডটি হ'ল chsh -s /bin/bash। এটি আপনাকে আপনার পাসওয়ার্ড লিখতে অনুরোধ করবে। আপনার ডিফল্ট লগইন শেল /bin/bashএখন। এই পরিবর্তনটি দেখতে আপনাকে অবশ্যই লগ আউট এবং লগ ইন করতে হবে।

নিম্নলিখিত ম্যান পৃষ্ঠা থেকে উদ্ধৃত করা হয়েছে:

Chsh কমান্ড ব্যবহারকারীর লগইন শেল পরিবর্তন করে। এটি ব্যবহারকারীদের প্রাথমিক লগইন কমান্ডের নাম নির্ধারণ করে। একটি সাধারণ ব্যবহারকারী কেবল তার নিজের অ্যাকাউন্টের জন্য লগইন শেল পরিবর্তন করতে পারে, সুপারউসার কোনও অ্যাকাউন্টের জন্য লগইন শেল পরিবর্তন করতে পারে

এই কমান্ডটি স্থায়ীভাবে ডিফল্ট লগইন শেলকে পরিবর্তন করবে।

দ্রষ্টব্য: আপনার ব্যবহারকারী অ্যাকাউন্টটি যদি কার্বেরোস প্রমাণীকরণের মতো দূরবর্তী হয় (যেমন এন্টারপ্রাইজ আরএইচইল) তবে আপনি ব্যবহার করতে পারবেন না chsh


10
chsh: can only change local entries; use ypchsh instead। তারপরে ypchsh এর কোনও -sবিকল্প নেই
মাহমুদ

10
@ শক্তিমালিক আমি বিশ্বাস করি কনফিগার ফাইলটি /etc/passwdতবে আমি এটি দ্বিগুণ পরীক্ষা করে দেখিনি।
সামার_মোড়_আর_আর

30
এই পরিবর্তনটি দেখতে আপনাকে অবশ্যই লগ আউট এবং লগ ইন করতে হবে।
নিল ট্রাফট

22
আমার ক্ষেত্রে, আমার রুট অ্যাক্সেস ছিল তবে প্রকৃত হোস্টের কোনও কনফিগারেশন নিয়ে গণ্ডগোল করতে চাইনি। আমি যোগ exec /bin/bashকরতে ~/.profileএবং এই আমাকে সার্ভারে কোন পরিবর্তন না করে ব্যাশ থেকে সরাসরি লগইন করার মঞ্জুরিপ্রাপ্ত। (মূল ডিফল্ট শেলটি কেবলমাত্র ছিল /bin/sh)
পল নেলসন বেকার

2
এই জন্য আপনাকে ধন্যবাদ তবে আপনি যদি টাইপ exitকরেন বাশ? আপনি কি সার্ভারটি সরাসরি লগআউট করবেন বা কেবল ব্যাশ থেকে বেরিয়ে যাবেন এবং exitসার্ভার লগআউট করার জন্য প্রয়োজনীয় একটিতে প্রবেশ করবেন ?
গ্রীষ্ম_মুড়_আর_আর

148

আপনি নির্দিষ্ট ব্যবহারকারীর জন্য সরাসরি পাসডাব্লু ফাইলটি পরিবর্তন করতে পারেন বা নীচের কমান্ডটি ব্যবহার করতে পারেন

chsh -s /usr/local/bin/bash username

তারপরে লগ আউট এবং লগ ইন করুন


8
সম্ভবত which bashউপরোক্ত আদেশটি চাওয়ার আগে চেষ্টা করার জন্য একটি ভাল ধারণা ; আপনার মাইলেজ অবস্থান সম্পর্কে পৃথক হতে পারে। আমার ক্ষেত্রে এটি পাওয়া গেছে/bin/bash
মার্টিন হ্যাবারলি

আমি এটি যুক্ত করতে পারি, chshকমান্ড util-linuxপ্যাকেজের অংশ ; এবং chsh -s $(which bash) $USERউপরে হিসাবে একই ফলাফল করা উচিত।

এছাড়াও -lবিকল্প রয়েছে: "শেলগুলির মুদ্রণ তালিকা"।
বেটলিস্ট

3
এটি আমার chsh -s /bin/bash usernameজন্য ছিল
সালভাতোরালব

ধন্যবাদ! এটি কোনও ভিন্ন ব্যবহারকারীর জন্য এটি পরিবর্তন করার চেষ্টা করার সময় আমাকে সহায়তা করেছিল
টোবিয়াস ফিয়েল

18

আপনার কোথাও কোথাও একটি 'কঙ্কাল' থাকা উচিত , বা /etcসম্ভবত /etc/skeletonডিফল্ট সেটিংস, সম্ভবত /etc/defaultবা কিছু পরীক্ষা করা উচিত। এগুলি এমন স্ক্রিপ্ট যা লগইন চলাকালীন প্রমিত পরিবেশের ভেরিয়েবল সেট করে।

যদি এটি কেবল আপনার নিজের অ্যাকাউন্টের জন্য হয়: (লুকানো) ফাইলটি ~/.profileএবং দেখুন ~/.login। বা এগুলি তৈরি করুন, যদি তাদের অস্তিত্ব না থাকে। এগুলি লগইন প্রক্রিয়া দ্বারাও মূল্যায়ন করা হয়।


5
প্লাস 1 নির্দিষ্টভাবে প্রশ্নের উত্তর দেওয়ার জন্য (ডিফল্ট শেল)। রেড হ্যাট লিনাক্স এটা উল্লেখ করা হয়/etc/default/useradd
geedoubleya

@geedoubleya আপনি কি ডিফল্ট এবং লগইন শেলের মধ্যে পার্থক্য উল্লেখ করতে পারবেন?
বেটলিস্ট

1
হাই @Betlista ডিফল্ট শেলটি হ'ল শেল যা নতুন ব্যবহারকারীদের লগইন শেলগুলির জন্য ব্যবহৃত হয় যখন তারা তৈরি করা হয় যখন না একটি নির্দিষ্ট শেল আর্গুমেন্ট হিসাবে সরবরাহ করা হয়।
geedoubleya
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.