কম্পিউটার টিউটোরিয়াল

macOS Terminal-এ Zsh Permission Denied এরর সমাধান: ধাপে ধাপে গাইড

আপনি যখন macOS Terminal-এ একটি ফাইল বা ফোল্ডার ওপেন করে সেটি মডিফাই করার কমান্ড ইনপুট করেন, একটি পপ-আপ আসে "zsh: permission denied" বা "zsh: command not found" লেবেলের সাথে। আপনি কি এই সমস্যা ফেস করছেন? হ্যাঁ হলে এই পোস্ট আপনার জন্য হেল্পফুল কারণ এটি বিস্তারিত বলে Mac-এ "Zsh permission denied" এরর কীভাবে ফিক্স করতে হয়।

সুচিপত্র:

  • ১. Zsh কী?
  • ২. macOS Terminal-এ Zsh: permission denied কী?
  • ৩. Terminal-এ permission denied এরর কেন হয়?
  • ৪. Mac-এ Zsh permission denied এরর কীভাবে ফিক্স করবেন?
  • ৫. আপনার Mac-এ permission denied এরর এড়াতে কী করবেন?
  • ৬. Mac-এ Zsh permission denied সম্পর্কে FAQ

এই প্রশ্নে ফंसे থাকা লোকের সাথে শেয়ার করুন!

Zsh কী?

Z shell বা Zsh হলো একটি Unix shell যা ইন্টারঅ্যাক্টিভ লগইন শেল হিসেবে এবং শেল স্ক্রিপ্টিং-এর কমান্ড ইন্টারপ্রিটার হিসেবে ব্যবহার করা যায়। এটি bash-র ওপর ডিজাইন ও বিল্ট যা macOS-র ডিফল্ট শেল, এবং এটি ksh এবং tcsh-এর কিছু ফিচার কভার করে।

Zsh প্লাগইন এবং থিম কনফিগার করতে অনেক সহজ। এর থিমগুলো আরও বিউটিফুল এবং নিট। সবচেয়ে গুরুত্বপূর্ণ, এটি স্ট্রিক্ট ইউজার পারমিশন রিকোয়ার করে না।

macOS Terminal-এ Zsh: permission denied কী?

এরর নামই ইঙ্গিত দিয়ে আছে, এটি একটি পারমিশন এরর যা Mac ইউজারকে কমান্ড দিয়ে ফাইল ওপেন করতে বাধা দেয়। এটি sudo কমান্ড বা বাশ কমান্ডেও ঘটতে পারে। অনেক রিপোর্ট অনুযায়ী, "Zsh: Permission denied" এরর রুটে ফাইল ওপেন করলেও হতে পারে।

বেশির রিপোর্ট বলে, এরর আসে যখন তারা Terminal-এ ফাইল ইনস্টলার খুলতে চান। অথবা ফাইল Terminal উইন্ডোতে ড্র্যাগ করলে "permission denied" এরর পপ-আপ হয়। তবে এটি যেকোনো ফাইলের সাথে ঘটতে পারে।

macOS Terminal-এ Zsh Permission Denied এরর সমাধান: ধাপে ধাপে গাইড

Terminal-এ permission denied এরর কেন হয়?

Mac-এ Zsh permission denied এরর হওয়ার অনেক সম্ভাব্য কারণ আছে। সবচেয়ে কমনগুলো নিচে:

ফাইল লকড আছে

আপনি যখন একটি প্রোগ্রাম ইনস্টল বা ফাইল মডিফাই করতে চান যেটি লকড, তবে আপনি সাবধানে permission denied এরর পাবেন। এর কারণ হতে পারে আপনার এডমিনিস্ট্রেটর প্রিভিলেজ নেই, অথবা ফাইল ক্রিয়েটর chmod ব্যবহার করে ফাইলটি লক করেছে। পারমিশন এরর ইঙ্গিত দেয় আপনার কমান্ড একটি ডিরেক্টরিতে লিখতে চাচ্ছে যা আপনার ইউজার অ্যাকাউন্টের অধীন নয়।

ভুল chmod X বা সিস্টেম কমান্ড

এই এরর হওয়ার আরেকটি কারণ হলো আপনি ভুল chmod x বা অন্যান্য সিস্টেম কমান্ড দিয়েছেন। নিশ্চিত করুন আপনি সঠিক কমান্ড ব্যবহার করছেন। আপনি যদি একটি অ্যাপ্লিকেশন রান করতে চান, নিশ্চিত করুন প্রোগ্রাম কমান্ড ভ্যালিড এবং আপনার কম্পিউটারে ইনস্টলড।

Mac-এ Zsh permission denied এরর কীভাবে ফিক্স করবেন?

Mac-এ Zsh permission denied এরর ফিক্স করার আগে যেকোনো রিলেভেন্ট ফাইল কপি রাখুন। পরে ব্যাকআপ ফাইল লাগতে পারে যেকোনো কিছু ভুল হলে। যেহেতু আপনি কমান্ড ফোর্স করতে চাইছেন, পোটেনশিয়াল ডাউনসাইড থাকতে পারে যা আপনার সিস্টেম মেস আপ করে আরও সমস্যা তৈরি করতে পারে। ভালো হবে আপনি প্রস্তুত থাকুন।

এছাড়া, আপনাকে Mac অপ্টিমাইজ করতে হবে অন্যান্য ইস্যু পপ আপ না করার জন্য। এটি আপনার সিস্টেম ক্লিন আপ করেও সাহায্য করবে যাতে আপনার প্রসেসসমূহ স্মুথলি চলে। একবার করা হলে, Mac রিস্টার্ট করুন এবং নিচের ট্রাবলশুটিং গাইড চেক করুন।

স্টেপ ১: আপনার পারমিশন চেক করুন।

  1. Mac Dock বা Utilities থেকে Terminal লঞ্চ করুন।
  2. নিচের কমান্ড টাইপ করুন, এবং শেষ ক্যারেক্টারের পর একটি স্পেস যোগ করুন। এখন Enter চাপবেন না: ls -l
  3. আপনি যে ফাইল ওপেন করতে চান সেটি টার্মিনাল উইন্ডোতে ড্র্যাগ অ্যান্ড ড্রপ করুন। এটি অটোমেটিক্যালি ফাইলটির লোকেশন এক্সিস্টিং কমান্ডে অ্যাপেন্ড করবে। তবে এটি ফাইলটিকে আসলেই মুভ করবে না।
  4. এখন Terminal উইন্ডোতে ক্লিক করুন এবং Enter চাপুন।

এটি আপনাকে দেখাবে আপনার সেই ফাইল লিখতে বা মডিফাই করার পারমিশন আছে কিনা।

স্টেপ ২: ডিরেক্টরির ওনারশিপ চেঞ্জ করুন।

ডিরেক্টরির ওনারশিপ চেঞ্জ করতে chown কমান্ড ব্যবহার করুন। Terminal-এ এই কমান্ড দিয়ে Enter চাপুন:

chown -R $USER:$USER /path/to/directory

$USER-কে করেন্ট লগইন্ড-ইন ইউজার দিয়ে রিপ্লেস করুন এবং /path/to/directory-কে সে পাথ দিয়ে যেখানে আপনি লিখতে চান।

স্টেপ ৩: Terminal-কে ফুল ডিস্ক এক্সেস দিন।

একটি সম্ভাবনা হলো Terminal-কে ডিস্কের পূর্ণ এক্সেস নেই, তাই macOS terminal permission denied হচ্ছে। আনগ্রান্টেড ফুল ডিস্ক এক্সেস Terminal এরর "Operation not permitted"-ও দিতে পারে। এটি ফিক্স করতে System Preferences > Security & Privacy > Privacy panel-এ যান, তারপর Terminal-কে Full Disk Access লিস্টে অ্যাড করুন।

macOS Terminal-এ Zsh Permission Denied এরর সমাধান: ধাপে ধাপে গাইড

স্টেপ ৪: sudo কমান্ড ব্যবহার করুন।

Sudo কমান্ড সিম্পল কিন্তু পাওয়ারফুল যা আপনাকে Terminal-এ যেকোনো কমান্ড এক্সিকিউট করতে দেয়। তাই Mac permission denied সমস্যা হলে Terminal-এ sudo কমান্ড ব্যবহার করুন। এটি করতে মূল কমান্ডের আগে sudo যোগ করুন। স্যাম্পল কমান্ড:

sudo chmod 755 /dvtcolorconvert.rb

sudo chmod 755 ~/Themes/ObsidianCode.xccolortheme

আপনাকে পাসওয়ার্ড এন্টার করতে বলবে যদি এটি sudo কমান্ড ব্যবহার করার প্রথম বার হয়। কিন্তু এরপর sudo কমান্ড ব্যবহার করার প্রতিবার পাসওয়ার্ড দিতে হবে না।

এখন চেক করুন Mac-এ Zsh permission denied সমস্যা সমাধান হয়েছে কিনা। না হলে Oh My Zsh অ্যাপ ডাউনলোড করুন এটা ডিল করতে। Oh My Zsh একটি ওপেন-সোর্স ফ্রেমওয়ার্ক যা macOS এবং Linux-এ Zsh কনফিগারেশন ম্যানেজ করতে ব্যবহার করা হয়।

সমস্যা সমাধান হলে অন্যদের সাথে খুশি শেয়ার করুন।

আপনার Mac-এ permission denied এরর এড়াতে কী করবেন?

ভবিষ্যতে macOS Terminal permission denied এরর এড়াতে, আপনি Mac-এ পারমিশন সেটিং চেঞ্জ করুন কে ফাইল ভিউ ও অ্যাল্টার করতে পারবে সেটি ডিফাইন করতে। নিচে কিছু উপায়:

মেথড ১: ইউজার এবং গ্রুপের পারমিশন অ্যাসাইন করুন

  1. Mac-এ একটি ডিস্ক, ফোল্ডার, বা ফাইল সিলেক্ট করুন, তারপর File > Get Info বেছে নিন।
  2. লক আইকনে ক্লিক করুন আনলক করতে।
  3. একটি অ্যাডমিনিস্ট্রেটর নাম ও পাসওয়ার্ড দিন।
  4. Name কলামে একটি ইউজার বা গ্রুপ ক্লিক করুন, পপ-আপ মেনু থেকে একটি প্রিভিলেজ সেটিং বেছে নিন।  
    Read & Write: ইউজারকে আইটেম ওপেন ও চেঞ্জ করার অনুমতি দেয়।             
    Read Only: ইউজারকে আইটেম ওপেন করতে দেয় কিন্তু কন্টেন্ট চেঞ্জ করতে দেয় না।             
    Write Only: একটি ফোল্ডারকে Drop Box-এ রূপান্তর করে। ইউজার Drop Box-এ আইটেম কপি করতে পারে, কিন্তু ওপেন করতে পারে না। শুধু Drop Box-এর ওনার সেটি ওপেন করতে পারে।

macOS Terminal-এ Zsh Permission Denied এরর সমাধান: ধাপে ধাপে গাইড

মেথড ২: ফোল্ডার বা ডিস্কের সব আইটেমে পারমিশন অ্যাপ্লাই করুন

  1. Mac-এ একটি ফোল্ডার বা ডিস্ক সিলেক্ট করুন, File > Get Info বেছে নিন।
  2. লক আইকনে ক্লিক করুন আনলক করতে।
  3. একটি অ্যাডমিনিস্ট্রেটর নাম ও পাসওয়ার্ড দিন।
  4. Action পপ-আপ মেনুতে ক্লিক করুন, তারপর "Apply to enclosed items" বেছে নিন।

macOS Terminal-এ Zsh Permission Denied এরর সমাধান: ধাপে ধাপে গাইড

মেথড ৩: Name কলামে ইউজার বা গ্রুপ অ্যাড বা রিমুভ করুন

  1. Mac-এ একটি আইটেম সিলেক্ট করুন, File > Get Info বেছে নিন।
  2. প্যাডলক আইকনে ক্লিক করুন আনলক করতে।
  3. একটি অ্যাডমিনিস্ট্রেটর নাম ও পাসওয়ার্ড দিন।
  4. Sharing & Permissions সেকশনে, নিচের যেকোনো একটি করুন:  
    ইউজার বা গ্রুপ অ্যাড করুন: লিস্টের নিচে Add (+) বাটনে ক্লিক করুন, একটি ইউজার বা গ্রুপ সিলেক্ট করুন, তারপর Select ক্লিক করুন।             
    ইউজার বা গ্রুপ রিমুভ করুন: ইউজার বা গ্রুপ সিলেক্ট করুন, লিস্টের নিচে Remove (-) বাটনে ক্লিক করুন।         

এই হেল্পফুল গাইড আরও মানুষের সাথে শেয়ার করুন!

Mac-এ Zsh permission denied সম্পর্কে FAQ

Q: Mac-এ Zsh ডিফল্ট কি?

A: macOS Catalina-র সাথে শুরু করে, Mac-গুলো Zsh-কে ডিফল্ট লগইন শেল এবং ইন্টারঅ্যাক্টিভ শেল হিসেবে পুরো অপারেটিং সিস্টেমে ব্যবহার করতে শুরু করেছে।

Q: আমার Mac Terminal কেন permission denied বলে?

A: পারমিশন ডেনায়ড এরর হওয়ার কারণ হলো আপনি এডমিনিস্ট্রেটর নন, অথবা ফাইলটির ওনার chmod ব্যবহার করে ফাইলটি লক করেছে।

  1. macOS Terminal-এ 'Command Not Found' এরর সমাধান: Zsh ও Bash-র জন্য দ্রুত ফিক্স

  2. ম্যাকওএস টার্মিনালে 'Operation not Permitted' এরর ফিক্স করুন

  3. ম্যাক 'সেটিং আপ ইউর ম্যাক'-এ আটকে যাওয়া সমস্যা সমাধান: ধাপে ধাপে ট্রাবলশুটিং গাইড

  4. Mac স্ক্রিনশট কাজ না করছে? দ্রুত সমাধান করে ক্যাপচার ফাংশন ফিরে আনুন