ºìÁªLinuxÃÅ»§
Linux°ïÖú

FreeBSDÔÚASUS±Ê¼Ç±¾Éϵݲװ£¦Ë«Òýµ¼FreeBSDºÍXP

·¢²¼Ê±¼ä:2008-01-04 00:00:58À´Ô´:ºìÁª×÷Õß:Interlude
ÂòÁ˸ö±¾±¾£¬×¼±¸×°FB£¬Óöµ½²»ÉÙÄÑÌ⣬ÏÖÔڻὫÓöµ½µÄÎÊÌâºÍ½â¾ö°ì·¨Ð´ÏÂÀ´£¬¹©´ó¼Ò²Î¿¼¡¢±¸²é¡£
Ò»¡¢°²×°
¡¡¡¡ÏàÐŲ»ÉÙµÄÅóÓÑÔÚ³õѧFreeBSDµÄʱºò¶¼ÔøÏë¹ýÔÚµçÄÔÉÏXPºÍFreeBSD£¬µ«²¢·ÇÊÇÿ¸öÈ˵ĵçÄÔÉ϶¼ÊÇÁ½¿éÓ²ÅÌ£¬ÓÈÆäÊÇÏëÔڱʼDZ¾Éϰ²×°FreeBSDµÄÅóÓÑ¡£VMÕâ¸ö¶«¶«ºÃ£¬µ«±Ï¾¹ÓÐʱ»¹ÊÇÒªÔÚÕæ»úÉϽøÐÐÊÔÑ飬±ÈÈçÏñÄں˱àÒë¡¢make worldÖ®ÀàµÄ²Ù×÷£¬ÏàÐÅÓйýÔÚVMÏÂ×öÕâЩ¹¤×÷µÄÅóÓÑÒ»¶¨»á¶Ô´Ë¹ý³Ì¿Ì¹ÇÃúÐÄ£¬ÄǸöµÈ´ýµÄ¹ý³ÌÓÃÁ½¸ö×ÖÀ´ÐÎÈݾÍÊÇ£ºÄѹý¡£
¡¡¡¡ÎÒ°²×°Ë«Òýµ¼µÄʱºò£¬Ã»ÓÐʹÓÃLinuxÀï¹ã·ºÊ¹ÓõÄGrub£¬ËäÈ»ÎÒÒ²ÕÒµ½ÁËÎĵµÀ´½øÐвÙ×÷¡£ÎҵĹ۵ãÊǼòµ¥×îºÃ£¬Ê¹ÓÃÊÇFreeBSDChinaÉÏpenguinµÄÌù×ÓÀïдµÄÄǸöÄÚÈÝ£º
½«BSDËùÔÚÖ÷·ÖÇøSet Active(¿ÉÒÔÓÃPQ£¬DiskmanµÈ¹¤¾ß¶¼¿É£© ĬÈϽ«Òýµ¼BSDϵͳ£¬½øÈëBSDϵͳ¿Éºó£º
ÒýÓÃ: #dd bs=512 count=1 if=/dev/ad0s3 of=bootsect.bsd
ºìÉ«ÎÄ×ÖÊÓÄã×Ô¼ºÓ²ÅÌÇé¿öÐÞ¸Ä
½«Éú³ÉÒ»¸öbootsect.bsd,½«Õâ¸öÎļþ¿½±´µ½XPÅ̸ùĿ¼Ï£¨mount_msdos FATϵͳ¿½±´¹ýÈ¥£¬»òÊÇÈκΰ취¿½¹ýÈ¥¾ÍÐУ¬ÔÙ½«XPËùÔÚÖ÷·ÖÇøSet Active£¨Ò²¿ÉÒÔÓÃFreeBSD×Ô´øµÄfdisk£¬²»ÊìÁ·É÷Ó㬻¹ÊÇPQ,Diskman°É)
±à¼­XPµÄboot.iniÎļþ£¬¼ÓÈë C:\bootsect.bsd="FreeBSD"
OK,ÏÂ´ÎÆô¶¯XP½«»áÓÐÆô¶¯²Ëµ¥Ñ¡Ôñ
¡¡¡¡ÐèÒªµ¥¶À˵Ã÷µÄÊÇ£¬Èç¹ûÄã²»ÏëÆÆ»µÊý¾ÝµÄ»°£¬¿ÉÒÔʹÓÃPQµÈÈí¼þ½øÐзÖÇøµ÷Õû£¬ÒòΪÎÒµÄÓ²Å̿ռäÒѾ­²»¹»£¬ÔÚ±£´æÁËËùÐèÒªµÄÎļþºó£¬Ñ¡ÔñµÄÊǽ«Õû¸öÓ²Å̸ñʽ»¯µôºóÖØÐ°²×°µÄϵͳ¡£ÔÚ°²×°Ê±£¬ÏȰÑXP°²×°µ½ÁËÓ²Å̵Äǰ67G£¬½«120GÓ²ÅÌµÄÆäËû²¿·Ö·Ö¸øÁËFB¡£°´ÕÕÕý³£µÄ³ÌÐò°²×°ºÃXPºó£¬Í¬ÑùÓÃÕý³£µÄ³ÌÐò°²×°FB£¬ÔÚ°²×°FBµÄ¹ý³ÌÖУ¬ÓÐÒ»¸ö½çÃæÊÇÑ¡Ôñ°²×°FBÒýµ¼³ÌÐòµÄÄǸö¶Ô»°¿ò£¬ÎÒÔÚÕâÀï·¸Á˲»Ö»Ò»´ÎµÄ벡£¬¿´µ½¸Ã½çÃæÊ±£¬µ£ÐÄFBдMBRµ½Ó²Å̵ĿªÊ¼²¿·Ö£¬ÆÆ»µµôXPµÄÒýµ¼³ÌÐò£¬Ò»Ö±Ê¹ÓõÄÊÇNONEÑ¡ÏËùÒÔÖ®ºóµÄFBÒ»Ö±Æô¶¯²»ÆðÀ´£¨ÐèÖª£¬WINÐÞ¸´MBRÏ൱֮Âé·³£©¡£ºóÀ´ÎÞÒâ¼ä°²×°ÁËFBµÄ±ê×¼Òýµ¼³ÌÐò£¬ÔÙÓÃwin98µÄ¹âÅ̽«WIN·ÖÇøÉèÖÃΪ»î¶¯£¨¼´¿ÉÆô¶¯×´Ì¬£©Ö®ºó¾Í¿ÉÒÔÀûÓÃWINµÄÆô¶¯²Ëµ¥À´Òýµ¼FBÁË¡£
½«bootsect.bsdºÍboot.ini±£´æµ½Ò»¸ö°²È«µÄµØ·½£¬½«À´ÖØ×°XPµÄʱºò½«ÕâÁ½¸öÎļþ¿½±´µ½CÏ£¬È»ºóÊÕ¹¤¡£
½×¶Î×ܽ᣺
1¡¢ÒÔǰ´«ËµµÄFBµÄÆô¶¯ÐÅÏ¢ÒªÔÚ1024ÖùÃæÖ®ÄÚµÄÄǸöÏÞÖÆËÆºõ²»ÔÙÓÐÓÃÁË¡£
2¡¢Íò°ãÎÞÄεÄÇé¿öÏ£¬±§×űØËÀµÄÐÄÇéÈ¥×ö£¬Ò²Ðí»áÓÐÒâÍâÊÕ»ñ¡£
¶þ¡¢Ó²¼þÇý¶¯°²×°
¡¡¡¡°´ËµÕâ¸ö²¿·Ö¶ÔÓÚÊìϤÓÚ°²×°WINµÄÅóÓÑÀ´ËµÊÇÒ»¼þÔÙ¼òµ¥²»¹ýµÄÊÂÇéÁË£¬µ«ÔÚUnixÏÂÕâ¿ÉÄÜÊÇÒ»¸öجÃζ¼Ëµ²»¶¨^_^£¬²»·Ï»°ÁË£¬ÂíÉÏ¿ªÊ¼¡£
£¨Ò»£©Íø¿¨Çý¶¯µÄ°²×°
Îҵı¾±¾»ªË¶µÄ˵·¨ÊǸßÐÔ¼Û±ÈϵÁеĻúÐÍ£¬ÓÐÒ»²¿·ÖÓ²¼þÊDZȽÏNBµÄ£¬±ÈÈçÏñWLAN£¬ÊÇintel 3945ABGµÄ£¬Íø¿¨ÓõÄÊÇRealTek RTL8168/8111 PCI-E GigabitµÄÒÔÌ«Íø¿¨¡£Âé·³µÄÊÇFB 5.4²»Ö§³ÖÕâһϵÁеÄÍø¿¨£¬»¹ºÃRealTek¹«Ë¾Ìṩfor FreeBSDµÄÇý¶¯ÏÂÔØ£¬FB²ÅÄܵÃÒÔ½ø×¤Îҵı¾±¾¡£
Method 1: //·½·¨1£º
1.Copy if_rl.ko in "modules" directory to "/modules" directory and overwrite the existing file. //¸´ÖÆ if_rl.ko µ½/modules Ŀ¼²¢¸²¸ÇÒÑ´æÔÚµÄÎļþ
3.Reboot.//Õâ¸ö²»ÓÃ˵Á˰ɣ¿
ºÜÃ÷ÏÔ£¬ÎÒÃÇÏÂÔØµ½µÄѹËõ°üÀﲢûÓÐÕâ¸öÄ£¿é£¬ËùÒÔµÚÒ»¸ö·½·¨Ê§°Ü£¨ÆäʵҲÊǶԹã´óµÄUnixÓû§¸ºÔ𣬴ÓÔ´Âë°²×°µÄ³ÌÐòÊÇ×îÊʺÏÄãµÄ»úÆ÷µÄ£¬ËäÈ»Âé·³ÁËһЩ^_^£©£¬¸ÄÓõڶþ¸ö·½·¨¡£
Method 2:
Because the FreeBSD kernel has default drivers to support RTL8139C and RTL8169S. To use the RTL8139C+, RTL8169SB, RTL8169SC, RTL8168B, and RTL8101E, you need to update your NIC driver by recompiling your FreeBSD kernel.
//ÒòΪFreeBSDµÄÄÚºËÓÐ×Ô´øµÄÇý¶¯À´Ö§³ÖRTL8139CºÍRTL819S¡£ÒªÊ¹ÓÃRTL8139C+¡¢ RTL8169SB¡¢RTL8169SC¡¢RTL8168B ºÍ RTL8101E£¬ÄãÐèҪͨ¹ýÖØÐ±àÒëÄãµÄFreeBSDÄÚºËÀ´Éý¼¶ÄãµÄNIC£¨Network Interface Card£¬ÍøÂç½Ó¿Ú¿¨£©Çý¶¯¡£
The main steps you have to do:(FreeBSDSrcDir means the directory of FreeBSD source code and it may be "/usr/src/sys")//ÓÐһЩÖ÷ÒªµÄ²½ÖèÄãÐèÒª×ö£¨FreeBSDSrcDir µÄÊÇÖ¸ÄãµÄFreeBSD Ô´´úÂëµÄĿ¼£¬Â·¾¶¿ÉÄÜÊÇ /usr/src/sys£¬Ä¬ÈÏ·¾¶£©£º
1. keep the orginal driver source code://±£ÁôԭʼÇý¶¯Ô´Âë
# cd /usr/src/sys/pci
# cd /usr/src/sys/modules
# cd /usr/src/sys/modules/rl
# cd /usr/src/sys/i386/conf/
2. recompile your kernel (you must install your FreeBSD source code first !!) //ÖØÐ±àÒëÄãµÄÄÚºË(Äã±ØÐëÒªÏȰ²×°ÄãµÄFreeBSD Ô´´úÂë)
# vim /usr/src/sys/i386/conf/GENERIC and delete rl and re//rl¡¢reÊÇRTLÍø¿¨ÔÚFBÀïµÄÉ豸Ãû£¬ÏÂͬ¡£
# vim /usr/src/sys/modules/Makefile and delete rl and re //ÔÚ²Ù×÷´Ë²½ÖèµÄʱºò£¬Óã£À´×¢Ïúº¬ÓÐ re¡¢rl µÄÁ½Ðлá³öÏÖ±àÒë´íÎó£¬ÐèÒªÕæÕý´ÓÎļþÖÐɾ³ýÕâÁ½ÐбàÒë²ÅµÃÒÔ¼ÌÐø¡£
# cd /usr/src/sys/i386/conf
# /usr/sbin/config GENERIC//µ½ÕâÒ»²½ÖØÐ±àÒëÄں˵Äʱºò£¬ÎҲο¼µÄÊÇ¡¶FreeBSD ¼¼ÊõÄÚÄ»¡·P332µÄ
# make kernel KERNCONF=zeroB£¨zeroBÊÇÎÒµÄÄں˵ÄÃû³Æ£¬Çë¸ù¾ÝÄãµÄÄÚºËÎļþµÄÃû³Æ¼°ÄÚºËÎļþÖеÄident×Ö¶ÎÀ´È·¶¨£©£¬²¢Ê¡ÂÔÁËÒÔϵIJ½Öè´Óstep 3 ¿ªÊ¼¡£µ±È»ÐèÒªÖØÆôÄãµÄϵͳ²ÅÄܼÌÐøÁË¡£
(for FreeBSD 5.x/6.x)
# cd ../compile/GENERIC
(for FreeBSD 4.x)
# cd ../../compile/GENERIC
# make depend
# make
# make install
# reboot
3. update the driver source code: //¸üÐÂÄãµÄÇý¶¯Ô´Âë
Copy the dirver source code( if_rl.c and if_rlreg.h) into /usr/ src/sys/pci //¸´ÖÆ if_rl.c if_rlreg.h µ½ /usr/src/sys/pciĿ¼ÖÐ
Copy the Makefile into /usr/src/sys/modules/rl //¸´ÖÆ Makefile µ½/usr/src/sys/modules/rl Ŀ¼
4. build the driver: //¹¹½¨Çý¶¯
# cd /usr/src/sys/modules/rl
# make clean
# make
5. install the driver //°²×°Çý¶¯
# cd /usr/src/sys/modules/rl
# kldload ./if_rl.ko Ö´Ðе½ÕâÒ»²½µÄʱºò£¬¾Í¿ÉÒÔʹÓà /etc/netstart À´ÖØÐ¼ÓÔØÍøÂçÅäÖúÍʹÓà ifconfig -a À´²é¿´FreeBSD ÊÇ·ñʶ±ðÁËÄãµÄÍø¿¨£¬ÎÒµÄÍø¿¨µÄÉ豸ÃûÊÇ rl0£¬ÏÔʾʹÓÃÊÇµÄ RTL8139 µÄоƬ£¬ÊÇ·ñÖ§³ÖǧÕ×ËÙÂÊÎÒ²»µÃ¶øÖª£¬ÎÒÓõÄÊÇ 10/100 ɵ¹Ï½»»»¡£½ÓÏÂÀ´¾ÍÊÇÉèÖà IP µÈÐÅÏ¢£¬±È½Ï¼òµ¥£¬ÎҾͲ»·­ÒëÁË£¬Çë¸÷λ¸ù¾ÝÇé¿ö²Ù×÷¡£
6. configurate the static IP address
# ifconfig rl0 xxx.xxx.xxx.xxx
7. configurate the IP address by DHCP
# /sbin/dhclient rl0
The user can use the following command to change link speed and duplexmode.
1. For autonegotiation,
#ifconfig rl media autoselect
2. For 1000Mbps full-duplex,
#ifconfig rl media 1000baseTX mediaopt full-duplex
3. For 100Mbps full-duplex,
#ifconfig rl media 100baseTX mediaopt full-duplex
4. For 100Mbps half-duplex,
#ifconfig rl media 100baseTX mediaopt half-duplex
5. For 10Mbps full-duplex,
#ifconfig rl media 10baseT/UTP mediaopt full-duplex
6. For 10Mbps half-duplex,
#ifconfig rl media 10baseT/UTP mediaopt half-duplex
Õû¸öÍø¿¨Çý¶¯µÄ°²×°»ù±¾ÉÏ¿ÉÒÔ˵ÊÇûÓÐÐüÄîµÄ£¬ÕâÒª¸Ðл RTL ¹«Ë¾µÄÇý¶¯Ñз¢ÈËÔ±ºÍ Readme ÎĵµµÄά»¤Õߣ¬ÈÃÎҵı¾±¾¿ÉÒÔåÛÓÎÔÚÍøÂçµÄÊÀ½çÀï¡£
PS£ºÆäʵÕû¸ö¹ý³ÌÊDZȽϼòµ¥µÄ£¬ÕâËùÒÔ»á¼ÓÈë·­Ò룬Ö÷ÒªÊÇ¿¼Âǵ½³õѧÕß¶ÔFBµÄ²»ÊìϤ£¬ÂÛEÎÄˮƽ×ÔÈ»²»¸ÒºÍ´óϺÃǽϾ¢£¬×£´ó¼ÒÔÚÐÂÄêÉíÌ彡¿µ£¬¹¤×÷ÈçÒ⣬ÔçÈÕС¿µ£¬¸Â¸Â¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 0 ÌõÆÀÂÛ