ពាក្យបញ្ជាលីនុច / យូនីក: insmod

ពាក្យបញ្ជា insmod របស់ លីនុច / យូនីក ដំឡើងម៉ូឌុលដែលអាចផ្ទុកបាន ក្នុងខឺណែលកំពុងរត់។ insmod ព្យាយាមភ្ជាប់ម៉ូឌុលទៅខឺណែលដែលកំពុងដំណើរការដោយដោះស្រាយនិមិត្តសញ្ញាទាំងអស់ពីតារាងនិមិត្តសញ្ញានាំចេញរបស់ខឺណែល។

ប្រសិនបើឈ្មោះឯកសារម៉ូឌុលត្រូវបានផ្តល់ឱ្យដោយគ្មានថតឬផ្នែកបន្ថែម insmod នឹងស្វែងរកម៉ូឌុលនៅក្នុងថតលំនាំដើមមួយចំនួន។ អថេរបរិស្ថាន MODPATH អាចត្រូវបានប្រើដើម្បីបដិសេធលំនាំដើមនេះ។ ប្រសិនបើឯកសារកំណត់រចនាសម្ព័ន្ធម៉ូឌុលដូចជា /etc/modules.conf មានវានឹងបដិសេធផ្លូវដែលបានកំណត់នៅក្នុង MODPATH

អថេរបរិស្ថាន MODULECONF ក៏អាចត្រូវបានប្រើដើម្បីជ្រើសឯកសារកំណត់រចនាសម្ព័ន្ធផ្សេងពីលំនាំដើម /etc/modules.conf (ឬ /etc/conf.mules (ដែលបានអនុម័ត)) ។ អថេរបរិស្ថាននេះនឹងបដិសេធរាល់និយមន័យខាងលើ។

នៅពេលអថេរបរិស្ថាន UNAME_MACHINE ត្រូវបានកំណត់ modutils នឹងប្រើតម្លៃរបស់វាជំនួសឱ្យវាលម៉ាស៊ីនពី uname () syscall ។ នេះត្រូវប្រើជាសំខាន់នៅពេលអ្នកកំពុងចងក្រងម៉ូឌុល 64 ប៊ីតនៅក្នុងទំហំអ្នកប្រើ 32 ប៊ីតឬផ្ទុយមកវិញកំណត់ UNAME_MACHINE ទៅប្រភេទម៉ូឌុល។ ម៉ូឌុលបច្ចុប្បន្នមិនគាំទ្ររបៀបឆ្លងឆ្លងពេញលេញសម្រាប់ម៉ូឌុលវាត្រូវបានកំណត់ចំពោះការជ្រើសរើសរវាង 32 និង 64 ប៊ីតកំណែនៃស្ថាបត្យកម្មម៉ាស៊ីន។

ជម្រើស

-e persist_name , --persist = persist_name

បញ្ជាក់កន្លែងដែលទិន្នន័យតស៊ូសម្រាប់ទិន្នន័យម៉ូឌុលត្រូវបានអានពីការផ្ទុកហើយត្រូវបានសរសេរទៅពេលដែលការពន្លានៃម៉ូឌុលនេះត្រូវបានពន្លា។ ជម្រើសនេះត្រូវបានអើពើដោយស្ងៀមស្ងាត់ប្រសិនបើម៉ូឌុលមិនមានទិន្នន័យតស៊ូ។ ទិន្នន័យដែលតស៊ូគឺត្រូវបានអានដោយ insmod ប្រសិនបើជម្រើសនេះមានវត្តមានតាមលំនាំដើម insmod មិនដំណើរការទិន្នន័យជាប់លាប់ទេ។

ជា សំណុំបែបបទ "-" (ខ្សែអក្សរទទេ) ត្រូវបានបកប្រែដោយ insmod ជាតម្លៃនៃ persistdir ដែលបានកំណត់ក្នុង ម៉ូឌុល .conf ដែលបន្តដោយឈ្មោះឯកសាររបស់ម៉ូឌុលទាក់ទងនឹងផ្លូវស្វែងរកម៉ូឌុលវាត្រូវបានរកឃើញក្នុងដកទាំងអស់ នៅពីក្រោយ ".gz", ".o" ឬ ".mod" ។ បើ ម៉ូឌុល .conf បញ្ជាក់ " persistdir = " (មានន័យថា persistdir ជាវាលទំនេរ) នោះទម្រង់ខ្លីនេះត្រូវបានអើពើដោយស្ងៀមស្ងាត់។ (សូមមើល module.conf (5) ។ )

-f , - កម្លាំង

ព្យាយាមផ្ទុកម៉ូឌុលទោះបីជាកំណែរបស់ខឺណែលកំពុងរត់និងកំណែខឺណែលដែលម៉ូឌុលត្រូវបានចងក្រងមិនត្រូវគ្នាក៏ដោយ។ វាគ្រាន់តែបដិសេធការពិនិត្យមើលកំណែខឺណែលវាគ្មានប្រសិទ្ធិភាពចំពោះការត្រួតពិនិត្យឈ្មោះនិមិត្តសញ្ញាទេ។ ប្រសិនបើឈ្មោះនិមិត្តសញ្ញានៅក្នុងម៉ូឌុលមិនត្រូវគ្នានឹងខឺណែលទេនោះគ្មានវិធីដើម្បីបង្ខំឱ្យ ដោត ម៉ូឌុលផ្ទុកម៉ូឌុលទេ។

- h , --help

បង្ហាញសេចក្ដីសង្ខេបនៃជម្រើសនិងចាកចេញភ្លាមៗ។

- k , - អូ តូកូលៀន

កំណត់ទង់ជាតិស្វ័យប្រវត្តិនៅលើម៉ូឌុល។ ទង់នេះនឹងត្រូវបានប្រើដោយ kerneld (8) ដើម្បីយកចេញម៉ូឌុលដែលមិនត្រូវបានប្រើក្នុងរយៈពេលមួយ - ជាធម្មតាមួយនាទី។

-L , --lock

ប្រើ ហ្វូងចៀម (2) ដើម្បីទប់ស្កាត់ការផ្ទុកបណ្ដោះអាសន្ននៃម៉ូឌុលដូចគ្នា។

-m , - ផែនទី

ទិន្នផលផែនទីផ្ទុកនៅលើ stdout ធ្វើឱ្យងាយស្រួលក្នុងការបំបាត់កំហុសម៉ូឌុលនៅក្នុងព្រឹត្តិការណ៍នៃខួរក្បាលខួរក្បាល។

- n , - noload

រត់អត់ចេះធ្វើអ្វីគ្រប់យ៉ាងលើកលែងតែផ្ទុកម៉ូឌុលទៅខឺណែល។ ប្រសិនបើត្រូវបានស្នើសុំដោយ -m-O , ការរត់នឹងបង្កើតផែនទីឬឯកសារផ្លុំ។ ព្រោះថាម៉ូឌុលមិនត្រូវបានផ្ទុកទេអាសយដ្ឋានផ្ទុកខឺណែលពិតប្រាកដមិនត្រូវបានគេដឹងដូច្នេះផែនទីនិងឯកសារប្លុកគឺផ្អែកលើអាស័យដ្ឋានផ្ទុកដោយបំពាននៃ 0x12340000 ។

- ឈ្មោះ module_ , - ឈ្មោះ = ឈ្មោះម៉ូឌុល

កំណត់ឈ្មោះម៉ូឌុលជាក់លាក់ជាជាងការទាញយកឈ្មោះពីឈ្មោះមូលដ្ឋាននៃឯកសារវត្ថុប្រភព។

-O blob_name , - blob = blob_name

រក្សាទុកវត្ថុគោលពីរនៅក្នុង ឈ្មោះ blob ។ លទ្ធផលគឺ blob ប្រព័ន្ធគោលពីរ (គ្មានបឋមកថាអេ ELF) បង្ហាញច្បាស់នូវអ្វីដែលត្រូវបានផ្ទុកទៅក្នុងខឺណែលបន្ទាប់ពីការរៀបចំផ្នែកនិងការផ្លាស់ប្តូរទីលំនៅ។ ជម្រើស -m ត្រូវបានផ្ដល់អនុសាសន៍ដើម្បីទទួលបានផែនទីនៃវត្ថុមួយ។

- p , --probe

ស៊ើបអង្កេតម៉ូឌុលដើម្បីមើលថាតើវាអាចត្រូវ បានផ្ទុកដោយជោគជ័យ ។ នេះរួមបញ្ចូលការដាក់ទីតាំងឯកសារវត្ថុនៅក្នុងផ្លូវម៉ូឌុលត្រួតពិនិត្យលេខកំណែនិងដោះស្រាយនិមិត្តសញ្ញា។ វាមិនពិនិត្យមើលការផ្លាស់ប្តូរទីលំនៅទេហើយក៏មិនបានបង្កើតផែនទីឬឯកសារផ្លុំដែរ។

-P បុព្វបទ , - prefix = បុព្វបទ

ជម្រើសនេះអាចត្រូវបានប្រើជាមួយម៉ូឌុលកំណែសម្រាប់ខឺណែល SMP ឬ bigmem ព្រោះថាម៉ូឌុលបែបនេះមានបន្ថែមបុព្វបទបន្ថែមនៅក្នុងឈ្មោះនិមិត្តសញ្ញារបស់វា។ ប្រសិនបើខឺណែលត្រូវបានបង្កើតឡើងជាមួយកំណែនិមិត្តសញ្ញានោះ insmod នឹងដកយកបុព្វបទដោយស្វ័យប្រវត្តិពីនិយមន័យនៃ "get_module_symbol" ឬ "inter_module_get" ដែលមួយត្រូវតែមានក្នុងខឺណែលណាដែលគាំទ្រម៉ូឌុល។ ប្រសិនបើខឺណែលមិនមានកំណែនិមិត្តសញ្ញាទេប៉ុន្តែម៉ូឌុលនេះត្រូវបានបង្កើតឡើងជាមួយកំណែនិមិត្តសញ្ញាបន្ទាប់មកអ្នកប្រើត្រូវតែផ្គត់ផ្គង់ -P

-q , - ល្អ

កុំបោះពុម្ពបញ្ជីនិមិត្តសញ្ញាណាដែលមិនទាន់ដោះស្រាយ។ កុំត្អូញត្អែរអំពីការមិនត្រូវគ្នានឹងកំណែ។ បញ្ហានឹងត្រូវបានឆ្លុះបញ្ចាំងនៅក្នុងស្ថានភាពចាកចេញពី insmod

- r , - root

អ្នកប្រើមួយចំនួនចងក្រងម៉ូឌុលនៅក្រោម userid មិនមែនជា root បន្ទាប់មកដំឡើងម៉ូឌុលជា root ។ ដំណើរការនេះអាចទុកម៉ូឌុលដែលជាកម្មសិទ្ធិរបស់ userid មិនមែនជា root ទោះបីជាថតម៉ូឌុលត្រូវបានគ្រប់គ្រងដោយ root ក៏ដោយ។ បើសិនជា userid មិនមែនជា root ត្រូវបានសម្រុះសម្រួលអ្នកចុលអាចសរសេរជាន់លើម៉ូឌុលដែលមានស្រាប់ដែលជាកម្មសិទ្ធិរបស់ userid នោះហើយប្រើការប៉ះពាល់នេះទៅ bootstrap ឡើងដល់ root ។

តាមលំនាំដើម modutils នឹងបដិសេធការប៉ុនប៉ងដើម្បីប្រើម៉ូឌុលដែលមិនមែនជារបស់ root ។ ការបញ្ជាក់ - r នឹងបិទបើកការពិនិត្យនិងអនុញ្ញាតឱ្យ root ផ្ទុកម៉ូឌុលដែលមិនមែនជារបស់ root ។ ចំណាំ: តម្លៃលំនាំដើមសម្រាប់ការពិនិត្យ root អាចត្រូវបានផ្លាស់ប្តូរពេល modutils ត្រូវបានកំណត់។

ការប្រើ -r ដើម្បីបិទការត្រួតពិនិត្យឫការកំណត់លំនាំដើមទៅ "គ្មាន root" នៅពេលកំណត់គឺជាការប៉ះពាល់សន្តិសុខដ៏ធំហើយមិនត្រូវបានណែនាំទេ។

-s , - syslog

ទិន្នផលអ្វីគ្រប់យ៉ាងទៅ syslog (3) ជំនួសឱ្យស្ថានីយ។

-S , - kallsyms

បង្ខំម៉ូឌុលដែលបានផ្ទុកឱ្យមានទិន្នន័យ kallsyms ទោះបីខឺណែលមិនគាំទ្រវា។ ជម្រើសនេះគឺសម្រាប់ប្រព័ន្ធតូចដែលខឺណែលត្រូវបានផ្ទុកដោយគ្មានទិន្នន័យ kallsyms ប៉ុន្តែម៉ូឌុលដែលបានជ្រើសត្រូវការ kallsyms សម្រាប់បំបាត់កំហុស។ ជម្រើសនេះគឺជាលំនាំដើមនៅលើ Red Hat លីនុច។

- v , - verbose

ត្រូវនិយាយ។

-V , - វិវឌ្ឍ

បង្ហាញកំណែរបស់ insmod

-X , - export ; -x , --noexport

ធ្វើនិងមិននាំចេញនិមិត្តសញ្ញាខាងក្រៅទាំងអស់របស់ម៉ូឌុលរៀងៗខ្លួន។ លំនាំដើមគឺសម្រាប់និមិត្តសញ្ញាដែលត្រូវនាំចេញ។ ជម្រើសនេះមានប្រសិទ្ធភាពប្រសិនបើម៉ូឌុលមិននាំចេញតារាងនិមិត្តសញ្ញាបញ្ជាដោយផ្ទាល់របស់វាហើយដូច្នេះត្រូវបានបដិសេធ។

-Y , --ksymoops ; - y , - noksymoops

ធ្វើនិងមិនបន្ថែមនិមិត្តសញ្ញា ksymoops ទៅ ksyms ។ និមិត្តសញ្ញាទាំងនេះត្រូវបានប្រើដោយ ksymoops ដើម្បីផ្តល់នូវការបំបាត់កំហុសប្រសើរជាងបើមានគឺនៅក្នុងម៉ូឌុលនេះ។ លំនាំដើមគឺសម្រាប់និមិត្តសញ្ញា ksymoops ត្រូវបានកំណត់។ ជម្រើសនេះគឺមិនអាស្រ័យលើជម្រើស -X / -x

និមិត្តសញ្ញា ksymoops បន្ថែមប្រមាណ 260 បៃក្នុងម៉ូឌុលដែលបានផ្ទុក។ លុះត្រាតែអ្នកខ្លីនៅលើចន្លោះខឺណែលហើយកំពុងព្យាយាមកាត់បន្ថយទំហំរបស់ ksyms ទៅតាមទំហំអប្បបរមារបស់វាសូមយកលំនាំដើមនិងទទួលបានត្រឹមត្រូវ។ និមិត្តសញ្ញា ksymoops ត្រូវបានទាមទារដើម្បីរក្សាទុកទិន្នន័យម៉ូឌុលតស៊ូ។

-N , - តែប៉ុណ្ណោះ

ពិនិត្យតែផ្នែកជាលេខនៃម៉ូឌុលកំណែកំណែប្រឆាំងនឹងខឺណែលប៉ុណ្ណោះពោលគឺមិនអើពើ EXTRAVERSION នៅពេលសម្រេចចិត្តថាតើម៉ូឌុលជាកម្មសិទ្ធិរបស់ខឺណែល។ ទង់នេះត្រូវបានកំណត់ដោយស្វ័យប្រវត្តិសម្រាប់ខឺណែល 2.5 តទៅវាជាជម្រើសសម្រាប់ខឺណែលមុន។

ម៉ូឌុលប៉ារ៉ាម៉ែត្រ

ម៉ូឌុលមួយចំនួនព្រមទទួលប៉ារ៉ាម៉ែត្រផ្ទុកពេលធ្វើប្រតិបត្តិការរបស់ពួកវាតាមបំណង។ ប៉ារ៉ាម៉ែត្រទាំងនេះជាញឹកញាប់ច្រក I / O និង IRQ ដែលប្រែប្រួលពីម៉ាស៊ីនទៅម៉ាស៊ីនហើយមិនអាចកំណត់ពីផ្នែករឹង។

នៅក្នុងម៉ូឌុលដែលបានបង្កើតសម្រាប់ខឺណែលស៊េរី 2.0 និមិត្តសញ្ញាចតុកោណមាត្រឬតួអក្សរអាចត្រូវបានចាត់ជាប៉ារ៉ាម៉ែត្រនិងកែប្រែ។ ការចាប់ផ្តើមខឺណែលស៊េរី 2.1 និមិត្តសញ្ញាត្រូវបានសម្គាល់យ៉ាងច្បាស់ថាជាប៉ារ៉ាម៉ែត្រដូច្នេះមានតែតម្លៃជាក់លាក់ប៉ុណ្ណោះដែលអាចត្រូវបានផ្លាស់ប្តូរ។ លើសពីនេះទៀតព័ត៌មានវាយបញ្ចូលត្រូវបានផ្តល់ជូនសម្រាប់ការពិនិត្យមើលតម្លៃដែលបានផ្តល់នៅពេលផ្ទុក។

ក្នុងករណីលេខគំនូរតម្លៃទាំងអស់អាចជាគោលដប់ប្រាំមួយឬប្រាំបីគោលដប់ C: 17, 021 ឬ 0x11 ។ ធាតុអារេត្រូវបានបញ្ជាក់លំដាប់បំបែកដោយសញ្ញាក្បៀស។ ធាតុអាចត្រូវបានរំលងចោលដោយលុបតម្លៃ។

នៅក្នុងម៉ូឌុលស៊េរី 2.0 តម្លៃដែលមិនចាប់ផ្តើមដោយលេខមួយត្រូវបានចាត់ទុកថាជាខ្សែអក្សរ។ ចាប់ផ្តើមក្នុង 2.1, ពត៌មានប្រភេទរបស់ប៉ារ៉ាម៉ែត្របញ្ជាក់ថាតើត្រូវបកប្រែតម្លៃជាខ្សែអក្សរ។ ប្រសិនបើតម្លៃចាប់ផ្ដើមដោយសញ្ញាសម្រង់ទ្វេ ( "" ) ខ្សែអក្សរត្រូវបានបកប្រែដូចនៅក្នុង C, លំដាប់អក្ខរកម្មនិងអ្វីៗទាំងអស់។ សូមកត់សម្គាល់ថាពីប្រអប់បញ្ចូលសែលសម្រង់ខ្លួនគេអាចត្រូវបានការពារពីការបកប្រែសែល។

ម៉ូឌុលនិងនិមិត្តសញ្ញាដែលទទួលបានអាជ្ញាប័ណ្ណ GPL

ចាប់ផ្ដើមដោយខឺណែល 2.4.10 ម៉ូឌុលគួរតែមានខ្សែអក្សរអាជ្ញាបណ្ណដែលត្រូវបានកំណត់ដោយប្រើ MODULE_LICENSE () ។ ខ្សែអក្សរជាច្រើនត្រូវបានទទួលស្គាល់ថាជាការឆបគ្នា GPL; ខ្សែអាជ្ញាប័ណ្ណណាមួយផ្សេងទៀតឬគ្មានអាជ្ញាបណ្ណមានន័យថាម៉ូឌុលនេះត្រូវបានចាត់ទុកជាកម្មសិទ្ធ។

ប្រសិនបើខឺណែលគាំទ្រទង់ / proc / sys / kernel / flagged flag នោះ insmod នឹង OR ទង់ជាតិដែលមាន '1' នៅពេលផ្ទុកម៉ូឌុលដោយគ្មានអាជ្ញាប័ណ្ណ GPL ។ ការព្រមានត្រូវបានចេញប្រសិនបើខឺណែលគាំទ្រភាពតឹងរ៉ឹងហើយម៉ូឌុលត្រូវបានផ្ទុកដោយគ្មានអាជ្ញាប័ណ្ណ។ ការព្រមានត្រូវបានចេញផ្សាយជានិច្ចសម្រាប់ម៉ូឌុលដែលមាន MODULE_LICENSE () ដែលមិនត្រូវគ្នានឹង GPL ទេសូម្បីតែខឺណែលចាស់ដែលមិនគាំទ្រការបង្ក្រាប។ នេះកាត់បន្ថយការព្រមាននៅពេលប្រើវិធីសាស្ត្រថ្មីនៅលើខឺណែលចាស់។

របៀប insmod -f (កម្លាំង) នឹងឬទង់ជាតិដែលមានស្នាមជា '2' នៅលើខឺណែលដែលគាំទ្រដល់ការតឹងរ៉ឹង។ វាតែងតែចេញការព្រមាន។

អ្នកអភិវឌ្ឍន៍ខឺណែលខ្លះទាមទារនិមិត្តសញ្ញាដែលបាននាំចេញដោយកូដរបស់ពួកគេត្រូវបានប្រើតែដោយម៉ូឌុលដែលមានអាជ្ញាប័ណ្ណ GPL ។ និមិត្តសញ្ញាទាំងនេះត្រូវបាននាំចេញដោយ EXPORT_SYMBOL_GPL ជំនួសនៃ EXPORT_SYMBOL ធម្មតា។ និមិត្តសញ្ញា GPL តែប៉ុណ្ណោះដែលបាននាំចេញដោយខឺណែលនិងដោយម៉ូឌុលផ្សេងទៀតគឺអាចមើលឃើញតែម៉ូឌុលដែលមានអាជ្ញាប័ណ្ណ GPL ដែលនិមិត្តសញ្ញាទាំងនេះលេចឡើងក្នុង / proc / ksyms ដែលមានបុព្វបទ ' GPLONLY_ ' ។ insmod មិនអើពើបុព្វបទ GPLONLY_ នៅលើនិមិត្តសញ្ញាខណៈពេលកំពុងផ្ទុកម៉ូឌុលដែលមានអាជ្ញាប័ណ្ណ GPL ដូច្នេះម៉ូឌុលគ្រាន់តែសំដៅទៅលើឈ្មោះនិមិត្តរូបធម្មតាដោយគ្មានបុព្វបទ។ GPL តែនិមិត្តសញ្ញាប៉ុណ្ណោះមិនត្រូវបានផ្តល់ឱ្យទៅម៉ូឌុលដែលគ្មានអាជ្ញាប័ណ្ណ GPL ទេដែលនេះរួមបញ្ចូលទាំងម៉ូឌុលគ្មានអាជ្ញាប័ណ្ណ។

ជំនួយ Ksymoops

ដើម្បីជួយក្នុងការបំបាត់កំហុសខឺណែល Oops ពេលប្រើម៉ូឌុលលំនាំដើម insmod ដើម្បីបន្ថែមនិមិត្តសញ្ញាខ្លះទៅជា ksyms មើលជម្រើស -Y ។ និមិត្តសញ្ញាទាំងនេះចាប់ផ្តើមដោយ __insmod_modulename_ម៉ូឌុល ត្រូវបានទាមទារដើម្បីបង្កើតនិមិត្តសញ្ញាតែមួយគត់។ វាគឺស្របច្បាប់ក្នុងការផ្ទុកវត្ថុដូចគ្នាច្រើនជាងម្តងក្រោមឈ្មោះម៉ូឌុលផ្សេង។ បច្ចុប្បន្ននិមិត្តសញ្ញាដែលបានកំណត់គឺ:

__insmod_modulename_Oobjectfile_Mmtime_Vversion

objectfile គឺជាឈ្មោះឯកសារដែលវត្ថុត្រូវបានផ្ទុកពី។ នេះធានាថា ksymoops អាចផ្គូផ្គងលេខកូដទៅវត្ថុត្រឹមត្រូវ។ mtime គឺជាត្រាពេលវេលាដែលបានកែប្រែចុងក្រោយនៅលើឯកសារនោះក្នុង hex, សូន្យប្រសិនបើ stats បានបរាជ័យ។ កំណែ គឺជា កំណែ ខឺណែលដែលម៉ូឌុលត្រូវបានចងក្រងសម្រាប់ -1 ប្រសិនបើគ្មានកំណែទេ។ និមិត្តសញ្ញា _O មានអាសយដ្ឋានចាប់ផ្តើមដូចបឋមកថាម៉ូឌុល។

__insmod_modulename_SsectionnameLlength

និមិត្តសញ្ញានេះលេចឡើងនៅពេលចាប់ផ្តើមផ្នែក ELF ដែលបានជ្រើសរើសបច្ចុប្បន្ន .text, .rdata, ។ ទិន្នន័យ, .bss និង .sbss ។ វាបង្ហាញតែក្នុងករណីដែលផ្នែកមានទំហំមិនសូន្យ។ ផ្នែកឈ្មោះគឺជាឈ្មោះនៃផ្នែក ELF, ប្រវែង ជាប្រវែងនៃផ្នែកជាគោលដប់។ និមិត្តសញ្ញាទាំងនេះជួយ ksymoops ផែនទីអាសយដ្ឋានទៅផ្នែកនៅពេលដែលគ្មាននិមិត្តសញ្ញា។

__insmod_modulename_Ppersistent_filename

បានបង្កើតតែដោយ insmod ប្រសិនបើម៉ូឌុលមានប៉ារ៉ាម៉ែត្រមួយឬច្រើនដែលត្រូវបានសម្គាល់ជាទិន្នន័យដែលស្ថិតស្ថេរហើយ ឈ្មោះឯកសារដើម្បីរក្សាទុកទិន្នន័យជាប់លាប់ (សូមមើល - អ៊ី , ខាងលើ) អាចរកបាន។

បញ្ហាផ្សេងទៀតជាមួយខឺណែលបំបាត់កំហុស Oops ក្នុងម៉ូឌុលគឺថាមាតិកានៃ / proc / ksyms និង / proc / modules អាចផ្លាស់ប្ដូររវាង Oops និងពេលអ្នកដំណើរការឯកសារកំណត់ហេតុ។ ដើម្បីជួយដោះស្រាយបញ្ហានេះប្រសិនបើថត / var / log / ksymoops មានស្រាប់នោះ insmod និង rmmod នឹងចម្លង / proc / ksyms និង / proc / modules ដោយស្វ័យប្រវត្តិទៅ / var / log / ksymoops ដោយមានបុព្វបទនៃកាលបរិច្ឆេទ% Y% m % d% H% M% S` ។ អ្នកគ្រប់គ្រងប្រព័ន្ធអាចប្រាប់ ksymoops ដែលឯកសាររូបថតដែលត្រូវប្រើនៅពេលបំបាត់កំហុស Oops ។ គ្មានការប្ដូរដើម្បីបិទច្បាប់ចម្លងស្វ័យប្រវត្តិនេះទេ។ ប្រសិនបើអ្នកមិនចង់ឱ្យវាកើតឡើងសូមកុំបង្កើត / var / log / ksymoops ។ ប្រសិនបើមានថតនោះវាគួរតែត្រូវបានគ្រប់គ្រងដោយ root ហើយក្លាយជារបៀប 644 ឬ 600 ហើយអ្នកគួរតែដំណើរការស្គ្រីបនេះជារៀងរាល់ថ្ងៃ។ ស្គ្រីបខាងក្រោមត្រូវបានដំឡើងជា insmod_ksymoops_clean

ព័ត៌មានជាមូលដ្ឋានត្រូវដឹង

NAME

insmod - ដំឡើងម៉ូឌុលខឺណែលដែលអាចផ្ទុកបាន

SYNOPSIS

insmod [-fhkLmnpqrsSvVxXyYN] [-e persist_name ] [-o module_name ] [-O blob_name ] [ -Premix ] module [ symbol = value ... ]