LinuxϵͳÄÚ´æ´ÅÅ̳õʼ»¯¼¼ÊõÏêϸ½âÎö
LinuxÄÚ´æ³õʼ»¯¼¼Êõ£¨initrd£©ÓÃÓÚÖ§³ÖÁ½½×¶ÎµÄϵͳÒýµ¼¹ý³Ì£¬ÊÇÔÚϵͳÆô¶¯¹ý³ÌÖб»¹ÒÔØµÄÁÙʱrootÎļþϵͳ£¨ÒëÕß×¢£ºÕâÀïµÄrootÎļþϵͳÊÇÖ¸µÄ¸ùÎļþϵͳ£©¡£initrd°üº¬ºÜ¶à¿ÉÖ´ÐгÌÐòºÍÇý¶¯£¬²¢ÔÊÐíÔÚÁÙʱµÄÄÚ´æ´ÅÅ̸ùÎļþϵͳ±»Ð¶ÔØ£¬ÄÚ´æ±»Êͷźó¹ÒÔØÕæÊµµÄrootÎļþϵͳ¡£ÔÚÐí¶àǶÈëʽLinuxÎļþϵͳÖУ¬initrdÊÇ×îÖյĸùÎļþϵͳ¡£ÕâÆªÎÄÕÂÖ÷Òª½²½âÁËlinux2.6Äں˵Äinitrd¼¼Êõ£¬°üÀ¨ÔÚÄÚºËÖеĴ´½¨¼°Ê¹Óá£
1 ʲôÊÇÄÚ´æ´ÅÅ̳õʼ»¯£¿
initrd¹ÒÔØÓÅÏȼ¶¸ßÓÚÕæÊµ¸ùÎļþϵͳ£¬Ëü±»°î¶¨ÔÚÄÚºËÉÏ£¬×öΪÄÚºËÆô¶¯¹ý³ÌµÄÒ»²¿·Ö±»¼ÓÔØ£¨load£©¡£È»ºó£¬×öΪÁ½½×¶ÎÒýµ¼¹ý³ÌµÄµÚÒ»²¿·Ö£¬Äں˹ÒÔØ£¨mount£©initrd£¬ÓÃÓÚ»ñµÃ²¢¼ÓÔØÕæÊµÓÐЧµÄÎļþϵͳ¡£
ΪÁË´ïµ½Õâ¸öÄ¿µÄ£¬initrd°üº¬ÓÐ×îÆðÂëµÄĿ¼Óë³ÌÐò£¬ÀýÈçinsmod£¬À´°²×°ÄÚºËÄ£¿éµ½ÄÚºËÖС£
¶ÔÓÚ×ÀÃæ»ò·þÎñÆ÷linux£¬initrdÊÇÁÙʱÎļþϵͳ£¬ËüµÄÉú´æÖÜÆÚºÜ¶Ì£¬½ö½öÊÇ×öΪµ½´ïÕæÊµ¸ùÎļþϵͳµÄÇÅÁº¡£µ«¶ÔÓÚûÓд洢É豸µÄǶÈëʽϵͳÀ´Ëµ£¬Ëü²ÅÊÇÓÀ¾ÃÐԵĸùÎļþϵͳ¡£±¾ÆªÎÄÕ¶ÔÕâÁ½·½Ãæ¾ùÓÐÉæ¼°¡£
2 ÉîÈë·ÖÎöinitrdL
initrd°üº¬ÓбØÐëµÄ³ÌÐòºÍϵͳÎļþ£¬ÓÃÓÚÖ§³ÖϵͳµÄÆô¶¯µÄµÚ¶þ½×¶Î¹ý³Ì¡£´´½¨³õʼ»¯ÄÚ´æµÄ·½·¨£¬ÊÇËæ×ÅÄãËùʹÓõÄϵͳ°æ±¾¶ø¸Ä±äµÄ¡£´ÓFedora Core3ÒÔºó£¬initrd¾ÍÓÉ»ØËÍÉ豸£¨loop device£©½¨Á¢¡£Ê²Ã´ÊÇ»ØËÍÉ豸£¿ËüÊÇÒ»¸öÉ豸Çý¶¯£¬ÔÊÐíÄ㽫һ¸öÎļþ¹ÒÔØÎª¿éÉ豸£¬²¢¶ÔÆäÎļþϵͳ×ö³öÃèÊö¡£Ò²Ðíloop device²¢²»´æÔÚÓëÄãµÄÄÚºËÖУ¬µ«ÊÇÄãÄܹ»Í¨¹ýÄں˵ÄÅäÖù¤¾ß£¨make menuconfig£©´ò¿ªËü¡£Â·¾¶ÊÇ£ºDevice Drivers-¡·Block Devices-¡·LoopBack Device support¡£ÏÂÃæÎª¼ì²éÃüÁ
# mkdir temp ; cd temp
# cp /boot/initrd.img.gz .
# gunzip initrd.img.gz
# mount -t ext -o loop initrd.img /mnt/initrd
# ls -la /mnt/initrd
#
ÏÖÔÚ£¬Äã¿ÉÒÔͨ¹ý²é¿´/mnt/initrdµÄ×ÓĿ¼À´²é¿´initrdµÄÄÚÈÝ¡£ÐèҪעÒâµÄÊÇ£¬¼´Ê¹ÄãµÄinitrd¾µÏñÎļþ²¢²»ÊÇÒÔ.gz×öΪºó׺Ãû£¬µ«ÊÇÄãͬÑù¿ÉÒÔͨ¹ýÔö¼Ó´Ëºó׺ÃûÀ´ÈÃgunzip´ò¿ªËü¡£
´ÓFedora Core3¿ªÊ¼£¬Ä¬ÈϵÄinitrd¾µÏñ¾ÍÊÇÒ»¸öѹËõµÄgpio¹éµµÎļþ¡£³ýÁËÓùÒÔØÎļþµÄ·½Ê½ÒÔÍ⣬ÄãͬÑù¿ÉÒÔͨ¹ýcpio¹éµµµÄ·½Ê½À´½«Æä¹ÒÔØ³ÉʹÓÃÁË»ØËÍÉ豸µÄѹËõ¾µÏñ¡£Äã¿ÉÒÔͨ¹ýÒÔϵÄÖ¸ÁîÀ´¼ì²éÕâ¸öcpio¹éµµÎļþµÄÄÚÈÝ£º
# mkdir temp ; cd temp
# cp /boot/initrd-2.6.14.2.img initrd-2.6.14.2.img.gz
# gunzip initrd-2.6.14.2.img.gz
# cp
Ïà¹ØÎĵµ£º
¶ÔÐí¶àÓû§À´Ëµ£¬ÔÚDOSºÍWindows»·¾³ÏÂÀûÓù¤¾ßÈí¼þWinZip¡¢ARJµÈѹËõ»ò½âѹÎļþÊDZȽÏÈÝÒ×µÄÊ¡£µ«ÊÇ£¬ÔÚLinuxÖÐÈçºÎ¶ÔÎļþ½øÐÐѹËõÓë½âÑ¹ÄØ£¿
ÓÃtar½¨Á¢´æµµ
tarÊÇ“tape archive”(´Å´ø´æµµ)µÄ¼ò³Æ£¬Ëü³öÏÖÔÚ»¹Ã»ÓÐÈíÅÌÇý¶¯Æ÷¡¢Ó²Å̺͹âÅÌÇý¶¯Æ÷µ ......
linux½Ì³Ì:MountÃüÁLinuxÍâÖô洢½éÖʹÒÔØ·½·¨
¡¡LinuxϵͳÔÚʹÓùâÅÌ¡¢ÈíÅÌ»òUÅÌʱ£¬±ØÐëÏÈÖ´ÐйÒÔØ£¨mount£©ÃüÁî¡£¹ÒÔØÃüÁî»á½«ÕâЩ´æ´¢½éÖÊÖ¸¶¨³ÉϵͳÖеÄij¸öĿ¼£¬ÒÔºóÖ±½Ó·ÃÎÊÏàӦĿ¼¼´¿É¶Áд´æ´¢½éÖÊÉϵÄÊý¾Ý¡£
¡¡¡¡1.¹ÒÔØ¹âÅÌ
¡¡¡¡¹ÒÔØ¹âÅ̵ÄÃüÁîÈçÏ£º
¡¡¡¡# mount -t is09660 /dev/cdrom /mnt/cdr ......
linux-bus,device,driver,class
×ÜÏß
×ÜÏßÊÇ´¦ÀíÆ÷ºÍÒ»¸ö»ò¶à¸öÉ豸֮¼äµÄͨµÀ£¬ÔÚÉ豸ģÐÍÖÐ, ËùÓеÄÉ豸¶¼Í¨¹ý×ÜÏßÏàÁ¬, ÉõÖÁÊÇÄÚ²¿µÄÐéÄâ"platform"×ÜÏß¡£×ÜÏßÄÜÏ໥²åÈë¡£É豸ģÐÍչʾÁË×ÜÏߺÍËûÃÇËù¿ØÖƵÄÉ豸֮¼äµÄʵ¼ÊÁ¬½Ó¡£
ÔÚ Linux É豸ģÐÍÖÐ, ×ÜÏßÓÉ bus_type ½á¹¹±íʾ, ¶¨ÒåÔÚ £º
struct bus_type {
&nb ......
1 linuxÄÚºË
²¢²»Çø·ÖÏ̺߳ͽø³Ì¡£¶ÔÓÚÄÚºËÀ´Ëµ£¬ËùÓеÄÏ̺߳ͽø³Ì¶¼Ò»Ñù£¬Ö»ÊÇÆäÖеÄһЩ¹²Ïí×ÊÔ´¶øÒÑ¡£
2 Äں˿ª·¢Ìص㣺
2.1 linuxÄں˿ª·¢²»ÄÜʹÓÃcº¯Êý¿â£¬ÒòΪc¿âÐèÒª²Ù×÷ϵͳµÄÖ§³Ö£¬¶øÇÒc¿âµÄ´óСºÍЧÂÊÒ²ÊÇÄں˿ª·¢Ëù²»ÄÜÈÝÈ̵ģ»
......
IPÊײ¿µÄid×Ö¶ÎÓÃÀ´±êʶ²»Í¬µÄ·â°ü£¨¶ø²»ÊÇ·ÖÆ¬£¬Ò»¸ö·â°üµÄËùÓÐ·ÖÆ¬ÓµÓÐÏàͬµÄid£©
Õâ¸ö×Ö¶ÎÖ»Õ¼ÓÃ16룬Òò´ËÔÚÒ»¸ö¿ìËÙµÄÍøÂçÉϺܿì¾Í»á»ØÈÆ£¬ÕâÊǾͿÉÄÜÔì³ÉÐÒéÕ»¶Ôip±¨ÎÄʶ±ð»ìÂÒ¡£
LinuxÄں˲ÉÈ¡Á˲ßÂÔÀ´¼õ»ºÆä»ØÈÆËÙ¶È¡£
²»Ê¹ÓÃÈ«¾ÖµÄid±äÁ¿£¬¶øÊǶÔÿ¸öipʹÓÃÒ»¸öµ¥¶ÀµÄ¼ÆÊýÆ÷À´¼ÆËãÆäid£¬
µ«ÊÇipµØÖ·ÊǺ ......