আপনি যদি zsh থেকে bash-এ চেঞ্জ করেছেন অথবা macOS ক্যাটালিনা/বিগ সার/মন্টেরে আপডেট করেছেন, তবে টার্মিনাল খোলার সময় আপনি এই মেসেজ পেতে পারেন: "The default interactive shell is now zsh. To update your account to use zsh, please run 'chsh -s /bin/zsh'. For more details, please visit https://support.apple.com/kb/HT208050."
Apple macOS ক্যাটালিনা থেকে ডিফল্ট ইন্টারেক্টিভ শেল bash থেকে zsh-এ পরিবর্তন করেছে। পরবর্তী macOS ভার্সন যেমন macOS মন্টেরে/বিগ সার-ও ডিফল্ট শেল zsh-এ কনফিগার করা থাকে। আপনার ম্যাকের ডিফল্ট শেল যদি পুরনো bash-এ থাকে বা আপনি টার্মিনালকে bash বা অন্য শেল দিয়ে ওপেন করার জন্য সেট করে থাকেন এই অপারেটিং সিস্টেমগুলো চালানোর সময়, তবে আপনি ওয়ার্নিং দেখবেন।
আপনি যদি টার্মিনাল এবং ইন্টারেক্টিভ শেলের সাথে অপরিচিত হন, তবে বিভ্রান্ত হওয়া স্বাভাবিক। কিন্তু চিন্তা করবেন না, আমরা আপনাকে "The default interactive shell is now zsh." মেসেজটি বুঝতে, সরাতে এবং চাইলে ম্যাকে ডিফল্ট ইন্টারেক্টিভ শেল পরিবর্তন করতে সাহায্য করব।
"The default interactive shell is now zsh." ম্যাকেও গাইড:
- ১. 'The default interactive shell is now zsh.' মানে কী?
- ২. 'The default interactive shell is now zsh.' কীভাবে সরাবেন?
- ৩. ম্যাকের জন্য bash vs. zsh
- ৪. 'The default interactive shell is now zsh.' ম্যাকেও FAQ
'The default interactive shell is now zsh.' মানে কী?
ম্যাকে টার্মিনালে আমরা যে কমান্ডগুলো লিখি সেগুলো ইন্টারপ্রেট ও এক্সিকিউট করার জন্য বেশ কিছু ইন্টারেক্টিভ শেল আছে। তাদের মধ্যে, zsh (Z shell) এবং bash (Bourne again shell) বেশি ব্যবহার হয়।
macOS মোজেভ এবং তার পুরনো ভার্সনে, bash ডিফল্ট ইন্টারেক্টিভ শেল। কিন্তু Apple অনেক দিন ধরে bash-এর 3.2 ভার্সনটিতে (২০০৬-এ রিলিজড) আটকে থাকেছে কারণ bash-এর নতুন ভার্সনগুলো GPLv3 লাইসেন্সের অধীনে যা Apple-এর মতো কোম্পানির জন্য রস্ট্রিক্টিভ যারা নিজেদের কোড সাইন করে। আমি অনুমান করি এটি আংশিকভাবে কারণ দিয়ে তারা macOS ডিফল্ট শেল পরিবর্তন করতে চেয়েছে।
macOS ক্যাটালিনা থেকে, zsh bash-কে রিপ্লেস করেছে ম্যাকের ডিফল্ট শেল হিসেবে কারণ এটি bash-এর সাথে সবচেয়ে কম্প্যাটিবল এবং bash-এর ফাংশনালিটির নিকটতম। Apple টার্মিনালে একটি ওয়ার্নিং এমবেড করেছে যারা এখনও zsh-এ স্যুইচ করেননি তাদের সম~~ nõর মেসেজ দিয়ে এবং আপডেট প্রোমোট করতে।
আপনার ইউজার একাউন্ট যদি macOS ক্যাটালিনা-এর আগে তৈরি হয়ে থাকে, যেটি এখনও ডিফল্ট শেল হিসেবে bash রাখে, অথবা আপনি bash শেল ইনভোক করেন যখন আপনার ম্যাক zsh ব্যবহার করার জন্য সেট করা থাকে, তবে আপনি টার্মিনালে এই মেসেজটি দেখবেন: "The default interactive shell is now zsh. To update your account to use zsh, please run `chsh -s /bin/zsh`. For more details, please visit https://support.apple.com/kb/HT208050."
'The default interactive shell is now zsh.' কীভাবে সরাবেন?
আপনি যদি টার্মিনাল 그렇게 বেশি ব্যবহার না করেন, তবে মেসেজটি উপেক্ষা করতে পারেন। অন্যথায়, আপনি Monterey/Big Sur/Catalina-এ "The default interactive shell is now zsh." সরাতে পারেন নিচের মেথডগুলো দিয়ে।
- ওয়ে ১: ডিফল্ট শেল zsh-এ পরিবর্তন করুন
- ওয়ে ২: 'The default interactive shell is now zsh.' হাইড করুন এবং bash ব্যবহার চালিয়ে যান
- ওয়ে ৩: Homebrew-দিয়ে সপ্লাইড bash-এ স্যুইচ করুন
আপনি নিচের বাটনে ক্লিক করে এই সমাধানগুলো আপনার প্রিয় প্ল্যাটফর্মে শেয়ার করতে পারেন।
ওয়ে ১: ডিফল্ট শেল zsh-এ পরিবর্তন করুন
আমরা যাと述べた সিচুয়েশনগুলোর পাশাপাশি, আপনি ম্যাকেও "The default interactive shell is now zsh." দেখতে পারেন Python বা VSCode-এ ফোল্ডারগুলোর অধীনে নির্দিষ্ট ফাইল রান করার সময়। আপনি যদি অন্য অনেকের মত zsh গ্রহণ করার জন্য প্রস্তুত হন, তবে আপনি "The default interactive shell is now zsh." ওয়ার্নিং যেটি সাজেস্ট করে সেই কমান্ড দিয়ে ম্যাকে ডিফল্ট ইন্টারেক্টিভ শেল পরিবর্তন করতে পারেন।
Terminal ব্যবহার করে shash-এ স্যুইচ করার ধাপগুলো অনুসরণ করুন:
- Terminal খুলুন যদি ইতিমধ্যে খোলা না থাকে।
- নিচের কমান্ড ইনপুট করুন এবং Enter চাপুন।
chsh -s /bin/zsh - আপনার পাসওয়ার্ড টাইপ করুন এবং আবার Enter চাপুন।
- পরিবর্তন ইফেক্টিভ হওয়ার জন্য আপনার ম্যাক রিস্টার্ট করুন।
বিকল্পভাবে, আপনি Users & Groups প্রিফারেন্স পেইন থেকে bash থেকে zsh-এ পরিবর্তন করতে পারেন।
System Preferences থেকে zsh থেকে bash-এ স্যুইচ করার পদ্ধতি:
- Apple মেনু > System Preferences > Users & Groups-এ ক্লিক করুন।
- নিচের বাম প্যাডলকে ট্যাপ করুন, আপনার পাসওয়ার্ড দিন, এবং Unlock-এ ক্লিক করুন।
- আপনার একাউন্টে রাইট-ক্লিক করুন এবং "Advanced Options." সিলেক্ট করুন।

- "Login shell."-এর পাশের ড্রপ-ডাউন মেনু থেকে /bin/zsh বেছে নিন।

- OK-এ ক্লিক করুন।
- আপনার ম্যাক রিবুট করুন।
এখন আপনি সফলভাবে ম্যাকে ডিফল্ট ইন্টারেক্টিভ শেল zsh-এ পরিবর্তন করেছেন, আপনি আর "The default interactive shell is now zsh." বলে মেসেজ পাবেন না।
ওয়ে ২: 'The default interactive shell is now zsh.' হাইড করুন এবং bash ব্যবহার চালিয়ে যান
আপনি zsh-এর সুবিধা জানেন, যেমন আরও কাস্টোমাইজেশন এবং স্মার্টার অটো-কমপ্লিশন, কিন্তু এখনও পরিচিত bash পছন্দ করেন, তবে নিচের ফাইलों যেকোনো একটিতে এক লাইন কোড (export BASH_SILENCE_DEPRECATION_WARNING=1) যোগ করে 'The default interactive shell is now zsh.' হাইড করতে পারেন: ~/.bash_profile, ~/.profile, বা ~/.bashrc।
ম্যাক টার্মিনাল 'The default interactive shell is now zsh.' দেখালে নোটিফিকেশন সরানোর পদ্ধতি:
- Terminal খুলুন।
- নিচের কমান্ড ইনপুট করুন এবং Enter চাপুন ~/.bash_profile-এ লাইন যোগ করতে।
touch ~/.bash_profile && echo "export BASH_SILENCE_DEPRECATION_WARNING=1" >> ~/.bash_profile
~/.bash_profile মডিফাই করলে কাজ না করলে, কোডে ~/.bash_profile বদলে ~/.profile বা ~/.bashrc বসিয়ে আবার কমান্ড রান করুন। আশ্চর্য, কিছু ব্যবহারকারী যারা ইতিমধ্যে zsh ব্যবহার করছেন, তারা নতুন কনসোল খোলার সময় ওয়ার্নিং পেতে পারে। যেক্ষেত্রে, রুট হয়ে /etc/profile-এ লাইন যোগ করা বেশি নির্ভরযোগ্য।
"The default interactive shell is now zsh." Monterey/Big Sur/Catalina-এ সরান:
- Terminal খুলুন।
- নিচের কমান্ড টাইপ করুন এবং Enter চাপুন /etc/profile রুট হিসেবে এডিট করতে।
sudo nano /etc/profile - আপনার পাসওয়ার্ড দিন এবং Enter চাপুন।
- ডাউন অ্যারো চাপিয়ে কーソর "# System-wide .profile for sh(1)" লাইনের নিচে নিন।
- নিচের টেক্সট কপি পেস্ট করুন লাইনে।
export BASH_SILENCE_DEPRECATION_WARNING=1
- Control + X চাপুন, তারপর "y" টাইপ করুন পরিবর্তন কনফার্ম করতে।
- Exit করার জন্য Enter চাপুন।
- Terminal বন্ধ করুন।
- আপনার ম্যাক রিস্টার্ট করুন।
ওয়ে ৩: Homebrew-দিয়ে সপ্লাইড bash-এ স্যুইচ করুন
আপনি যদি একটি নতুন bash চান এবং Monterey/Big Sur/Catalina-এ 'The default interactive shell is now zsh.' সরাতে চান, তবে Homebrew-দিয়ে আসা bash-এ স্যুইচ করতে পারেন, যেটিতে Apple-এর bash-এ থাকা কোড নেই যা ওয়ার্নিং দেখাতে। ম্যাকে Homebrew ইনস্টল করার পর, আপনি Homebrew-এ bash ব্যবহার করতে পারেন, তারপর লেটেস্ট bash-এ আপডেট করতে পারেন (বর্তমানে 5.1.16)।
bash আপডেট করে "The default interactive shell is now zsh." Catalina/Big Sur/Monterey-এ সরানোর পদ্ধতি:
- Terminal খুলুন।
- নিচের কমান্ড টাইপ করুন এবং Enter চাপুন Xcode ইনস্টল করতে।
xcode-select --install - Install-এ ক্লিক করুন ইনস্টলেশন কনফার্ম করতে।
- পূর্ণ হওয়া পর্যন্ত অপেক্ষা করুন।
- Terminal-এ নিচের কমান্ড ইনপুট করুন এবং Enter চাপুন Homebrew ইনস্টল করতে।
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - Homebrew ইনস্টল ও আপডেট হতে কিছুক্ষণ লাগতে পারে।
- আপনি যদি ওয়ার্নিং পান যে /opt/homebrew/bin আপনার PATH-এ নেই, তবে Homebrew যা সাজেস্ট করে সেটি কপি পেস্ট করে Enter চাপুন Homebrew PATH-এ যোগ করতে।
- নিচের কমান্ড রান করুন bash আপডেট করতে:
brew update && brew install bash && sudo chsh -s /usr/local/bin/bash $(whoami)
আপনি কোন সমাধান বেছে নিলেন? নিচের বাটনে ক্লিক করে এই পোস্ট আপনার বন্ধুদের সাথে শেয়ার করুন!
ম্যাকের জন্য bash vs. zsh
bash-এর মতো, zshও "Bourne" শেল পরিবারের থেকে উদ্ভূত, তাই তারা বক্সের বাইরে দেখতে একই মনে হয়। কিন্তু zsh bash-এর চেয়ে বেশি কাস্টোমাইজেবল এবং এক্সপ্যান্ডেবল কারণ আপনি সহজে নতুন ফাংশনালিটি যোগ করতে পারেন এবং প্লাগইনের অধিক চয়স পান।
Zsh ইউজার ইন্টারঅ্যাকশন উন্নত করার জন্য ডিজাইন করা। তাই এতে অনেক ফিচার আছে যা bash-এ নেই বা bash-এ কম দক্ষতার সাথে কাজ করে, যেমন অটোকমপ্লিশন, সিনট্যাক্স হাইলাইটিং, অটোকরেকশন, ফ্লোটিং-পয়েন্ট অ্যারিথমেটিক, এবং আরও অনেক কিছু। যাইহোক, bash-এর সুবিধা হলো অধিকাংশ লিনাক্স মেশিন এবং সার্ভারের ডিফল্ট শেল হওয়া, যার জন্য প্রোগ্রামাররা এখনও ব্যাপকভাবে ব্যবহার করেন।
আপনি যদি একটি সাধারণ ম্যাক ব্যবহারকারী হন যারা টার্মিনাল কদাচিৎ ব্যবহার করেন, তবে আপনি মেসেজটি উপেক্ষা করতে পারেন বা Apple এর পরামর্শ অনুযায়ী shash-এ স্যুইচ করতে পারেন। আপনি যদি বিভিন্ন প্ল্যাটফর্মের সাথে কাজ করেন যেখানে bash সাধারণ শেল, তবে Homebrew-দিয়ে আপডেটেড bash পাওয়া বিবেচনা করুন। আপনি যদি দুটির মাঝপথে পড়েন, তবে ওয়ার্নিং সাপ্রেস করে পরিচিত bash ব্যবহার চালিয়ে যেতে পারেন।
FAQ: 'The default interactive shell is now zsh.' ম্যাকেও
প্রশ্ন: ম্যাকে ডিফল্ট ইন্টারেক্টিভ শেল কী?
উত্তর:
Apple macOS ক্যাটালিনা থেকে ডিফল্ট শেল bash থেকে zsh-এ পরিবর্তন করেছে।
প্রশ্ন: macOS কেন zsh-এ স্যুইচ করেছে?
উত্তর:
Apple ম্যাকের ডিফল্ট শেল পরিবর্তন করার সিদ্ধান্ত নিয়েছে কারণ Mac-এর bash বছরের পর বছর 3.2 ভার্সনে আটকে আছে যখন বর্তমান লেটেস্ট bash ভার্সন 5.1 এবং তারা আপডেট করার প্ল্যান নেই কারণ bash-এর নতুন ভার্সন বিজনেস-অনফ্রেন্ডলি GPLv3 লাইসেন্সের অধীনে। Zsh bash-এর মতো ফাংশনালিটি দিয়ে আরও ইন্টারেক্টিভ এবং কাস্টোমাইজেবল, তাই Apple ডিফল্ট শেল zsh-এ পরিবর্তন করার সিদ্ধান্ত নিল।
প্রশ্ন: ম্যাকে আমার ডিফল্ট ইন্টারেক্টিভ শেল কীভাবে পরিবর্তন করব?
উত্তর:
আপনি Terminal বা Users & Groups সিস্টেম প্রিফারেন্স পেইন দিয়ে ম্যাকে ডিফল্ট ইন্টারেক্টিভ শেল পরিবর্তন করতে পারেন। উদাহরণস্বরূপ, আপনি যদি ম্যাকে zsh থেকে bash-এ পরিবর্তন করতে চান, তবে Terminal-এ এই কমান্ড এক্সিকিউট করুন: chsh -s /bin/bash। বিকল্পভাবে, System Preferences > Users & Groups > আপনার একাউন্টের ওপর রাইট-ক্লিক > Advanced Options সিলেক্ট > Login Shell-এর জন্য bin/bash বেছে নিন।
প্রশ্ন: ম্যাকে zsh কীভাবে আমার ডিফল্ট শেল করব?
উত্তর:
ম্যাকে zsh আপনার ডিফল্ট শেল করার সবচেয়ে দ্রুত উপায় হলো Terminal-এ কমান্ড এক্সিকিউট করা: chsh -s /bin/zsh।