আমার একটি কমপ্যাক প্রেসেরিও সিকিউ -১১১ 320 এসকিউ রয়েছে, আমি উবুন্টু 10.04 ব্যবহার করছি কারণ আমার মাউস এবং টাচপ্যাডটি 10-10 আপডেট করার পরে নেটওয়ার্ক কাজ করবে না, শব্দ কাজ করবে না ... (আমি বেশিরভাগ সংশোধন করতে পেরেছি) এগুলি প্রায় এক মাস গুগল করার পরে, তবে সমস্ত নয়, আমার 2 ডেস্কটপগুলিতে 10.10 নিয়ে কোনও সমস্যা নেই) তাই আমি 10.04-এ ফিরে যাওয়ার সিদ্ধান্ত নিয়েছি, যেখানে আমার সমস্যা আছে:
আমার ব্রডব্যান্ডের গতি কার্নেল মডিউলটির খুব কম বিচেজ কারণ r8169
, আমি ভাল মডিউলটি ডাউনলোড করেছি r8101
এবং প্রতিবারই কম্পিউটার বুটে rc.local
এটি ঠিক করার জন্য একটি এন্ট্রি থাকে।
প্রশ্ন:
আমি কোনও নির্দিষ্ট স্থান থেকে স্থায়ীভাবে মডিউলটি লোড করতে পারি? আমি শুনেছি /etc/modules
কিন্তু সেখানে আমার মডিউলের নাম প্রয়োজন, তবে আমাকে এটি একটি নির্দিষ্ট পাথ থেকে লোড করতে হবে (এর জন্য ডিফল্ট পাথটি কোথায়)?
ধন্যবাদ.
সুতরাং আমি স্ক্রিপ্ট অধ্যয়ন:
এটা তোলে ফাইল তৈরি করে r8101.ko
এর মধ্যে /lib/modules/`uname -r`/kernel/drivers/net
তাই আমি যতদিন কেউ কিছু যে ফাইল মুছে ফেলবে যেমন মনে করি, এবং আমি কার্নেল আপডেট করব না, হয়তো যোগ r8108
করার /etc/modules
ইচ্ছা কাজ, এবং যোগ r8169
কালোতালিকাটির ... আমি এটা ব্যবহার করে দেখুন দিতে হবে।
EDIT2:
তাই আমি যোগ r8101
করতে /etc/modules
এবং blacklist r8169
করতে /etc/modprobe.d/blacklist.conf
। এটি এখনও পুরানো মডিউল ব্যবহার করে:
radu@adu:~$ lsmod | grep r8
r8101 67626 0
r8169 34108 0
mii 4381 1 r8169
সম্পাদনা: মডিউলটি এই স্ক্রিপ্টটি ব্যবহার করে লোড করা হয় যা এটির সাথে আসে .:
#!/bin/sh
# invoke insmod with all arguments we got
# and use a pathname, as insmod doesn't look in . by default
TARGET_PATH=/lib/modules/`uname -r`/kernel/drivers/net
echo
echo "Check old driver and unload it."
check=`lsmod | grep r8169`
if [ "$check" != "" ]; then
echo "rmmod r8169"
/sbin/rmmod r8169
fi
check=`lsmod | grep r8101`
if [ "$check" != "" ]; then
echo "rmmod r8101"
/sbin/rmmod r8101
fi
echo "Build the module and install"
echo "-------------------------------" >> log.txt
date 1>>log.txt
make all 1>>log.txt || exit 1
module=`ls src/*.ko`
module=${module#src/}
module=${module%.ko}
if [ "$module" == "" ]; then
echo "No driver exists!!!"
exit 1
elif [ "$module" != "r8169" ]; then
if test -e $TARGET_PATH/r8169.ko ; then
echo "Backup r8169.ko"
if test -e $TARGET_PATH/r8169.bak ; then
i=0
while test -e $TARGET_PATH/r8169.bak$i
do
i=$(($i+1))
done
echo "rename r8169.ko to r8169.bak$i"
mv $TARGET_PATH/r8169.ko $TARGET_PATH/r8169.bak$i
else
echo "rename r8169.ko to r8169.bak"
mv $TARGET_PATH/r8169.ko $TARGET_PATH/r8169.bak
fi
fi
fi
echo "Depending module. Please wait."
depmod -a
echo "load module $module"
modprobe $module
echo "Completed."
exit 0