লিনাস টরভাল্ডস্

লিনাক্স– একটি শক্তিশালী এবং নির্ভরযোগ্য অপারেটিং সিস্টেমের নাম। ১৯৯১ সালে ইউনিক্স ভিত্তিক অপারেটিং সিস্টেম “মিনিক্স” নিয়ে ঘাঁটাঘাঁটি করতে করতে ফিনল্যান্ডের হেলসিংকি বিশ্ববিদ্যালয়ের কম্পিউটার বিজ্ঞানের দ্বিতীয় বর্ষের এক ছাত্র তৈরি করে ফেলে একটি অপারেটিং সিস্টেম কার্নেল। সেই ছাত্রের নাম লিনাস টরভাল্ডস্‌।

লিনুস টরভাল্ডস্‌
লিনাস টরভাল্ডস্‌

লিনাস বেনেডিক্ট টরভাল্ডস্‌ ১৯৬৯ সালের ২৮ ডিসেম্বর ফিনল্যান্ডের হেলসিংকি শহরে  সাংবাদিক বাবা-মার পরিবারে জন্মগ্রহণ করেন। নোবেল পুরষ্কার বিজয়ী তাত্ত্বিক রসায়নবিদ লিনাস পাউলিং এর নামানুসারে তাঁর নামকরণ করা হয় লিনাস। নিজের নাম রাখা প্রসঙ্গে তিনি বলেনঃ

 “আমার মনে হয় আমার নাম বিজ্ঞানী লিনাস এবং কার্টুন চরিত্র পিনাটস্‌ এই দুটো মিলিয়ে রাখা হয়েছে, যেটি আমাকে একই সাথে নোবলে পুরষ্কার বিজয়ী রসায়নবিদ এবং কম্বলবাহী কার্টুন চরিত্রে পরিণত করেছে।”

লিনাসের পরিবারের বেশিরভাগ সদস্যই ছিলেন সাংবাদিকতা পেশায় নিয়োজিত। লিনাসের বাবা নীলস্‌ টরভাল্ডস্‌ বেতার সাংবাদিকতার সাথে যুক্ত ছিলেন এবং তাঁর মা অ্যানা টরভাল্ডস্‌ ফিনল্যান্ডের একটি সংবাদপত্রের অনুবাদক ও সংবাদ গ্রাফিক্সের সাথে যুক্ত ছিলেন। লিনাসের বাবা-মা দুজনেই ১৯৬০-এর দশকে হেলসিঙ্কি বিশ্ববিদ্যালয় ক্যাম্পাসে প্রগতিশীল রাজনীতিতে জড়িত ছিলেন। বাবা-মা ছাড়াও লিনাসের দাদা ছিলেন ফিনল্যান্ডের একটি সংবাদপত্রের প্রধান সম্পাদক এবং চাচা ছিলেন টিভি সাংবাদিকতার সাথে যুক্ত। যদিও তাঁদের পরিবার ফিনল্যান্ডের সুইডিশ ভাষী সংখ্যালঘু জনগোষ্ঠীর অংশ যারা ফিনল্যান্ডের জনসংখ্যার মাত্র ৫.৫%।

আর দশটা বাচ্চার মতই আনন্দে কাটছিলো লিনাসের রঙিন শৈশব। তাঁর যখন দশ বছর বয়স তখন তাঁর বাবা-মার বিবাহবিচ্ছেদের কারণে তাঁর শৈশব কিছুটা ম্লান হয়ে যায়। বাবা-মায়ের বিচ্ছেদের পর লিনাস মায়ের সাথে চলে আসেন তাঁর নানার বাড়িতে। সেই নানার বাড়িতেই ছোট্ট লিনাসের প্রথম পরিচয় হয় কম্পিউটারের সাথে।

লিনাসের নানা, হেলসিংকি বিশ্ববিদ্যালয়ের পরিসংখ্যানের অধ্যাপক লিও টরেংভেস্ট, সেইসময় শিশু লিনাসের উপর সবচেয়ে বেশি প্রভাব বিস্তার করেন। ১৯৭০ সালের মাঝামাঝি সময়ে টরেংভেস্ট কমোডর ভিক-২০ নামক পারসোনাল কম্পিউটার কিনে নিয়ে আসেন। ছোট্ট লিনাস সেটি নিয়ে সময় কাটানো শুরু করে। কিন্তু খুব কম সংখ্যক প্রোগ্রাম থাকার কারণে লিনাসের সেই কম্পিউটারের প্রতি খুব দ্রত আগ্রহ উবে যায়। সেই সময় লিনাস চিন্তা করলেন, এই কম্পিউটারের জন্য কিছু নতুন প্রোগ্রাম বানালে কেমন হয়? যেই ভাবা সেই কাজ। বেসিক (BASIC) নামক প্রোগ্রামিং ভাষায় লিনাস কমোডর ভিক-২০ এর জন্য প্রথম সফল প্রোগ্রাম লিখে ফেললেন। তখন তাঁর বয়স মাত্র ১১ বছর। তারপর লিনাস শুরু করলেন কঠিন কিন্তু অত্যন্ত শক্তিশালী এ্যাসেম্বলি ভাষায় প্রোগ্রাম লেখার কাজ। সেই থেকে প্রোগ্রামিং এবং গণিত হয়ে উঠলো লিনাস টরভাল্ডস্‌ এর নেশা।

টরভাল্ডস্‌ এর শখ ছিল নিজের একটি কম্পিউটারের। নিজের শখ পূরণের জন্য ১৯৮৭ সালে তাঁর জমানো টাকা দিয়ে তিনি তাঁর প্রথম কম্পিউটার সিনক্লেয়ার কিউএল (Sinclair QL) কিনেন। কিন্তু এটির প্রতিও তিনি খুব দ্রুত আগ্রহ হারিয়ে ফেলেন কারণ এটি পুনরায় প্রোগ্রাম করা সম্ভব ছিলো না এবং এই কম্পিউটারের দরকারি সফট্‌ওয়্যারও ফিনল্যান্ডে সহজলভ্য ছিলো না।

ফিনল্যান্ডের স্কুল-কলেজের পড়াশোনার পার্ট শেষ করে, বাবা-মার পদাঙ্ক অনুসরণ করে লিনাস টরভাল্ডস্‌ ১৯৮৮ সালে কম্পিউটার বিজ্ঞানে ইউনিভার্সিটি অফ হেলসিংকি-তে ভর্তি হন। কিন্তু প্রথম বর্ষের পরই তাঁর বিশ্ববিদ্যালয়ের পড়াশোনায় কিছুটা ছেদ পরে। ফিনল্যান্ডের প্রতিটি নাগরিকের মিলিটারি প্রশিক্ষণ নেয়া বাধ্যতামূলক হওয়ার  প্রথম বর্ষের পর ১৯৮৯ সালে লিনাস সেই প্রশিক্ষণ নেয়ার জন্য ফিনিস আর্মির “উজিমা” ব্রিগেডে যোগদান করেন। ক্ষেপণাস্ত্র সম্পর্কীয় হিসাবের সাথে তিনি সেই ব্রিগেডে যুক্ত থেকে ১১ মাসের প্রশিক্ষণ শেষে সেকেন্ড ল্যাফটেনেন্ট পদ অর্জন করেন। সেই সময় লিনাস, প্রফেসর এ্যান্ড্রু ট্যানেনবামের লেখা অপারেটিং সিস্টেমঃ ডিজাইন এন্ড ইমপ্লিমেন্টেশন বইটি কিনে শখের বসে পড়া শুরু করেন। বইটিতে ইউনিক্স অপারেটিং সিস্টেমের ছোট্ট ভার্সন মিনিক্স নিয়ে বিস্তারিত আলোচনা ছিলো। এই বইটি লিনাসের জীবনে আমূল পরিবর্তন নিয়ে আসে। ইউনিক্সের খুঁটিনাটি জানতে পেরে তিনি মুগ্ধ হন।

যুবক লিনুস
যুবক লিনাস

১৯৯০ সালে লিনাস আবার কম্পিউটার বিজ্ঞানের একাডেমিক পড়াশোনায় ফিরে আসেন। তিনি হেলসিংকি বিশ্ববিদ্যালয় থেকে স্নাতক এবং স্নাতকোত্তর ডিগ্রী অর্জন করেন। লিনাসের স্নাতকোত্তরের গবেষণার শিরোনাম ছিল লিনাক্স- অ্যা পোর্টেবল অপারেটিং সিস্টেম। ধারণা করা হয় এই বিশ্ববিদ্যালয়ে তিনি ১৯৮৮ থেকে ১৯৯৬ সাল পর্যন্ত পড়াশোনা করেছেন।

১৯৯১ সালের প্রথমদিক লিনাস আইবিএম এর ইন্টেল ৩৮৬ প্রসেসরসমৃদ্ধ একটি পারসোনাল কম্পিউটার ক্রয় করেন। ইন্টেলের আগের অন্য সব চিপস্‌ এর থেকে এটির চিপস্‌ অনবদ্য হওয়ার কারণে লিনাসের মনে জায়গা করে নেয় এই কম্পিউটারটি। এই কম্পিউটারের জন্য মিনিক্স কপি পাওয়ার আগে কয়েক সপ্তাহ প্রিন্স অব পারসিয়া খেলে কাটান তিনি যেটি তাঁকে পরবর্তীকালে লিনাক্স নিয়ে কাজ শুরু করতে সাহায্য করেছিল। কিন্তু এমএস ডস অপারেটিং সিস্টেম এই কম্পিউটারে থাকার  কারণে লিনাস হতাশ হন। তিনি ঠিক করেন ইউনিক্সের নতুন ভার্সন তৈরি করে তিনি তাঁর কম্পিউটারের জন্য ব্যবহার করবেন।

নতুন একটি অপারেটিং সিস্টেম তৈরি করতে যেয়ে লিনাস পড়লেন বিপদে। তিনি ৫০০০ ডলারের নিচে কোন অপারেটিং সিস্টেমের মূল অংশটুকুও পেলেন না। তখন লিনাস সিদ্ধান্ত নিলেন তাঁর নতুন অপারেটিং সিস্টেমটি হবে মিনিক্স এবং ইউনিক্সের মিশেলে তৈরি।

১৯৯১ সালে ইউনিভার্সিটি অফ টেকনোলজিতে লিনাস এবং মুক্ত সফট্‌ওয়্যার আন্দোলনের গুরু রিচার্ড স্টলম্যানের সাক্ষাৎ হয়। সেখান থেকেই লিনাস স্টলম্যানের গনু প্রকল্পে কাজ করা শুরু করেন। তাঁর লিনাক্স কার্নেল ভার্সনের জন্য তিনি স্টলম্যানের জেনারেল পাবলিক লাইসেন্স ব্যবহার করেন এবং গনু কম্পাইলার কালেকশনের সোর্স কোডও লেখেন।

১৯৯৭ সালে লিনাস ফিনল্যান্ড থেকে ক্যালিফোর্নিয়ায় চলে আসেন। সেখানে ট্রান্সমেটা কর্পোরেশানে তিনি ২০০৩ সাল পর্যন্ত কর্মরত ছিলেন। পরবর্তীতে সেখান থেকে তিনি ওপেন সোর্স ডেভেলপমেন্ট ল্যাবে যোগ দেন, যেটি পরে ফ্রি স্টান্ডার্ড গ্রুপের সাথে যুক্ত হয়ে লিনাক্স ফাউন্ডেশনে রূপ নেয়।

এমআইটি টেকনোলজি রিভিউ টিআর১০০ ১৯৯৯ সালে লিনাস টরভাল্ডস্‌-কে বিশ্বের ১০০ জন আবিষ্কারকের মধ্যে প্রথম হিসবে সম্মানিত করে।

২০০৫ সালের ৩ এপ্রিল লিনাস এবং লিনাক্স কার্নেলের ডেভেলপাররা মিলে “গিট” নামক ডিস্ট্রিবিউটেড রিভিশন কন্ট্রোল সিস্টেম উদ্ভাবন করেন।

১৯৯৩ সালে টভ নামের এক জাতীয় কারাটে চ্যাম্পিয়ানের সাথে লিনুসের পরিচয় হয়। পরবর্তীতে তাঁরা বিয়ে করেন। বর্তমানে লিনাস এবং টভ তিন কন্যাসন্তানের জনক-জননী।

ব্যক্তিগত জীবনে লিনাস টরভাল্ডস্‌ নিরিবিলি থাকতেই পছন্দ করেন। তাই ক্যালিফোর্নিয়ার সিলিকন ভ্যালি ছেড়ে পরিবার নিয়ে তিনি এখন বসবাস করেন পোর্টল্যান্ডে। তাঁর ভাষ্যমতে পোর্টল্যান্ডের পরিবেশ তাঁর শৈশবের হেলসিংকি শহরের মত।

লিনাসের ব্যাক্তিগত মাসকট হচ্ছে একটি পেঙ্গুইন যার ডাকনাম টাক্স, যেটি লিনাক্স কার্নেলের মাসকট হিসেবে লিনাক্স সম্প্রদায়ের কাছে ব্যাপকভাবে গ্রহনযোগ্যতা পেয়েছে।

অনেক ওপেন সোর্স আইকনের থেকে ভিন্নতাস্বরূপ লিনাস সব সময় নিজেকে আড়ালে রাখেন এবং অন্যান্য প্রতিযোগী সফটওয়্যার পণ্য নিয়ে মতামত দান থেকে সবসময় দূরে থাকেন। যদিও টোরভাল্ডস বিশ্বাস করেন যে “সফটওয়্যার তৈরির সর্বোত্তম পন্থা হচ্ছে মুক্ত সফটওয়্যার পদ্ধতি”। তারপরও মালিকানাভিত্তিক সফটওয়্যার হলেও তিনি কাজের জন্য সবথেকে ভাল টুলস ব্যবহার করেন । এজন্যই লিনাক্স কার্নেলে মালিকানাভিত্তিক ভার্সন কন্ট্রোল সফটওয়্যার বিটকিপার ব্যবহার এবং তার পক্ষাবলম্বনের জন্য তিনি সমালোচিত হয়েছেন।  লিনুসের একটি হলুদ রঙের মার্সিডিজ গাড়ি আছে, যেটির পিছনে লেখা “মিঃ লিনাক্স কিং অফ গিকস্‌”।

লিনুসের গাড়ির লাইসেন্স প্লেট
লিনুসের গাড়ির লাইসেন্স প্লেট

অরিগনের ওপেন সোর্স ডেভেলপমেন্ট গবেষণাগারে লিনাক্স কার্নেল নিয়ে তাঁর গবেষণা করেই  কাটছে লিনুস টরভালডস্‌ এর  বর্তমান দিন।

লেখক : তামান্না নিশাত রিনি।

লিনাক্স সার্ভারে পাসওয়ার্ড ছাড়া লগইন

আমরা অনেকেই ssh টুল ব্যবহার করে রিমোট লিনাক্স সার্ভারে লগইন করি এবং প্রতিবারই পাসওয়ার্ড দেওয়া লাগে। এই পাসওয়ার্ড দেওয়ার ঝামেলাটা সহজেই এড়ানো যায়। এতে যেই কম্পিউটার থেকে লগিন করা হয়, সেখানে কি (key) তৈরি করে সার্ভারে সেটা দিয়ে দিতে হয়।

Monitor_padlock

এর জন্য নিচের ধাপগুলো অনুসরন করতে হবে :

১) প্রথম কাজ হচ্ছে একজোড়া পাবলিক-প্রাইভেট কি জোড়া (key pair) তৈরি করা। তার জন্য নিচের কমান্ড দিতে হবে :

ssh-keygen -t rsa

এর আউটপুট হবে এমন :
Generating public/private rsa key pair.
Enter file in which to save the key (/home/name/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/name/.ssh/id_rsa.
Your public key has been saved in /home/name/.ssh/id_rsa.pub.
The key fingerprint is:
08:3c:1a:b5:f1:e0:19:13:c5:f4:38:45:ea:e0:1d:91 name@name
The key’s randomart image is:
+–[ RSA 2048]—-+
|    B=+oo        |
|   + OE*         |
|  . O * .        |
|   + * +         |
|  . . + S        |
|                 |
|                 |
|                 |
|                 |
+—————–+

এখানে দুটি কি তৈরি হল। একটি হচ্ছে id_rsa – এটি প্রাইভেট কি (private key), আরেকটি হচ্ছে id_rsa.pub এটি পাবলিক কি (public key)।

২) এখন id_rsa.pub ফাইলটি সার্ভারে কপি করতে হবে (এর জন্য scp কমান্ড ব্যবহার করা যেতে পারে, বা অন্য উপায়েও করা যেতে পারে)।

৩) এবারে ফাইলটি সার্ভারের ~/.ssh/authorized_keys ফাইলে যুক্ত করে দিতে হবে, এই কমান্ড দিয়ে :
cat id_rsa.pub >> /home/name/.ssh/authorized_keys

৪) তারপরে এই কমান্ড দিতে হবে : chmod 600 /home/name/.ssh/authorized_keys (অপশনাল, মানে এই স্টেপ ফলো না করলেও চলে)।

এখন ssh কমান্ড দিয়ে পাসওয়ার্ড ছাড়াই সার্ভারে ঢোকা যাবে! তবে যেই কম্পিউটার থেকে কাজটি করা হয়েছে, মানে যেই কম্পিউটারের পাবলিক কি সার্ভারে কপি করা হয়েছে, সেই কম্পিউটার থেকেই পাসওয়ার্ড ছাড়া সার্ভারে লগিন করা যাবে। অন্য কম্পিউটার থেকে পাসওয়ার্ড লাগবে। আবার চাইলে সার্ভারের নিরাপত্তা বাড়ানোর জন্য পাসওয়ার্ড বেজড লগিন (password based authentication) বন্ধ করে দেওয়া যায়, তাতে যেসব কম্পিউটারের কি সার্ভারের কাছে আছে, কেবল সেসব কম্পিউটার থেকেই সার্ভারে লগিন করা যাবে।

উবুন্টু সার্ভার সেটাপ – ১

একটি নতুন ভিপিএস (VPS) বা ভার্চুয়াল প্রাইভেট সার্ভার কেনার পরে কী কী জিনিস সেটাপ করতে হয়, কীভাবে করত হয়, সেগুলো নিয়ে আমি কয়েকটি আর্টিকেল লিখব। এই আর্টিকেলে আমরা দেখব ভিপিএস কেনার পরে প্রথমেই কিভাবে সিকিউরিটি একটু বাড়িয়ে নেওয়া যায়।

ubuntu-server-1

আমি ধরে নিচ্ছি যে সার্ভারের অপারেটিং সিস্টেম হচ্ছে উবুন্টু।

প্রথমে সার্ভারে লগিন করতে হবে : ssh root@ip-address

তারপরে প্যাকেজ আপডেট করতে হবে :  apt-get update

অত:পর আপগ্রেডের কাজ : apt-get upgrade

এখন পাইথন ও প্রয়োজনীয় কিছু জিনিস ইনস্টল করে ফেলি। (কী কী প্যাকেজ ইনস্টল হচ্ছে সেটা লেখা আসবে The following NEW packages will be installed: এবং The following extra packages will be installed: এর নিচে।)
root@dimikcomputing:~# apt-get install curl python-software-properties software-properties-common

এখন sudo ইনস্টল করা না থাকে সেটি করে নিতে হবে : apt-get install sudo

সার্ভারের নিরাপত্তার জন্য আমরা নতুন একটি ইউজার তৈরি করবো যার এডমিন প্রিভিলেজ থাকবে। এর জন্য নিচের কমান্ডগুলো একে একে টার্মিনালে দিতে হবে। <USERNAME> এর জায়গায় ইউজারনেম দিতে হবে, মানে যে নামে ইউজার আমরা চাই।

groupadd admin
adduser <USERNAME>
usermod -a -G admin <USERNAME>
dpkg-statoverride –update –add root admin 4750 /bin/su

এখন রুট থেকে আমরা নতুন তৈরি করা ইউজারে চলে যাব :

su <USERNAME>

এখন সার্ভারের SSH পোর্ট পরিবর্তন করে দিব। SSH-এর ডিফল্ট পোর্ট হচ্ছে 22। আমরা 1025 থেকে 65536 এর মধ্যে যেকোনো একটি পোর্ট নির্বাচন করতে পারি। আর রুট থেকে যেন আর লগিন করা না যায়, সেই ব্যবস্থাও করে দিব। এর জন্য একটি ফাইল ওপেন করতে হবে :

sudo vim /etc/ssh/sshd_config

(vim ইনস্টল করা না থাকলে এই কমান্ড দিতে হবে : sudo apt-get install vim)

এখন নিচের দুটি লাইনে পরিবর্তন করতে হবে :

Port 2423
PermitRootLogin no

আমরা পোর্ট নাম্বার পরিবর্তন করে 2423 দিলাম (ডিফল্ট 22 ছিল) এবং PermitRootLogin কে no করে দিলাম (ডিফল্ট yes ছিল)।

তারপরে ফাইলের একেবারে শেষে নিচের লাইন দুটি যোগ করতে হবে  (<USERNAME> এর জায়গায় যেই ইউজারটি একটু আগে তৈরি করা হলো, সেটি লিখতে হবে, এঙ্গেল ব্র্যাকেট ছাড়া):

UseDNS no
AllowUsers <USERNAME>
এবারে ssh রিস্টার্ট করতে হবে :

sudo /etc/init.d/ssh restart

এখন যদি আমাদের ইউজার নেম হয় dimik এবং পোর্ট নাম্বার হয় 2423, তাহলে আমরা এভাবে লগিন করতে পারব :

ssh -p 2423 dimik@ip-address

পরের পর্বগুলোতে আমরা দেখবো কীভাবে বিভিন্ন প্রোগ্রামিং ল্যাঙ্গুয়েজ, ডাটাবেজ, ওয়েবসার্ভার ইত্যাদি ইনস্টল করতে হয়।

নিচের দুটি টিউটোরিয়ালের সাহায্য নিয়েছি :
১) https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-12-04

২) http://learnaholic.me/2014/01/09/ubuntu-vps-step-by-step-config-notes/

লিনাক্স

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

 লিনাক্স অপারেটিং সিস্টেমটি তৈরি করেন ফিনল্যান্ডের নাগরিক লিনাস টোরভাল্ডস্, আজ থেকে প্রায় ২৩ বছর আগে, ১৯৯১ সালে। তার আগে ইউনিক্স অপারেটিং সিস্টেম চালু থাকলেও সেটির সোর্স কোড উন্মুক্ত ছিল না। লিনাক্সের সবচেয়ে বড় বৈশিষ্ট্য হচ্ছে এটি ওপেন সোর্স, অর্থাৎ এর সোর্স কোড উন্মুক্ত। যে কেউ এই সোর্স কোড ডাউনলোড করতে পারবে, প্রয়োজন অনুসারে এর কোনো অংশ পরিবর্তন করতে পারবে (এর জন্য অবশ্যই প্রোগ্রামিং জানতে হবে), আবার সেই পরিবর্তিত সোর্স কোড বিতরণও করতে পারবে। তাই লিনাসের তৈরি লিনাক্স অপারেটিং সিস্টেমের রয়েছে অসংখ্য ডিস্ট্রিবিউশন – যেমন আর্চ লিনাক্স, ডেবিয়ান, ফেডোরা, উবুন্টু, লিনাক্স মিন্ট, সেন্ট ওএস, ওপেন সুসে ইত্যাদি। এগুলোর একেকটা দেখতে একেক রকম হলেও মূলে রয়েছে লিনাক্সের কার্নেল – মানে লিনাক্স অপারেটিং সিস্টেমের মূল অংশ। লিনাক্স কার্নেলের উপর ভিত্তি করে আরো প্রয়োজনীয় সফটওয়্যার তৈরি করে সেই ডিস্ট্রিবিউশনগুলো সাজানো হয়।

একসময় লিনাক্সে কোনো গ্রাফিক্যাল ইউজার ইন্টারফেস (সংক্ষেপে গুই) ছিলো না। তখন কমান্ড লাইনেই বিভিন্ন কমান্ড দিয়ে কাজ করতে হতো। যেকারণে সাধারন ব্যবহারকারীরা তাদের ডেস্কটপে উইন্ডোজই ব্যবহার করতেন। কিন্তু ধীরে ধীরে সে চিত্র পাল্টাতে থাকে। বিশেষ করে গত এক দশকে অনেকখানি সহজ হয়ে উঠেছে লিনাক্স। এখনকার দিনের বিভিন্ন লিনাক্স ডিস্ট্রিবিউশনে রয়েছে চমৎকার গুই – সাধারণ বা দৈনন্দিন কাজগুলো করতে আর কমান্ড লেখার প্রয়োজন হয় না। লিনাক্সের গুই এখন উইন্ডোজের মতই সহজ। তাই সাধারণ ব্যবহারকারিদের মাঝে দ্রুত জনপ্রিয় হয়ে উঠছে লিনাক্স।

বাংলাদেশে নব্বইয়ের দশকের মাঝামাঝি কয়েকটি আইএসপি (ইন্টারনেট সার্ভিস প্রোভাইডার) চালু হয়। সেগুলো প্রত্যেকেই লিনাক্সের উপর নির্ভরশীল ছিল। বিডিকম অনলাইন লিমিটেডের সুমন আহমেদ সাবির বলেন, “সেই সময় আমরা কার্ণেল ১.০ তে কাজ শুরু করি। শেখার জন্য কিছু বই আর ডকুমেন্টেশন ছিল, সেগুলো ঘেঁটে ঘেঁটেই আমাদের শেখা। সার্ভারের কাজের জন্য ইউনিক্সই তখন বিশ্বব্যাপী সমাদৃত ছিলো, কিন্তু ওগুলোর দাম ছিল অনেক বেশি, তাই আমাদের জন্য লিনাক্স ব্যবহারের কোনো বিকল্প ছিলো না।” বর্তমানেও বাংলাদেশের আইএসপিগুলোর প্রথম পছন্দ লিনাক্স। তবে এখন কাজ অনেক সহজে করা যায়, আগে যেই কাজ করতে হয়ত তিন-চার দিন সময় চলে যেত, সেই কাজ এখন তিন-চার ঘণ্টায় করে ফেলা যায়। আর ইন্টারনেটের সহজলভ্যতার জন্য নতুন কিছু শিখে নিতে তেমন বেগ পেতে হয় না।

বাংলাদেশে সার্ভারে লিনাক্সের ব্যবহার বেশ আগে থেকে শুরু হলেও পিসিতে লিনাক্সের ব্যবহার ছিল বেশ কম। কারণ লিনাক্সের ব্যবহার ছিলো বেশ ঝামেলার। আর ইন্টারনেটও তেমন একটা সহজলভ্য ছিলো না যে সেখান থেকে সবসময় সাহায্য পাওয়া যাবে। ১৯৯৯ সালে তৈরি হয় বিডিলাগ (বাংলাদেশ লিনাক্স ইউজার গ্রুপ)। একটি ইয়াহু গ্রুপের মাধ্যমে সেখানে সদস্যরা একে অপরকে সাহায্য করতেন। তারপর নতুন সহস্রাব্দের শুরুর দিকে আরো কিছু সংস্থা বাংলাদেশে লিনাক্সভিত্তিক কার্যক্রম পরিচালনা করে। তাদের মধ্যে অন্যতম হচ্ছে অঙ্কুর। লিনাক্সের বাংলা অনুবাদ (লোকালাইজেশন)-এর কাজটি তারা করে বেশ ভালোভাবেই। পরবর্তিতে বিডিওএসএন (বাংলাদেশ ওপেন সোর্স নেটওয়ার্ক) গঠিত হলে লোকালাইজেশনের কাজে বেশ গতি আসে। ওপেন সোর্সকে জনপ্রিয় করে তোলার লক্ষ্যে দেশের অনেকগুলো বিশ্ববিদ্যালয়ে ওপেন সোর্স নেটওয়ার্ক গঠিত হয়। তাদের অন্যতম কাজ ছিলো ওপেন সোর্সকে জনপ্রিয় করা আর সেটি করতে গেলে লিনাক্স ব্যবহারের বিষয়টিই চলে আসে সবার আগে। তবে উইন্ডোজেও কিন্তু অনেক ওপেন সোর্স সফটওয়্যার ব্যবহার করা যায়।

একজন সাধারণ ব্যবহারকারি কেন লিনাক্স ব্যবহার করবে? প্রথম কথা হচ্ছে, এর ব্যবহার উইন্ডোজের মতোই সহজ, বাড়তি কোনো জটিলতা নেই। আর এটি টাকা দিয়ে কিনতে হয় না। উইন্ডোজ কিন্তু টাকা দিয়ে কিনতে হয়, কপি করে উইন্ডোজ ব্যবহার, তাদের নির্মাতা প্রতিষ্ঠান মাইক্রোসফট অনুমোদন করে না। আমরা যেসব উইন্ডোজ ব্যবহার করি, বিভিন্ন ভার্শনের উপর ভিত্তি করে তার দাম আট থেকে চোদ্দ হাজার টাকা হতে পারে (দামটা একটু চেক করে নিয়েন)। এখন আমরা সাধারণত কম্পিউটার দিয়ে কী কী কাজ করি? আমরা ইন্টারনেট ব্রাউজ করি, ডকুমেন্ট তৈরির কাজ করি, স্প্রেডশীট ব্যবহার করি, প্রেজেন্টেশন তৈরি করি, ইনস্ট্যান্ট মেসেজিং সফটওয়্যার ব্যবহার করি (চ্যাটিং করার জন্য), আর বিনোদনের জন্য গান শুনি, ভিডিও দেখি আর গেম খেলি। এই সবগুলো কাজের জন্যই কিন্তু ওপেন সোর্স সফটওয়্যার রয়েছে, যেগুলো লিনাক্সে ব্যবহার করা হয়। এবং সেগুলো বিনামূল্যে। আর কম্পিউটার ব্যবহারকারিরা সবচেয়ে বেশি ভুগেন ভাইরাস সংক্রান্ত সমস্যায়। বিভিন্ন এন্টিভাইরাস কিনে, সেগুলো নিয়মিত আপডেট করেও ভাইরাসের যন্ত্রণা থেকে সবসময় রেহাই পাওয়া যায় না। কিন্তু লিনাক্সে এই সমস্যাগুলো নেই। বিষয়টি এমন না যে লিনাক্সে ভাইরাস বানানো অসম্ভব, বাস্তবে লিনাক্সের জন্য খুব কম মানুষই ভাইরাস তৈরির চেষ্টা করে। তাই সব লিনাক্স ব্যবহারকারিই বছরের পর বছর নিশ্চিন্তে তার কম্পিউটার ব্যবহার করতে পারেন। আরেকটি সুবিধা হচ্ছে লিনাক্স ডিস্ট্রিবিউশনগুলো নিয়মিত আপডেট হয়। তাই আপনার যদি ইন্টারনেট সংযোগ থাকে, তাহলে আপনি আপনার লিনাক্সকে সবসময়ই হালনাগাদ করে রাখতে পারবেন। বিভিন্ন সফটওয়্যারের নতুন ফিচারগুলোও ব্যবহার করতে পারবেন। আর বর্তমানের সব কম্পিউটারের সাথে সংশ্লিষ্ট যন্ত্র (যেমন : প্রিন্টার, স্ক্যানার, ওয়েবক্যাম ইত্যাদি) লিনাক্সে ব্যবহার করা যায়, কোনো ঝামেলা ছাড়াই। আবার লিনাক্সের কিছু কিছু ডিস্ট্রিবিউশন (যেমন লুবুন্টু) আছে, যেগুলো বেশ পুরনো বা কম কনফিগারেশনের কম্পিউটারেও চলে। এত সুবিধা থাকা সত্ত্বেও লিনাক্সের ব্যবহার কম, কারণ হচ্ছে বেশিরভাগ মানুষই লিনাক্স সম্পর্কে জানে না।

বিভিন্ন ওপেন সোর্স সফটওয়্যার :
ব্রাউজার : মজিলা ফায়ারফক্স, ক্রোমিয়াম (গুগল ক্রোমের ওপেন সোর্স ভার্শন)
ডকুমেট প্রসেসর : লিব্রা অফিস রাইটার
স্প্রেডশীট : লিব্রা অফিস ক্যাল্ক
মাল্টিমিডিয়া প্রেজেন্টেশন : লিব্রা অফিস ইমপ্রেস
ইনস্ট্যান্ট মেসেজিং : পিজিন
ইমেজ এডিটিং : গিম্প
ভিডিও প্লেয়ার : ভিএলসি

বাংলাদেশে সাধারণ কম্পিউটার ব্যবহারকারিদের কাছে লিনাক্স এখনও জনপ্রিয় না হলেও সফটওয়্যার ডেভেলাপারদের অনেকেই কিন্তু লিনাক্স ব্যবহার করেন। সি, সিপ্লাসপ্লাস, জাভা, পার্ল, পাইথন, পিএচইচপ, রুবি ইত্যাদি ওপেন সোর্স প্রোগ্রামিং ভাষায় কাজ করার জন্য লিনাক্স হচ্ছে আদর্শ অপারেটিং সিস্টেম। একলিপ্স (eclipse), নেটবিনস্ (netbeans)-এর মত বড় বড় আইডিই (IDE)-গুলো লিনাক্সে চলে ভালোমতোই। এছাড়া ওয়েব ডেভেলাপমেন্টের জন্য প্রয়োজনীয় সফটওয়্যার যেমন এপাচি বা ইঞ্জিনএক্স ওয়েব সার্ভার, ডাটাবেজ সার্ভার, বিভিন্ন টুল, প্যাকেজ এগুলো খুব সহজেই লিনাক্সে ইনস্টল করা যায়। যেহেতু পৃথিবীর বেশিরভাগ সার্ভার লিনাক্সে চলে, তাই ওয়েব ডেভেলাপারদের কাজ করার জন্য প্রথম পছন্দই হচ্ছে লিনাক্সভিত্তিক কোনো একটি অপারেটিং সিস্টেম। এছাড়া কম্পিউটার সায়েন্সের শিক্ষার্থী, যাদের জানতে হয় একটি অপারেটিং সিস্টেম কিভাবে কাজ করে, তাদের জন্যও লিনাক্স আদর্শ।

বিভিন্ন দেশের সরকারি কাজেও লিনাক্সের ব্যবহার বাড়ছে। ব্রাজিল ও চীন সরকার তো লিনাক্সকে নিজেদের মতো করে নিজের ভাষায় পরিবর্তন করে নিয়ে সব সরকারি অফিসে ব্যবহার করছে। ভারতের কেরালা রাজ্যে সরকার সকল শিক্ষা প্রতিষ্ঠানে লিনাক্সের ব্যবহার বাধ্যতামূলক করেছে। পর্তুগালেরও নিজস্ব লিনাক্স ডিস্ট্রিবিউশন আছে। ফ্রান্স ও জার্মান সরকার সম্প্রতি সরকারি কাজে লিনাক্স ব্যবহার করার সিদ্ধান্ত নিয়েছে। আর এই সিদ্ধান্তগুলো কেবল পয়সা বাঁচানোর জন্যই যে নেওয়া, তা কিন্তু নয়। রাষ্ট্রীয় নিরাপত্তাও একটি বড় কারণ। তবে বাংলাদেশ সরকারের এখনও এরকম কোনো উদ্যোগ চোখে পড়েনি। খুব নিকট ভবিষ্যতে যখন আমাদের দেশে লাইসেন্স ছাড়া কোনো সফটওয়্যার ব্যবহার করা পুরোপুরি নিষিদ্ধ হয়ে যাবে, তখন কেবল সরকারি অফিসের কম্পিউটারে অপারেটিং সিস্টেম ও অফিস প্যাকেজের লাইসেন্স কিনতে গিয়েই হাজার হাজার কোটি টাকা দেশ থেকে বের হয়ে যাবে। তাই সরকারের উচিত এখনই এগিয়ে আসা এবং সরকারিভাবে লিনাক্সের একটি ডিস্ট্রিবিউশন তৈরি করে ফেলা। কাজটি মোটেও কঠিন কিছু নয় এবং আমাদের দেশের প্রোগ্রামাররাই এটি খুব ভালোভাবে সম্পন্ন করতে পারবেন। এতে রাষ্ট্রের নিরাপত্তা বৃদ্ধির সাথে সাথে আরো দুটি কাজ হবে. প্রথমত, কয়েক হাজার কোটি টাকা দেশের বাইরে চলে যাওয়ার ব্যাপারটি ঠেকানো যাবে। দ্বিতীয়ত, কম্পিউটার সাধারণ মানুষের কাছে আরো আপন হয়ে উঠবে। প্রযুক্তি যখন আপন হয়ে যায়, নিজের হয়ে যায়, তখন মানুষ তার সৃজনশীলতা দিয়ে কত ভাবে যে এর ব্যবহার করতে পারে, সেটি হয়ত আমরা এখন কল্পনা করতে পারবো না।

নোট : আমার এই লেখাটি প্রথম আলোতে প্রকাশিত হয় আগষ্ট ২৯, ২০১৪ তারিখে। লিঙ্ক : http://www.prothom-alo.com/technology/article/304102/

লিনাক্স এর ওপর ফ্রি অনলাইন কোর্স

লিনাক্স ফাউন্ডেশন একটি অলাভজনক প্রতিষ্ঠান। তাদের বিভিন্ন কাজের মধ্যে একটি গুরুত্বপূর্ণ কাজ হচ্ছে লিনাক্স-এর উপর বিভিন্ন কোর্সের আয়োজন করা। তেমন একটি কোর্স হচ্ছে লিনাক্স পরিচিতি (Intro to Linux)। কোর্সটি করতে আপনাকে গুনতে হবে $2400 (হুম, ঠিক দেখছেন, দুই হাজার চারশ ডলার যা বাংলাদেশি টাকায় প্রায় এক লক্ষ পঁচাশি হাজার টাকা)। এই কোর্সটি অনলাইন কোর্স হিসেবে ফ্রি নিয়ে আসছে এডএক্স। আগষ্টের এক তারিখ থেকে লিনাক্স ফাউন্ডেশনের সাথে যৌথভাবে তারা এই কোর্সটি শুরু করবে।

চল্লিশ থেকে ষাট ঘণ্টার এই কোর্সটি পড়াবেন ডঃ জেরি কুপারস্টেইন, যিনি লিনাক্স ফাউন্ডেশনের সব ট্রেনিং কনটেন্ট দেখাশোনা করেন। যাদের কম্পিউটার ব্যবহারের অভিজ্ঞতা আছে কিন্তু লিনাক্স সম্পর্কে কিছুই জানেন না, বা খুব কম জানেন, তাদের জন্য কোর্সটি উপকারি হবে। আর কোর্সটি করার আগে আপনার কম্পিউটারে লিনাক্স ইনস্টল করে নিতে ভুলবেন না।

কোর্সের লিঙ্ক : https://www.edx.org/course/linuxfoundationx/linuxfoundationx-lfs101x-introduction-1621