ចងក្រងខឺណែល៖ របៀបធ្វើវានៅលើ Debian base Distro?
នៅក្នុងរបស់យើង។ ធាតុមុនហៅទូរស័ព្ទ "ខឺណែលលីនុច៖ មូលដ្ឋានខឺណែល" យើងដោះស្រាយខ្លះ មូលដ្ឋានទ្រឹស្តីសំខាន់ៗ អំពី ខឺណែលប្រព័ន្ធប្រតិបត្តិការជាធម្មតា; និង ខឺណែលលីនុច, ជាក់លាក់។
ហើយដូចដែលយើងបានបង្ហាញនៅក្នុងវានៅក្នុងមួយនេះយើងនឹងត្រូវបានបញ្ចប់និយាយ មូលដ្ឋានទ្រឹស្តីសំខាន់ៗ ជាមួយអ្នកដទៃ គំនិត និងព័ត៌មានសំខាន់ៗបន្ថែមពីលើការបង្ហាញនីតិវិធីបច្ចុប្បន្នដើម្បីសម្រេចបាន។ "ចងក្រងខឺណែលលីនុច" ពីដំបូងនៅលើក ការចែកចាយ Debian GNU/Linux 11 (Bullseye) ឬផ្អែកលើវា។
ខឺណែលលីនុច៖ មូលដ្ឋានខឺណែល
ហើយមុនពេលអ្នកចាប់ផ្តើមអានប្រកាសនេះអំពី "ចងក្រងខឺណែល" លីនុច ជាទូទៅ យើងនឹងទុកតំណភ្ជាប់មួយចំនួនទៅ ប្រកាសដែលទាក់ទងពីមុន សម្រាប់ការអានពេលក្រោយ៖
លិបិក្រម
បង្កើតខឺណែល៖ បង្កើតការបង្រៀន
តើការចងក្រងកម្មវិធីមានន័យដូចម្តេច?
ជាមូលដ្ឋាននេះ។ ដំណើរការបច្ចេកទេស (ហៅផងដែរថាការវេចខ្ចប់) មាននៅក្នុងការសម្រេចបាន។ ការបំប្លែងកូដប្រភពនៃកម្មវិធី ឬផ្នែកនៃកម្មវិធីពីប្រភពរបស់វា (ភាសាកម្មវិធីដែលប្រើសម្រាប់សរសេរដោយខ្លួនឯង) ទៅ ក ផលិតផលដែលអាចអានបាន។ (ភាសាសរសេរកម្មវិធីកម្រិតខ្ពស់អាចបកស្រាយបាន) ដោយកុំព្យូទ័រ។
នោះគឺសម្រេចបាន។ បំប្លែងពីកូដប្រភពរបស់អ្នក។ រហូតដល់វាក្លាយជា ក កម្មវិធីដែលអាចប្រតិបត្តិបាន និងមុខងារដោយប្រើ ក ខួរក្បាល (កម្មវិធីចងក្រង) សម្រាប់ការបំប្លែងភាសាកម្មវិធីដែលបានប្រើឆ្ពោះទៅរកកូដនៃប្រភេទប្រព័ន្ធគោលពីរ និងប្រភេទ assembler ។
ហើយនៅពេលដែលវាមកដល់ អភិវឌ្ឍនិងចងក្រង ប្រភេទណាមួយ។ កញ្ចប់កម្មវិធី និងកម្មវិធី, មូលដ្ឋាននិងដើមដូចជា ខឺណែល អំពី ដេបៀន GNU / លីនុចកញ្ចប់ខាងក្រោមគឺសមរម្យ និងចាំបាច់ដើម្បីទទួលបានល្អ។ មូលដ្ឋានគាំទ្រការអភិវឌ្ឍន៍ហើយទាំងនេះគឺ៖
apt install autoconf automake autotools-dev build-essential dh-make debhelper debmake devscripts dpkg fakeroot file gfortran git gnupg fp-compiler lintian patch pbuilder perl python quilt xutils-dev
គុណសម្បត្តិ និងគុណវិបត្តិនៃការចងក្រង Linux Kernel ពី Scratch
នៅពេលដែលយើងចងក្រង និងកំណត់រចនាសម្ព័ន្ធផ្ទាល់ខ្លួន ពីដំបូង Kernel ជាក់លាក់សម្រាប់កុំព្យូទ័រជាក់លាក់មួយ យើងអាចទទួលបានអត្ថប្រយោជន៍ដូចខាងក្រោម៖
- ទទួលបានដំណើរការប្រសើរជាងមុន និងការប្រើប្រាស់ស៊ីភីយូទាប។
- ទទួលបានការបង្កើនប្រសិទ្ធភាពកាន់តែប្រសើរ និងការប្រើប្រាស់អង្គចងចាំ RAM ទាប។
- ធ្វើឱ្យប្រសើរឡើងនូវភាពប្រែប្រួលនិងភាពឆបគ្នានៃប្រព័ន្ធប្រតិបត្តិការ។
- បង្កើនប្រសិទ្ធភាព និងផលិតភាពនៃប្រព័ន្ធប្រតិបត្តិការ។
ផ្ទុយទៅវិញ យើងអាចបង្កើតគុណវិបត្តិដូចខាងក្រោមៈ
- ការបរាជ័យក្នុងប្រតិបត្តិការ និងភាពអាចរកបាន នៃធនធាន និងសេវាកម្មដែលចង់បាននៅលើកុំព្យូទ័រដែលបានប្រើ ដោយសារការកំណត់រចនាសម្ព័ន្ធមិនល្អ និងបញ្ហាដែលបណ្តាលមកពីកំឡុងពេលចងក្រង។
- ការងារថេរ យូរ និងធុញទ្រាន់នៅពេលដំបូងដើម្បីបង្កើតវា។ហើយបន្ទាប់មកទៀត ដើម្បីរក្សាវាឱ្យទាន់សម័យដោយដៃ។ ដែលអាចរាប់ពីនាទីទៅម៉ោង អាស្រ័យលើផ្នែករឹងដែលបានប្រើ។
- យូរម៉ោងសិក្សា និងធ្វើតេស្តដោយសារកម្រិតខ្ពស់នៃចំណេះដឹងគឺត្រូវការទាំងអំពីជម្រើសនៃការកំណត់រចនាសម្ព័ន្ធដែលមាននៅក្នុង Kernel និងអំពីកុំព្យូទ័រ (ផ្នែករឹងចុងក្រោយ) ដែលវានឹងត្រូវបានប្រតិបត្តិ។
ប្រភេទខឺណែលដែលមាន
para ចងក្រងខឺណែលមួយ។រឿងដំបូងដែលយើងត្រូវដឹងគឺថាតើខឺណែលមួយណាដែលត្រូវជ្រើសរើស។ ដើម្បីធ្វើដូចនេះយើងត្រូវទៅ គេហទំព័រផ្លូវការ នៃខឺណែល។ហើយជ្រើសរើសមួយក្នុងចំនោមប្រភេទដែលមានស្រាប់។ តើមួយណាដូចខាងក្រោម៖
- បន្ទាត់សំខាន់នៃការអភិវឌ្ឍន៍ (Mainline)៖ ប្រភេទនេះរួមបញ្ចូលខឺណែលទាំងនោះនៅក្នុងដំណាក់កាលអភិវឌ្ឍន៍ ដូច្នេះពួកវាមានមុខងារ និងមុខងារថ្មីៗដែលត្រូវតែសាកល្បង មុនពេលពួកវាអាចដាក់ចូលទៅក្នុងកំណែដែលមានស្ថេរភាព។ ទាំងនេះត្រូវបានរក្សា និងចេញផ្សាយដោយផ្ទាល់ដោយ Linus Torvalds ហើយជាធម្មតាត្រូវបានចេញផ្សាយរៀងរាល់ 2-3 ខែជាមធ្យម។
- ស្ថិរភាព៖ ប្រភេទនេះរួមបញ្ចូលខឺណែលទាំងនោះ ដែលបន្ទាប់ពីឆ្លងកាត់ការសាកល្បងនៃដំណើរការអភិវឌ្ឍន៍ដ៏យូរ ក្លាយជាមានស្ថេរភាព ដូច្នេះពួកវាត្រូវបានជួសជុលតាមរយៈអ្នកថែទាំដែលបានកំណត់ជាផ្លូវការប៉ុណ្ណោះ។ ដូចគ្នានេះផងដែរ ពួកគេមានការចេញផ្សាយកម្មវិធីកែកំហុសមួយចំនួនប៉ុណ្ណោះ រហូតដល់ខ្សែបន្ទាត់សំខាន់បន្ទាប់អាចរកបាន។
- រយៈពេលវែង៖ ប្រភេទនេះរួមបញ្ចូលខឺណែលទាំងនោះ ដែលបន្ទាប់ពីឆ្លងកាត់ការសាកល្បងនៃដំណើរការអភិវឌ្ឍន៍ដ៏យូរ ក្លាយជាមានស្ថេរភាព ប៉ុន្តែត្រូវបានគាំទ្រដោយការជួសជុល និងថែទាំក្នុងរយៈពេលយូរ (ឆ្នាំ)។ ហេតុផលដែលការកែកំហុសសំខាន់ៗត្រូវបានអនុវត្ត ដែលអាចក្លាយជាញឹកញាប់។
តើធ្វើដូចម្តេចដើម្បីចងក្រងខឺណែលនៅក្នុង GNU/Linux Debian Bullseye Distro?
ដោយបានជ្រើសរើស ក កំណែខឺណែលជាក់លាក់នៅលើគេហទំព័រផ្លូវការ ហើយដឹងរួចហើយ (ចម្លង) របស់អ្នក។ ផ្លូវទាញយក តាមរយៈ ប៊ូតុង tarball ដូចគ្នាដែរ វានៅសល់តែអនុវត្តនីតិវិធីខាងក្រោម ដែលយើងនឹងបង្ហាញការយកជាឧទាហរណ៍ ខឺណែលលីនុចមានស្ថេរភាពកំណែ 6.0.8:
ជំហាន 1
cd /usr/src
wget -c https://mirrors.edge.kernel.org/pub/linux/kernel/v6.x/linux-6.0.8.tar.xz
sudo unxz linux-6.0.8.tar.xz
sudo tar xvf linux-6.0.8.tar
sudo ln -s linux-6.0.8 linux
cd /usr/src/linux
sudo make clean && make mrproper
sudo cp /boot/config-`uname -r`* .config
make menuconfig
ការរត់ពាក្យបញ្ជាចុងក្រោយនេះចាប់ផ្តើម "ម៉ឺនុយកំណត់រចនាសម្ព័ន្ធខឺណែល"ដែលជាកន្លែងដែលអ្នកអាច កំណត់រចនាសម្ព័ន្ធ (ប្ដូរតាមបំណង) ប៉ារ៉ាម៉ែត្រ ចំណូលចិត្ត ឬតម្រូវការរបស់អ្នក។ លើសពីនេះទៀតនៅទីនេះវាចាំបាច់ណាស់ក្នុងការកុំភ្លេចថាវាចាំបាច់ ពិនិត្យ ឬដោះធីកជម្រើសខឺណែល 64 ប៊ីតអាស្រ័យលើអ្វីដែលចង់បាន ឬតម្រូវការ។ ហើយផងដែរបន្ទាប់ពីបានធ្វើការផ្លាស់ប្តូរទាំងអស់ដែលបានធ្វើ, អ្នកត្រូវតែ ចុចប៊ូតុងរក្សាទុក ហើយបន្ទាប់មក ប៊ូតុងចេញ.
ជំហាន 2
នៅចំណុចនេះមាន 2 ផ្លូវដែលអាចធ្វើបាន ទទួលយក:
ការដំឡើងខឺណែលតែប៉ុណ្ណោះ
sudo make
sudo make modules_install
sudo make install
sudo update-grub; sudo update-grub2; sudo update-initramfs -u
sudo apt clean; sudo apt autoclean; sudo apt autoremove; sudo apt remove; sudo apt purge
ការដំឡើងខឺណែល និងការបង្កើតឯកសារ .deb
ដើម្បីប្រតិបត្តិជំហាននេះ វាពាក់ព័ន្ធទៅនឹងការដំឡើងកញ្ចប់ដែលហៅថា កញ្ចប់ខឺណែល. ដូច្នេះ នីតិវិធីមានដូចខាងក្រោម ហើយចាប់ផ្តើមដូចខាងក្រោម៖
sudo wget -c http://ftp.us.debian.org/debian/pool/main/k/kernel-package/kernel-package_13.018+nmu1~bpo9+1_all.deb
sudo apt install ./kernel-package_13.018+nmu1~bpo9+1_all.deb
fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers
cd /usr/src
sudo dpkg -i *.deb
ក្នុងករណី ក្នុងអំឡុងពេលដំណើរការចងក្រង អ្នកទទួលបាន a កំហុសទាក់ទងនឹងវិញ្ញាបនបត្រខឺណែល។វានៅតែជាជម្រើសដើម្បីអាចប្រតិបត្តិដូចខាងក្រោម បញ្ជាបញ្ជាដើម្បីជួសជុលវាដោយស្វ័យប្រវត្តិ:
sed -i '/CONFIG_SYSTEM_TRUSTED_KEYS/s/^/#/g' .config
បាទ អ្វីគ្រប់យ៉ាងបានបញ្ចប់ដោយល្អ អ្វីដែលនៅសល់គឺត្រូវចាប់ផ្តើមកុំព្យូទ័ររបស់យើងឡើងវិញ ហើយសាកល្បងពីរបៀបដែលប្រព័ន្ធប្រតិបត្តិការរបស់យើងកើនឡើងជាមួយនឹង Kernel ថ្មី។ ដូចដែលបានបង្ហាញមុន និងក្រោយ ក្នុងរូបថតអេក្រង់ខាងក្រោម៖
មុនពេលដំឡើងខឺណែល។
បន្ទាប់ពីការដំឡើងខឺណែល។
បន្ត
សរុបមក យើងសង្ឃឹមថាការបង្រៀននេះនឹងមានប្រយោជន៍ខ្លាំងណាស់ ទាំងសម្រាប់ អ្នកប្រើប្រាស់កម្រិតខ្ពស់ ដូចទៅនឹង អ្នកអភិវឌ្ឍន៍ Distros ឬ Respin ។ ដែលជាធម្មតាទាមទារ "ចងក្រងខឺណែល" ជាក់លាក់នៅលើប្រព័ន្ធប្រតិបត្តិការ GNU/Linux ដែលបានដំឡើងបច្ចុប្បន្ន ឬមួយដែលកំពុងត្រូវបានបង្កើតតាំងពីដំបូង ដើម្បីបញ្ចូល ដំណើរការកាន់តែប្រសើរ និងការបង្កើនប្រសិទ្ធភាពលើផ្នែករឹងជាក់លាក់. ជាចម្បង ក្នុងគោលបំណងសម្រេចបាន ក ស៊ីភីយូ និង RAM ទាប.
ទោះបីជា, ប្រសិនបើមាននរណាម្នាក់ដឹង មធ្យោបាយដ៏មានសារៈប្រយោជន៍មួយទៀត ដើម្បីអនុវត្តនីតិវិធីនេះ ឬ ដឹងណាមួយ។ ការណែនាំ អនុសាសន៍ ឬការកែតម្រូវ ចំពោះអ្វីដែលត្រូវបានផ្ដល់នៅទីនេះ អ្នកត្រូវបានស្វាគមន៍ក្នុងការធ្វើដូច្នេះតាមរយៈមតិយោបល់។ ហើយបាទ អ្នកគ្រាន់តែចូលចិត្តការបោះពុម្ពផ្សាយនេះ កុំឈប់បញ្ចេញមតិលើវា ហើយចែករំលែកវាជាមួយអ្នកដទៃ។ កុំភ្លេចមកទស្សនារបស់យើង។ «គេហទំព័រ។» ដើម្បីស្វែងរកព័ត៌មានបន្ថែមក៏ដូចជាចូលរួមក្នុងប៉ុស្តិ៍ផ្លូវការរបស់យើង Telegram ពី FromLinux, ខាងលិច ក្រុម សម្រាប់ព័ត៌មានបន្ថែមអំពីប្រធានបទថ្ងៃនេះ។
ធ្វើជាយោបល់ដំបូង