- ডিরেক্টরি ও ডকুমেন্ট তৈরি, স্থানান্তর এবং মুছে ফেলার মাধ্যমে ফাইল সিস্টেমের পূর্ণাঙ্গ ব্যবস্থাপনা।
- দলের কর্মক্ষমতা সর্বোত্তম করতে ব্যবহারকারীর অনুমতি ব্যবস্থাপনা এবং রিয়েল-টাইম প্রক্রিয়া নিয়ন্ত্রণ।
- সিস্টেমকে হালনাগাদ ও সংযুক্ত রাখতে নেটওয়ার্ক টুলস এবং প্যাকেট ম্যানেজমেন্টের ব্যবহার।
আপনি যদি প্রথমবারের মতো লিনাক্সের সম্মুখীন হয়ে থাকেন, তবে তার কারণ হতে পারে কোনো ইউটিউব ভিডিও দেখা অথবা নিজের সার্ভার সেট আপ করার দুঃসাহসিক অভিযানে নামা। প্রথমদিকে, সাদা লেখা সহ সেই কালো স্ক্রিনটি কিছুটা ভীতিজনক মনে হতে পারে, কিন্তু বাস্তবতা হলো কমান্ড লাইন একটি শক্তিশালী টুল যা আপনাকে আপনার কম্পিউটারের উপর সম্পূর্ণ নিয়ন্ত্রণ দেয়, যা গ্রাফিক্যাল ইন্টারফেস কখনোই দিতে পারে না।
টার্মিনাল ব্যবহারে দক্ষতা অর্জন করা শুধু মুভি হ্যাকারদের জন্যই নয়; এটি যেকোনো ডেভেলপার বা সিস্টেম অ্যাডমিনিস্ট্রেটরের জন্য একটি মৌলিক দক্ষতা। অবিরাম ক্লিক করার পরিবর্তে, আপনি এক লাইনের টেক্সট দিয়েই জটিল কাজগুলো স্বয়ংক্রিয় করতে পারেন , যা আপনার প্রচুর সময় বাঁচায় এবং কোনো ঝামেলা ছাড়াই সমস্যার মূল থেকে সমাধান করতে সাহায্য করে। চলুন, পর্যটকের মতো অনুভূতি ছেড়ে একজন পেশাদারের মতো কাজ শুরু করার জন্য আপনার যা যা জানা প্রয়োজন, তার সবকিছু ভেঙে ভেঙে আলোচনা করা যাক।
প্রথম কাজটি হলো আপনি কোথায় আছেন এবং কীভাবে পথ খুঁজে নেবেন তা জানা। `pwd` (প্রিন্ট ওয়ার্কিং ডিরেক্টরি) কমান্ডটি হলো আপনার ব্যক্তিগত জিপিএস; যদি আপনি ফোল্ডারের মধ্যে হারিয়ে যান, তবে এটি চালালে আপনি আপনার অবস্থানের সঠিক পথটি দেখতে পাবেন। আপনার আশেপাশে কী আছে তা দেখতে, `ls` (লিস্ট) ব্যবহার করুন । আপনি যদি লুকানো ফাইল (যেগুলোর নাম ডট দিয়ে শুরু হয়) দেখতে চান, তবে `-a` অপশনটি যোগ করুন, এবং যদি আপনি ফাইলের আকার বা পারমিশনের মতো বিস্তারিত তথ্য জানতে চান, তবে `ls -la` হলো সেরা কম্বিনেশন ।
এক ফোল্ডার থেকে অন্য ফোল্ডারে যাওয়ার জন্য `cd` (চেঞ্জ ডিরেক্টরি) কমান্ডটি ব্যবহার করতে হয় । আপনি একটি নির্দিষ্ট পাথে যেতে পারেন অথবা ডিরেক্টরি হায়ারার্কিতে এক স্তর উপরে যাওয়ার জন্য `cd ..` কৌশলটি ব্যবহার করতে পারেন। আপনি যদি দ্রুত আপনার হোম ফোল্ডারে ফিরে আসতে চান, তবে কেবল `cd ~` টাইপ করুন । যখন একটি নতুন ওয়ার্কস্পেস তৈরি করার প্রয়োজন হয়, তখন সেই নতুন ফোল্ডারটি তৈরি করতে `mkdir` (মেক ডিরেক্টরি) ব্যবহার করা হয়; যদি আপনাকে একসাথে একাধিক নেস্টেড ফোল্ডার তৈরি করতে হয়, তবে `-p` অপশনটি কাজটি অনেক সহজ করে দেবে।
ফাইল এবং বিষয়বস্তু পরিবর্তন
দ্রুত খালি ফাইল তৈরি করার ক্ষেত্রে `touch` হলো আদর্শ টুল । কোনো ফাইল সরাতে বা তার নাম পরিবর্তন করতে আমরা `mv` (move) ব্যবহার করি , যা মূলত একটি ডিজিটাল মালপত্র স্থানান্তরের মতো কাজ করে। আপনি যদি মূল ফাইলটি রেখে একটি ডুপ্লিকেট তৈরি করতে চান, তাহলে কমান্ডটি হলো `cp` (copy)। তবে মনে রাখতে হবে যে, পুরো ফোল্ডার কপি করার জন্য আপনাকে অবশ্যই `-r` অপশনটি যোগ করতে হবে, যাতে এটি একটি রিকার্সিভ প্রক্রিয়া হয়ে ওঠে। ফাইল ম্যানেজমেন্ট কমান্ডের উপর এই সম্পূর্ণ গাইডটির মাধ্যমে আপনি আপনার জ্ঞান আরও বাড়াতে পারেন ।
ডিলিট করার ক্ষেত্রে আপনাকে সতর্ক থাকতে হবে, কারণ টার্মিনালে কোনো রিসাইকেল বিন নেই। `rm` (রিমুভ) কমান্ড ফাইল ডিলিট করে, আর `rmdir` খালি ফোল্ডারের জন্য ব্যবহৃত হয় । যদি ফোল্ডারে ফাইল থাকে, তবে আপনাকে `rm -rf` ব্যবহার করতে হবে , কিন্তু খুব সতর্ক থাকুন কারণ এই কাজটি অপরিবর্তনীয় এবং আপনি যদি পাথটি ভালোভাবে যাচাই না করেন তবে গুরুত্বপূর্ণ সিস্টেম ফাইল ডিলিট করে ফেলতে পারেন।
এডিটর না খুলেই কোনো ডকুমেন্টের বিষয়বস্তু পড়ার জন্য আমাদের কাছে কয়েকটি উপায় আছে। `cat` পুরো বিষয়বস্তু স্ক্রিনে দেখিয়ে দেয়, যা ছোট ফাইলের জন্য খুবই উপযোগী। ফাইলটি বেশ বড় হলে `less` ব্যবহার করা ভালো, যা দিয়ে পৃষ্ঠা অনুযায়ী নেভিগেট করা যায় এবং ডকুমেন্টের মধ্যে টেক্সট খোঁজা যায়। অন্যদিকে, `tail -f` প্রোগ্রামারদের জন্য অমূল্য , কারণ এর মাধ্যমে লগ ফাইলগুলো কীভাবে আপডেট হচ্ছে তা রিয়েল টাইমে পর্যবেক্ষণ করা যায়।
অনুমতি এবং ব্যবহারকারী নিয়ন্ত্রণ
লিনাক্স নিরাপত্তার ব্যাপারে খুবই কঠোর। প্রতিটি ফাইলের একজন মালিক এবং নির্দিষ্ট রিড, রাইট ও এক্সিকিউট পারমিশন থাকে। আপনি `ls -l` কমান্ড দিয়ে এই পারমিশনগুলো বিশ্লেষণ করতে পারেন । এগুলো পরিবর্তন করার জন্য, আপনি `chmod` (চেঞ্জ মোড) ব্যবহার করেন । আপনি অক্ষর (যেমন ব্যবহারকারীকে এক্সিকিউট পারমিশন দেওয়ার জন্য `u+x`) অথবা সংখ্যা ব্যবহার করতে পারেন; উদাহরণস্বরূপ, সুপরিচিত `chmod 755` হলো সেইসব ডিরেক্টরির জন্য আদর্শ , যেগুলো সবাই পড়তে পারলেও শুধুমাত্র মালিকই সম্পাদনা করতে পারবেন।
যদি কোনো ফাইলের মালিক পরিবর্তন করার প্রয়োজন হয়, তাহলে কমান্ডটি হলো `chown` (চেঞ্জ ওনার) । প্রায়শই, যখন আপনি একটি ওয়েব সার্ভার ইনস্টল করেন, তখন `chown -R www-data:www-data` ব্যবহার করার প্রয়োজন হয় , যাতে সার্ভারটি আপনার ওয়েবসাইটের ফাইলগুলো পড়তে পারে। যেসব কাজের জন্য উচ্চতর বিশেষাধিকারের প্রয়োজন হয়, সেগুলো চালানোর জন্য আমরা `sudo` (সুপারইউজার ডু) ব্যবহার করি , যা আমাদেরকে সাময়িকভাবে সিস্টেম অ্যাডমিনিস্ট্রেটর হিসেবে কাজ করার সুযোগ দেয়।
প্রক্রিয়া এবং কর্মক্ষমতা ব্যবস্থাপনা
কখনও কখনও কোনো প্রোগ্রাম থেমে যায় বা সমস্ত র্যাম ব্যবহার করে ফেলে। কী ঘটছে তা দেখার জন্য, `top` প্রসেসগুলোর একটি গতিশীল চিত্র প্রদান করে, যদিও `htop` একটি অনেক বেশি দৃশ্যমান এবং সুবিধাজনক বিকল্প, যদি আপনি এটি ইনস্টল করতে পারেন। যদি আপনি কোনো সমস্যাযুক্ত প্রসেস শনাক্ত করেন, তবে তার PID (প্রসেস আইডেন্টিফায়ার) লিখে রাখুন এবং সেটিকে অবিলম্বে বন্ধ করতে `kill -9` ব্যবহার করুন ।
ডিস্ক স্পেস পরিচালনা করার জন্য, `df -h` কমান্ডটি আপনাকে পার্টিশনের মোট ব্যবহার সহজে পাঠযোগ্য বিন্যাসে দেখায়। যদি আপনি নির্দিষ্টভাবে জানতে চান কোন ফোল্ডারটি সমস্ত স্টোরেজ ব্যবহার করছে, তাহলে কোনো নির্দিষ্ট ডিরেক্টরির আকারের সারসংক্ষেপ পেতে `du -sh` কমান্ডটি ব্যবহার করতে পারেন ।
নেটওয়ার্ক, প্যাকেজ এবং অতিরিক্ত সরঞ্জাম
নেটওয়ার্কিংয়ের জগতে, কোনো সার্ভার সাড়া দিচ্ছে কিনা তা পরীক্ষা করতে পিং (ping) ব্যবহার করা হয় , অন্যদিকে প্যাকেটগুলো তাদের গন্তব্যে পৌঁছানোর পথ দেখতে ট্রেসরাউট (traceroute) আমাদের সাহায্য করে । আপনি যদি আরও গভীরে যেতে চান, তাহলে কানেকশন নির্ণয়ের জন্য লিনাক্সে কীভাবে পিং করতে হয় তা শিখতে পারেন । আপনার নেটওয়ার্ক কনফিগারেশন দেখতে, আপনি `ip` অথবা প্রচলিত `ifconfig` কমান্ড ব্যবহার করতে পারেন । আপনার সার্ভারে সরাসরি ওয়েব থেকে কোনো ফাইল ডাউনলোড করার প্রয়োজন হলে, `wget` হলো সবচেয়ে বহুমুখী টুল ।
ডিস্ট্রিবিউশন অনুযায়ী সফটওয়্যার ম্যানেজমেন্ট ভিন্ন হয়। ডেবিয়ান বা উবুন্টুতে apt-ই সেরা, যেখানে তালিকা রিফ্রেশ করার জন্য `sudo apt update` এবং প্রোগ্রাম যোগ করার জন্য `sudo apt install` ব্যবহার করা হয় । সেন্টওএস বা আরএইচইএল-এ yum বা dnf ব্যবহৃত হয় । ফাইল কম্প্রেস করে জায়গা বাঁচাতে tar সবচেয়ে পছন্দের বিকল্প , যা দিয়ে পুরো ডিরেক্টরিকে একটিমাত্র .tar.gz ফাইলে প্যাকেজ ও কম্প্রেস করা যায়।
যারা আরও দক্ষতার সাথে কাজ করতে চান, তাদের জন্য অ্যালিয়াস (aliases) রয়েছে , যা দিয়ে দীর্ঘ কমান্ডের জন্য নিজস্ব শর্টকাট তৈরি করা যায় । এছাড়াও, পাইপ (|) ব্যবহার করে একাধিক কমান্ডকে একসাথে যুক্ত করা যায় ; যেমন, আপনি ফাইলের তালিকা দেখতে পারেন, grep দিয়ে .txt ফাইলগুলো ফিল্টার করে বাদ দিতে পারেন, এবং তারপর wc -l দিয়ে সেগুলোর সংখ্যা গণনা করতে পারেন, যা লিনাক্সে একটি অত্যন্ত শক্তিশালী পাইপলাইন অপটিমাইজেশন তৈরি করে।
এই টুলগুলো আয়ত্ত করা প্রযুক্তির সাথে আপনার মিথস্ক্রিয়ার পদ্ধতিকে আমূল পরিবর্তন করে দেয়, যা আপনাকে একজন নিষ্ক্রিয় ব্যবহারকারী থেকে সিস্টেমের উপর সম্পূর্ণ নিয়ন্ত্রণকারী ব্যক্তিতে পরিণত করে। সাধারণ নেভিগেশন এবং পারমিশন ম্যানেজমেন্ট থেকে শুরু করে প্রসেস ও নেটওয়ার্ক অ্যাডমিনিস্ট্রেশন পর্যন্ত, এই নির্দেশাবলী যেকোনো পেশাদার ইউনিক্স-ভিত্তিক পরিবেশের ভিত্তি তৈরি করে। এর মূল চাবিকাঠি হলো নিয়মিত অনুশীলন এবং টার্মিনাল অন্বেষণ করতে ভয় না পাওয়া, এবং একসাথে অনেকগুলো ডিলিট করার কমান্ড ব্যবহারের ক্ষেত্রে সর্বদা সতর্কতা অবলম্বন করা।



