Friday, April 16, 2021

Simple Screen Recorder এবং ফেসবুকে স্ক্রিন শেয়ারিং এর Black Screen সমস্যার সমাধান

 লিনাক্স নির্ভর অপারেটিং সিস্টেমে GNOME Interface ব্যবহারকারীদের কেউ কেউ ফেসবুকের ভিডিও কলে স্ক্রিন শেয়ারিং অপশনে কিংবা সিম্পল স্ক্রিন রেকর্ডারে (Simple Screen Recorder) রেকর্ড করতে গিয়ে সমস্যায় পড়েন। সমস্যাটি হল সেখানে শুধু কালো স্ক্রিন আর পয়েন্টার ছাড়া আর কিছু দেখা যায় না কিংবা রেকর্ড হয় না। 


সমাধান: 

এজন্য আপনাকে Xorg ব্যবহার করতে হবে, এজন্য custom.conf কে নিচে বর্ণিত নিয়মে সামান্য পরির্তন করতে হবে। 

১. টার্মিনাল চালু করুন, সেখানে লিখুন: sudo nano /etc/gdm/custom.conf

২. সেখান থেকে  WaylandEnable=false এর আগে যে হ্যাস (#) চিহ্ন আছে তা মুছে দিন এবং

৩. এর নিচে DefaultSession=gnome-xorg.desktop লাইনটি যোগ করুন। 

৪. সেভ করুন এবং কম্পিউটার/ল্যাপটপ রিস্টার্ট দিন। 

ব্যাস! সমস্যা সমাধান!



Thursday, March 25, 2021

PCI BUS ERROR (সমাধান)

PCI BUS ERROR 


অধিকাংশ আসুস(ASUS) কিংবা যেসব ল্যাপটপ বিশেষ ভাবে উইন্ডোজ অপারেটিং সিস্টেম ব্যবহারের জন্য তৈরী সেগুলোতে লিনাক্স ইন্সটলের সময় এবং ইনস্টল করার পর pci bus error বা pcie bus error মেসেজ পাওয়া যায়। এর ফলে পিসি হ্যাং করে, পারফর্মেন্স বেশ স্লো হয়ে যায়, আর অনেক সময় চালুই হয় না। লিনাক্স কার্নেলের এই মেসেজ অপশনটি বন্ধ না করলে সমস্যা সমাধান হয় না। 


সমস্যা সমাধানে করণীয়

১. ইনস্টলেশনের সময়: 

নতুন অপারেটিং সিস্টেম ইন্সলের সময় বুট অপশনটি এডিট করে নিবেন। বুট মেনু আসার পর সেখানে লেখা থাকে কোনটি চেপে এটিট করতে হবে। কোন কোন ক্ষেত্রে ট্যাব বাটন (TAB) আবার কোন কোন ক্ষেত্রে  ই (E) চাপতে বলে। যেটা বলে সেটা চাপবেন। আর সেখানের quiet splash ইত্যাদি লেখার লাইনটিটে আপনি যোগ করে দিন pci=nomsi অথবা pci_aspm=off দুটোর যেকোন একটা যোগ করলে আপনি অপারেটিং সিস্টেমটি সুন্দরভাবে ইনস্টল করতে পারবেন। আর ইনস্টল করবেন ইন্টারনেট কানেকশন ছাড়া এবং থার্ডপার্টি সফটওয়্যার/কোডেক ইত্যাদি ইনস্টল না করে। এগুলো ইনস্টল করলে ঝামেলা আরো বেড়ে যায়। পরবর্তিতে যখন সমাধান হবে তখন ইন্সটল করে নিতে পারবেন। 


২. ইনস্টলেশনের পর:

এরপর অপারেটিং সিস্টেম ইনস্টল হয়ে গেলে তা চালু করুন। 

টার্মিনালে যান, সেখানে লিখুন, sudo nano /etc/default/grub পাসওয়ার্ড চাইবে, পাসওয়ার্ড দিন। 

সেখানে যে লেখাগুলো আসবে সেখান থেকে GRUB_CMDLINE_LINUX_DEFAULT অংশটি খুঁজে বের করে তার উদ্ধৃতি চিহ্নের “” ভেতর অংশটুকের quite splash লেখা দেখা যাবে, সেখানে pci=nomsi অথবা pcie_aspm=off যুক্ত করে দিন। 

এবং তা সংরক্ষণ (save) করুন। 

[ctrl+x চাপার পর y এবং এরপর Enter কী চেপে nano টেক্সট এডিটরে সেভ করা হয়]

সেখান থেকে ফিরে আবার টার্মিনাল চালু করুন এবং লিখুন sudo update-grub এবং এন্টার চাপুন। 

কাজ হবার পর একবার রিবুট করে নিন। 

সমস্যা সমাধান! 

 

Sunday, March 24, 2019

লিনাক্সের মৌলিক কমান্ড - ২/২০ (ls,chmod, octal, binary)

লিস্ট (ls), চেঞ্জ মোড (chmod), বাইনারি (দুই অঙ্কের সংখ্যা) এবং অক্টাল (আট অঙ্কের সংখ্যা)

ls = list (তালিকা)
এটা দিয়ে ডাইরেক্টরি/ফোল্ডার এবং এদের ভেতরের ফাইলগুলো তালিকা আকারে দেখা যায়। অত্যন্ত গুরুত্বপূর্ণ এবং
প্রয়োজনীয় কমান্ড। গ্রাফিক্যাল ব্যবহারকারীরা যেমন ফাইল ম্যানেজারের মাধ্যমে তালিকা দেখতে পায়, কমান্ডলাইন
ব্যবহারকারীরা তেমনই এই ls কমান্ড ব্যবহার করে তালিকা দেখে। ত‌‌ো বুঝতেই পারছেন কতটা গুরুত্বপূর্ণ!

টার্মিনাল চালু করুন, লিখুন ls এরপর এন্টার-কী চাপুন।
ls -a
সকল কিছু, লুকানো ফাইল সহ (যে সব ফাইল বা ফোল্ডারের আগে ডট "." চিহ্ন থাকে, সেগুলো গনু/লিনাক্স সিস্টেমে লুকানো
ফাইল বা ডাইরেক্টরি/ফোল্ডার হিসেবে বিবেচিত হয়।)
সব কিছু টার্মিনালে দেখাবে।
ls -l
লম্বা তালিকা দেখাবে,
চর্চা করুন,
pwd
ls -al
ls /
ls /bin
ls /usr/share
ls /home
ls ~/Desktop
ls ~/
ls /usr
ls /etc
pwd

তার মানে, আপনি আপনার অবস্থানে থেকেই সমস্ত ফাইল বা ডাইরেক্টরি দেখতে পারছেন।
আর একটু মজা করা যাক!
ধরুন আপনার ইচ্ছে হল /bin এর ভেতর যা যা আছে তা একট টেক্সট ফাইলের ভেতর রাখবেন।
ls /bin >> listbin.txt
কাজ হয়ে গেছে।
ফাইলটা দেখতে চাইলে,
cat /bin/listbin.txt
listbin.txt ফাইলটা /bin এর ভেতর তৈরি হয়েছে, ডেক্সটপ ফোল্ডারে নিয়ে আসতে চাইলে,
sudo cp /bin/listbin.txt ~/Desktop
আর bin.txt ফাইলটি /bin এর ভেতর থেকে মুছে ফেলতে চাইলে,
sudo rm -v /bin/listbin.txt


একটি গুরুত্বপূর্ণ বিষয়, বাদ দেওয়া সম্ভব না, হয় বুঝে শিখতে হবে বা জানতে হবে নয়তো মুখস্ত করতে হবে, মুখস্ত করার
প্রবণতা বেশি, কিন্তু বোঝাটাই সহজ আর সবচেয়ে কার্যকরি, এখানে আলোচনা কিছুটা তাত্ত্বিক হয়ে যাবে, অনুরোধ করব‌ো
বুঝতে চেষ্টা করার।

লিনাক্সের ফাইল নিয়ে ব্যবহারকারী কি কি করতে পারে? ভাবুন দেখি, আচ্ছা, উত্তর বলে দিই, তিনটা কাজ করতে পারে,
১। ফাইলটি পড়তে পারে (Read = r)
২। ফাইলটিতে কিছু যোগ করা বা বাদ দিতে পারে (Write = w)
৩। ফাইলটি এক্সিকিউট করতে পারে (Execute = x)

এই তিনটি কাজ করার জন্য অনুমতি নেবার একটা ব্যাপারও আছে। একটা উদাহরণ, আপনি যখন ls -l কমান্ড
ব্যবহার করেছেন, তখন লাইনের প্রথমে -rw-rw-rw-, -rwxr-xr-x, drwxrwxrwx, lrwxrwxrwx ইত্যাদি
ধরনের লেখা লক্ষ্য করেছেন হয়তো,
অর্থ গুলো বলে ব্যাখ্যা করার চেষ্টা করছি,
-rw-rw-rw- , লক্ষ্য করুন, তিনটি অংশে ভাগ করা, প্রথম অংশটি ব্যবহারকারী ওই ফাইলটি নিয়ে কি করতে
পারবে তা বলা হয়েছে, দ্বিতীয় অংশ গ্রুপ সম্পর্কে বলেছে, আর তৃতীয় অংশ অন্যান্য সাধারণ ব্যবহারকারীর অনুমতির বিষয়ে
বলেছে। তো -rw-rw-rw- থেকে বোঝা যাচ্ছে  ব্যবহারকারী, গ্রুপ, এবং অন্যান্য সবাই ফাইলটি পড়তে পারবে আর
লিখতে বা পরিবর্তন করতে পারবে।
আবার, -rwxr-xr-x এটা থেকে বোঝা যাচ্ছে মূল ব্যবহারকারী তিনটি কাজই করতে পারবে, গ্রুপ ফাইলটি পড়তে
এবং এক্সিকিউট করতে পারবে আর বাকি সবাই শুধুমাত্র এক্সিকিউট করতে পারবে।
drwxrwxrwx, এখানেও তিনটি অংশ রয়েছ, শুরুতে শুধু d দেওয়া, এখানে ডাইরেক্টরি (Directory = d)
বোঝানোর জন্য d, এ থেকে বোঝা যাচ্ছে এটি আসলে ফাইল নয়, ডাইরেক্টরি বা ফোল্ডার।
lrwxrwxrwx, এটার সামনে l (এল) রয়েছে, লিঙ্ক (Link = l), ফাইলটি যে একটি লিঙ্ক (সিম্বলিক অথবা হার্ড)
তাই বোঝানো হচ্ছে।
এগুলিকে ফাইল এবং ডাইরেক্টরির বর্তমান অবস্থা বা মোড (Mode) বলা হয়। আর এই মোড বা অবস্থা পরিবর্তনের জন্য
chmod = change mode (অবস্থা/ধরন পাল্টাও) কমান্ড ব্যবহার করা হয়। এই মোড কমান্ড বেশ কয়েক ভাবেই করা
যায়, তবে এখানে শুধু অক্টাল (Octal) সংখ্যার ব্যবহার নিয়ে আলোচনা করবো। একটু কঠিন, আর মজা ত কঠিনেই!

বাইনারি সংখ্য়ার ডিজিট দুইটি, ০ এবং ১
হ্যাঁ এবং না।

অক্টাল সংখ্যার ডিজিট (অঙ্ক) আটটি (0, 1, 2, 3, 4, 5, 6, 7)
একটি অক্টাল অঙ্ককে উপস্থাপন করতে তিনটি বাইনারি অঙ্কের প্রয়োজন হয়। কারণ, অক্টালের মোট অঙ্ক সংখ্যা আটটি, আর বাইনারির অঙ্ক সংখ্যা দুইটি, এই ২ এর ঘাত ৩ এর মান ৮ , তাই, একটি অক্টাল অঙ্ককে উপস্থাপন করতে তিনটি বাইনারি অঙ্কের প্রয়োজন হয়।

বাইনারি    অক্টাল     অনুমতি
 000 ==     0     ==    কোন অনুমতি নেই
 001 ==     1     ==    শুধু এক্সিকিউট এর অনুমতি রয়েছে
 010 ==     2     ==    শুধুমাত্র পরিবর্তনের অনুমতি রয়েছে
 011 ==     3     ==    লেখা এবং পরিবর্তনের অনুমতি রয়েছে
 100 ==     4     ==    শুধু পড়ার অনুমতি রয়েছে
 101 ==     5     ==    পড়া এবং এক্সিকিউটের অনুমতি রয়েছে
 110 ==     6     ==    পড়া এবং পরিবর্তন করার অনুমতি রয়েছে
 111 ==     7     ==    পড়া, পরিবর্তন এবং এক্সিকিউটের অনুমতি রয়েছে


 অনুমতি যেহেতু অক্টাল কমান্ডে দেওয়া সহজ, তাই, আরো কিছু সহজ বিষয় শেখা যেতে পারে,

 chmod -v অক্টাল_নাম্বার  ফাইল_বা_ডাইরেক্টরির_নাম

 ব্যবহার করে শিখি,
 টার্মিনালে যান,
 touch hello.c
 ls -l
 chmod -v 746 hello.c ; ls -l

প্রথম 7 = 111 =  [মূল ব্যবহারকারীর] পড়া, পরিবর্তন এবং এক্সিকিউটের অনুমতি রয়েছে।
দ্বিতীয় 4 =  100 = [গ্রুপের] শুধু পড়ার অনুমতি রয়েছে।
তৃতীয় 6 = 110 = [অন্যদের] পড়া এবং পরিবর্তন করার অনুমতি রয়েছে।

 chmod -v 000 hello.c ; ls -l
 chmod -v 123 hello.c ; ls -l
 chmod -v 001 hello.c ; ls -l
 chmod -v 223 hello.c ; ls -l

তো কাহিনী এতটুকই, আর যখন সুপার ইউজার (রুট অথবা প্রধান ব্যবহারকারী অথবা কর্তা) হিসেবে কাজ করবেন তখন
 chmod এর আগে sudo শব্দটি লিখতে হবে।
 sudo = super user do (শুধু সুপার ব্যবহারকারীই কাজটি করতে পারে)

 sudo chmod -v 012 hello.c ; ls -l
 sudo chmod -v 512 hello.c ; ls -l
 ইত্যাদি!




আমরা প্রক্রিয়াটি দেখতে চাই, তাই -v ব্যবহার করেছি, তাছাড়া এর অন্য ক‌‌‌োন বিশেষত্ব নেই।

 হয়তো বুঝতে পেরেছি, অথবা পারিনি, দায়ভার আমার ওপরেই বর্তাবে, কিন্তু আপনার তো তাতে লাভ হবে না,
 না বুঝতে পারলে  মুক্ত মনো প্রশ্ন করুন, আর যদি কোন ভুল তথ্য উপস্থাপন করে থাকি তো দয়া করে আমায় জানান।

Tuesday, March 19, 2019

লিনাক্সের মৌলিক কমান্ড - ১/২০

গনু/লিনাক্স ব্যবহারের অন্যতম মজা কমান্ড লাইনে কাজ করা, এজন্য লিনাক্স এর বিশেষ সুনামও রয়েছে‌‌।
খুব বেশি তাত্ত্বিক আলোচনা করবো না,  বা চেষ্টা করবো পুরোপুরি এড়িয়ে যেতে, তবে যতটুকু প্রয়োজন,
সে আলোচনা হবে। বেশকিছু উন্মুক্ত বই আর কমান্ডের ম্যানুয়াল থেকে যে জ্ঞান ‌অর্জন করেছি, চেষ্টা
করবো নতুনদের মাঝে আমাদের প্রিয় মাতৃভাষায় রেখে যেতে।

https://gnulinuxbanglasesh.blogspot.com, ব্লগে বেশকিছু প্রথমিক তথ্য রয়েছে,
তার পর থেকে আলোচনা শুরু হল,

টার্মিনাল চালু করুন, লিখুন এবং এন্টার-কী (Enter-Key) চাপুন,
whatis cp
whatis ls
whatis mv
whatis man
whatis whatis

নিশ্চয়ই whatis কমান্ড সম্পর্কে সাধারণ কিছু ধারণা পেয়েছেন! এটা হল এক লাইনে ম্যানুয়াল বা কোন কমান্ড
সম্পর্কিত ধারণা দেবার কমান্ড। কোন কিছুর তথ্য যদি এক লাইনে না বলা যায়, এটা তাও বলে দেবে।

clear লিখে এন্টার-কী চেপে টার্মিনাল পরিষ্কার করে নিন, এবার লিখুন,
whereis cp
whereis ls
whereis mv
whereis man
whereis whereis

তাহলে বুঝতে পারলাম, whereis কমান্ড কোন কিছুর অবস্থান জানতে ব্যবহৃত হয়।

pwd = print working directory (যে ডাইরেক্টরিতে কাজ হচ্ছে তা দেখাও)
তার মানে, আপনার অবস্থান বর্তমানে কোখায় তাই দেখাবে।
টার্মিনালে লিখুন,
pwd
যা দেখাল, ওটিই আপনার অবস্থান।

cd = change directory (ডাইরেক্টরির পরিবর্তন)
টার্মিনালে যান, লিখুন,
cd /
pwd
cd /home
pwd
cd /bin
pwd
cd /home/your_name/Downloads/
pwd
cd .. [একধাপ পেছনে আসবে]
pwd
cd -  [আগের ডাইরেক্টরিতে ফিরে আসবে]
pwd
cd /etc
pwd
cd ~
pwd
cd /home/your_name

টার্মিনাল চালু করলেই আপনার অবস্থান থাকে /home/your_name এ। এটা আপনার ব্যবহারের ডাইরেক্টরি,
আর একটি হল মূল ডাইরেক্টরি, এটা রুট(root) ডাইরেক্টরি নামে পরিচিত। ডাইরেক্টরি নিয়ে কাজের ক্ষেত্রে
আর একটি গুরুত্বপূর্ণ বিষয় রয়েছে, Absolute Path আর Relative Path নামে এটি পরিচিত।
বোঝার সুবিধার জন্য একে প্রধান পথ এবং শাখা পথ ভেবে নিতে পারি। লিনাক্সের ক্ষেত্রে রুট (root) বা "/" হল
মূলপথ, অর্থাৎ যখন আপনি cd /home/your_name/Downloads এ গেলেন, আপনি প্রধান পথ দিয়েই
আপনার গন্তব্য Downloads এ গিয়েছেন, আর যখন আপনার অবস্থান /home/your_name এ, তখন
cd Downloads
লিখে Downloads নামের ডাইরেক্টরিতে যেতে পারবেন, এই পথ Relative Path বা শাখাপথ।
/home/your_name এখানে প্রধান পথ , আর এর ভেতরে রয়েছে Downloads নামের ডাইরেক্টরি।

Sunday, February 24, 2019

সিস্টেম নির্দেশনা (কমান্ড)

গনু/লিনাক্স টার্মিনালে ব্যবহৃত কিছু সিস্টেমের নির্দেশনা (কমান্ড)

১. uname (your neme? (তোমার নাম?))

   uname             => সিস্টেমের তথ্য দেখাবে
   uname -a         => সিস্টেমের সকল তথ্য দেখাবে
   uname -s         => কার্নেলের নাম দেখাবে
   uname -n         => নেটওয়ার্ক নোড হোস্টের নাম দেখাবে
   uname -r          => ব্যবহৃত কার্নেলের তথ্য দেখাবে
   uname -v         => মূল কার্নেলের ভার্সন দেখাবে
   uname -m        => যন্ত্রের হার্ডওয়্যারের নাম দেখাবে
   uname -p         => নন পোর্টেবল প্রসেসরের ধরণ দেখাবে
   uname -i          => নন পোর্টেবল হার্ডওয়্যারের ভিত্তি দেখাবে
   uname -o         => অপারেটিং সিস্টেমের নাম দেখাবে
   uname --help   => এই কমান্ড সম্বন্ধে আরো সহায়তা প্রয়োজন হলে এখানে পাবেন।
   uname --version => এই কমান্ডের ভার্সন দেখাবে।
  


২. uptime (কতক্ষণ যাবত চালু আছো?); hostname (কার বাড়িতে রয়েছো?); whoami (আমি কে?)



uptime  => বর্তমান সময়, সিস্টেম কতক্ষণ যাবত চালু আছে, কতজন ব্যবহারকারী এখন লগ করা আছে, এবং ১, ৫, এবং ১৫ মিনিট আগের সিস্টেম লোডের গড় মান দেখাবে।  এই তথ্য গুলো "w"  এর মাধ্যমেও দেখা যায়।

uptime  -p          => চমৎকার ফরম্যাটে দেখাবে।
uptime  -h          => এ সম্পর্কে সাহায্য পেতে পারেন এমন লেখা দেখাবে।
uptime  -s          => সিস্টেম কখন থেকে চালু আছে তা বছর-মাস-দিন  ঘন্টা:মিনিট:সেকেন্ড এই ফরম্যাটে দেখাবে।
uptime  -V          => আপটাইমের কোন ভার্সন ব্যবহার করছেন, তা দেখাবে।

uptime  /var/run/utmp           => বর্তমানে কে লগ করে আছে তার তথ্য দেখাবে।
uptime  /proc                         => প্রসেসের তথ্য দেখাবে।


hostname            => আপনার ডিস্ট্রোর নাম দেখাবে, অথবা বলা যেতে পারে আপনি কোথায় কাজ করছেন তার মালিকের নাম। বা কার বাড়ির অতিথী!
hostname  -i        => বাড়ির ঠিকানা...(আপনার হোস্টের(পরিচালকের) আইপি ঠিকানা) দেখাবে।
hostname  -I        => সমস্ত নেটওয়ার্কের ঠিকানা দেখাবে।
hostname  -V       => এটার ভার্সন সম্পর্কিত তথ্য দেখাবে।
hostname -h        => এ সম্পর্কিত সকল সহায়তা পেয়ে যাবেন।

last reboot           => সিস্টেম রিবুট করার সকল ইতিহাস দেখাবে।
w                         => কে অনলাইনে আছে তা দেখাবে। মানে কে এখন  ডিস্টোতে লগইন অবস্থায় রয়েছে।
whoami               => আপনি কে? তার উত্তর পেয়ে যাবেন‍! (Who am I?)

মূল লেখক [uptime] : David MacKenzie [uname]
                              Larry Greenfield [uptime]
                              Richard Mlynarik, Peter Tobias, Bernd Eckenfels [hostname]
                              Michael Meskes [whoami]







অনুবাদক: এস. এ. মুক্তাদীর সম্রাট

Simple Screen Recorder এবং ফেসবুকে স্ক্রিন শেয়ারিং এর Black Screen সমস্যার সমাধান

 লিনাক্স নির্ভর অপারেটিং সিস্টেমে GNOME Interface ব্যবহারকারীদের কেউ কেউ ফেসবুকের ভিডিও কলে স্ক্রিন শেয়ারিং অপশনে কিংবা সিম্পল স্ক্রিন রেকর্...