ARM Linux¸ùÎļþϵͳ£¨Root Filesystem£©µÄÖÆ×÷
ARM Linux¸ùÎļþϵͳ£¨Root Filesystem£©µÄÖÆ×÷
2008Äê01ÔÂ06ÈÕ ÐÇÆÚÈÕ 22:28
http://xianzilu.spaces.live.com/blog/fakehandlerpage.aspx?wa=wsignin1.0
http://xianzilu.spaces.live.com/blog/cns!4201FDC93932DDAF!290.entry
¹ØÓÚ¸ùÎļþϵͳµÄÖÆ×÷£¬ÍøÂçÉÏÓкܶàÎÄÕ£¬´ó¶àÊý¶¼Ö»½²µ½½¨¼¸¸öĿ¼£¬È»ºóÓÃBusybox×ö¸öShell£¬ÓÐºÜ¶à¹Ø¼üµÄ¶«Î÷ûÓÐ˵¡£¾¹ýºÜ³¤Ê±¼äµÄÃþÅÀ¹ö´ò£¬ÎÒÖÕÓÚÄܹ»°×ÊÖÆð¼Ò½¨Á¢Ò»¸ö¸ùÎļþϵͳÁË¡£ÆäʵÎÒÒ²²»¶®µÃÔÀí£¬Ö»ÊǸæËß´ó¼ÒÎÒµÄ×÷·¨£¬ÆäÖÐÒ²²»ÃâÓдíÎ󣬻¶Ó´ó¼ÒÖ¸Õý¡£
Ê×ÏȽéÉܸùÎļþϵͳµÄ×é³É£ºÄ¿Â¼¡¢Shell¡¢¿â¡¢½Å±¾£¬Ò»¸ö¸öÀ´¡£
Ŀ¼
¸ùÎļþϵͳҪ°üº¬ÕâЩ±ØÐëÓеÄĿ¼£º/dev¡¢/bin¡¢/usr¡¢/sbin¡¢/lib¡¢/etc¡¢/proc¡¢/sys
/devÊÇdevfs£¨É豸Îļþϵͳ£©»òÕßudevµÄ¹ÒÔÚµãËùÔÚ¡£ÔÚʹÓÃdevfsµÄÄÚºËÀïÈç¹ûûÓÐ/dev£¬¸ù±¾¼û²»µ½ShellÆô¶¯µÄÐÅÏ¢£¬ÒòΪÄÚºËÕÒ²»µ½/dev/console£»ÔÚʹÓÃudevµÄϵͳÀҲÊÂÏÈÐèÒªÔÚ/devϽ¨Á¢consoleºÍnullÕâÁ½¸ö½Úµã¡£¹ØÓÚdevfsºÍudevµÄÇø±ð£¬ÍøÉϺܶàÎÄÕÂ˵¡£µ±È»Èç¹ûÄãµÄÄÚºËÒѾ²»Ö§³ÖdevfsÁË£¨2.6.12ÒԺ󣩣¬¿ÉÒÔʹÓô¿´¿µÄ¾²Ì¬½Úµã¡£Ò²¾ÍÊÇÓÃmknodÈ˹¤Éú³É¡£
/bin¡¢/usr/bin¡¢/usr/sbin¡¢/sbinÊDZàÒëBusyboxÕâ¸öShellʱºò¾ÍÓеģ¬ÓÃÓÚ´æ·Å¶þ½øÖÆ¿ÉÖ´ÐÐÎļþ£¬¾Í²»¶à½âÊÍÁË¡£
/libÓÃÓÚ´æ·Å¶¯Ì¬Á´½Ó¿â¡£ÍøÉϺܶàÎÄÕ¶¼Ëµ¾²Ì¬±àÒëBusybox£¬¿ÉÒÔʡȥ½¨¿âµÄÂé·³¹ý³Ì¡£ÕâÑù×öÖ»ÄÜÈÃBusyboxÆô¶¯£¬ÎÒÃÇ×Ô¼ºÐ´µÄ£¬»òÕßÊDZàÒëµÄÈí¼þ°ü»¹ÊÇÐèÒª¶¯Ì¬¿âµÄ¡£³ý·ÇÈ«²¿¾²Ì¬±àÒ룬Äã¿ÉÒÔÊÔÊÔ£¬Ò»¸öHello world¾ÍÒª¼¸°Ùk¡£¹ØÓÚ¿âµÄÄÚÈݺóÃæ×Ðϸ˵¡£
/etcÊÇÓÃÀ´´æ·Å³õʼ»¯½Å±¾ºÍÆäËûÅäÖÃÎļþµÄ¡£¹ØÓÚ³õʼ»¯½Å±¾µÄÄÚÈݺóÃæ×Ðϸ˵¡£
/procÊÇÓÃÀ´¹ÒÔØ´æ·ÅϵͳÐÅÏ¢ÐéÄâÎļþϵͳ——“procÎļþϵͳ”£¬“procÎļþϵͳ”ÔÚÄÚºËÀïÃæ¿ÉÒÔÑ¡¡£Èç¹ûûÓГprocÎļþϵͳ”£¬ºÜ¶àShell×Ô¼ºµÄÃüÁî¾ÍûÓа취ÔËÐУ¬±ÈÈçifconfig¡£“procÎļþϵͳ”²»Ïñdevfs¿ÉÒÔ×Ô¶¯¹ÒÔØ£¬ËüÐèҪʹÓóõʼ»¯½Å±¾¹ÒÔØ¡£ÁíÍ⣬udevÒ²ÐèÒª“procÎļþϵͳ”µÄÖ§³Ö¡£
/sysÓÃÓÚ¹ÒÔØ“sysfsÎļþϵͳ”£¬“sysfsÎļþϵͳ”ÔÚÄÚºËÀïÃæ¿ÉÒÔÑ¡¡£Ä¿Ç°ÎÒÈÏΪËü¾ÍÊǸøudevÌṩ֧³ÖµÄ£¬ºÇºÇ¡£“sysfsÎļþϵͳ”Ò²ÐèҪʹÓóõʼ»¯½Å±¾¹ÒÔØ¡£
ÁíÍ⻹¿ÉÒÔÓÐ/tmp¡¢/mnt¡¢/swp¡¢/varÕâÑùµÄ²»ÊÇǶÈëʽϵͳ±ØÐëµÄĿ¼£¬ÔÚ˵ÍêShellµÄÖÆ×÷Ö®ºó£¬ÎÒ
Ïà¹ØÎĵµ£º
Linux¸öÈË·À»ðǽµÄÉè¼ÆÓëʵÏÖ
http://netsecurity.51cto.com/ 2006-02-16 11:25 ¼ÆËã»ú°²È« ÎÒÒªÆÀÂÛ()
ÕªÒª£º±¾ÎÄÉè¼ÆµÄÊÇÒ»¸ö»ùÓÚLinuxÖ÷»úµÄ°ü¹ýÂËÐ͸öÈË·À»ðǽ£¬ËüʵÏֵŦÄܺÍÏÖ½ñÊг¡ÉÏÁ÷ÐеķÀ»ðǽÓо޴ó²î¾à¡£Ëæ×ż¼ÊõµÄ²»¶Ï·¢Õ¹£¬·À»ðǽҲ´¦ÓÚ²»¶ÏµÄ±ä»¯Ö®ÖС£·À»ðǽ¼¼Êõ¾ÀúÁ˰ü¹ý ......
ʲôÊÇSocket
Socket½Ó¿ÚÊÇTCP/IPÍøÂçµÄAPI£¬Socket½Ó¿Ú¶¨ÒåÁËÐí¶àº¯Êý»òÀý³Ì£¬³ÌÐòÔ±¿ÉÒÔÓÃËüÃÇÀ´¿ª·¢TCP/IPÍøÂçÉϵÄÓ¦ÓóÌÐò¡£ÒªÑ§InternetÉϵÄTCP/IPÍøÂç±à³Ì£¬±ØÐëÀí½âSocket½Ó¿Ú¡£
Socket½Ó¿ÚÉè¼ÆÕß×îÏÈÊǽ«½Ó¿Ú·ÅÔÚUnix²Ù×÷ϵͳÀïÃæµÄ¡£Èç¹ûÁ˽âUnix
ϵͳµÄÊäÈëºÍÊä³öµÄ»°£¬¾ÍºÜÈÝÒ×Á˽â ......
ttyÊÇTeletypeµÄËõд
ÖÕ¶ËÊÇÒ»ÖÖ×Ö·ûÐÍÉ豸£¬ËüÓжàÖÖÀàÐÍ£¬Í¨³£Ê¹ÓÃttyÀ´¼ò³Æ¸÷ÖÖÀàÐ͵ÄÖÕ¶ËÉ豸¡£ttyÊÇTeletypeµÄËõд¡£TeletypeÊÇ×îÔç³öÏÖµÄÒ»ÖÖÖÕ¶ËÉ豸£¬ºÜÏóµç´«´ò×Ö»ú£¬ÊÇÓÉTeletype¹«Ë¾Éú²úµÄ¡£É豸Ãû·ÅÔÚÌØÊâÎļþĿ¼/dev/Ï£¬ÖÕ¶ËÌØÊâÉ豸ÎļþÒ»°ãÓÐÒÔϼ¸ÖÖ£º
1.´®Ðж˿ÚÖÕ¶Ë£¨/dev/ttySn£©
´®Ðж˿ÚÖÕ ......
LinuxϵÄshellÓëmake
Ò»¡¢shell
1.1 ʲôÊÇshell
¡ñ Óû§ÓëLinuxµÄ½Ó¿Ú
¡ñ ÃüÁî½âÊÍÆ÷
¡ñ Ö§³Ö¶àÓû§
¡ñ Ö§³Ö¸´Ôӵıà³ÌÓïÑÔ
¡ñ ShellÓкܶàÖÖ£¬È磺csh,tcsh,pdksh,ash,sash,zsh,bashµÈ¡£LinuxµÄȱʡShellΪbash(Bourne Again Shell)¡£
ShellÊÇÓû§ºÍ²Ù×÷ϵͳ֮¼ä×îÖ÷Òª½Ó¿Ú¡£Í¨¹ýShell£¬¿ÉÒÔͬʱÔÚºǫ́ÔËÐжà¸öÓ ......
linuxÖÐselect()º¯Êý·ÖÎö
SelectÔÚSocket±à³ÌÖл¹ÊDZȽÏÖØÒªµÄ£¬¿ÉÊǶÔÓÚ³õѧSocketµÄÈËÀ´Ëµ¶¼²»Ì«°®ÓÃSelectд³ÌÐò£¬ËûÃÇÖ»ÊÇϰ¹ßдÖîÈçconnect¡¢accept¡¢recv»òrecvfromÕâÑùµÄ×èÈû³ÌÐò£¨Ëùν×èÈû·½Ê½block£¬¹ËÃû˼Ò壬¾ÍÊǽø³Ì»òÊÇÏß³ÌÖ´Ðе½ÕâЩº¯Êýʱ±ØÐëµÈ´ýij¸öʼþµÄ·¢Éú£¬Èç¹ûʼþûÓз¢Éú£¬½ø³Ì»òÏ߳̾ͱ»×èÈû£¬º ......