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

°ÑLinuxµÄ¡°¹¤¾ßÏ䡱·­¸öµ×³¯Ìì

·¢²¼Ê±¼ä:2005-12-23 11:20:40À´Ô´:ºìÁª×÷Õß:wide
¡¡¡¡ÎÒ·¢¾õ¹ÜÀíLinuxºÍUnixϵͳ×îÓÐÀûµÄÇé¿öÖ®Ò»¾ÍÊÇÒѾ­ÓÐÈç´ËµÃ¶à¹¤¾ß¶¼Äܹ»°ïÖúÄãÍê³É¹¤×÷¡£¼¸ºõÈκÎÒ»¸ö¿ÉÒÔÏëÏñµÄÎÊÌ⣬¶¼ÓÐÈË»¨·Ñʱ¼äÖÆ×÷³öÏàÓ¦µÄ´¦Àí¹¤¾ß¡£²¢ÇÒ¶àÊýÇé¿öÏ£¬´ËÀ๤¾ß¶¼×ã¹»Áé»î£¬Äܹ»¸ù¾ÝÄãËùÓöµ½µÄÎÊÌâ±»ÍêÈ«¸ü¸Ä¡£¶ÔÎÒÀ´Ëµ£¬screen¾ÍÊÇÕâÑùÒ»¸ö¹¤¾ß¡£

¡¡¡¡Screen¸øÎÒÁôÏÂÈç´ËÉîµÄÓ¡Ï󣬸ж¯ÁËÎÒ£¬»òÐíÊÇÒòΪÔÚÎÒʹÓÃUnixϵͳ¹¤×÷µÄÇ°10ÄêÖУ¬´ÓÀ´Ã»ÓÐÌý˵¹ýËüµÄ´æÔÚ¡£ÎÒÀË·ÑÁË´óÁ¿Ê±¼äÊÔͼ½â¾öËüÒѾ­½â¾öµÄ¸÷ÀàÎÊÌâ¡£»òÕߣ¬ÎÒÒ²ÐíºÜÈÝÒ×±»¸Ð¶¯¡£²»¹ýÈç¹ûscreen¶ÔÄãÀ´ËµÊÇÒ»¸öж«Î÷£¬»òÕßÄãÒѾ­ÖªµÀËý£¬²¢ÏëµÃµ½ËüµÄһЩʹÓü¼ÇÉ£¬Çë½Ó×ŶÁÏÂÈ¥¡£

¡¡¡¡Screen¹¤¾ßÊÇÒ»¸öÖն˶à·ת½ÓÆ÷£¬ÔÚ±¾ÖÊÉÏ£¬ÕâÒâζ×ÅÄãÄܹ»Ê¹ÓÃÒ»¸öµ¥Ò»µÄÖն˴°¿ÚÔËÐжàÖն˵ÄÓ¦Óá£ÄãÏÖÔÚ¿ÉÄÜ»áÏ룬¡°ÓÐʲôÁ˲»Æð£¬ÎÒÔç¾ÍÄܹ»½«¹¤×÷·ÅÔÚshellµÄºǫ́À´Ö´ÐÐÁË¡£¡±È·Êµ£¬ÄãÄܹ»ÄÇÑù×ö£¬²»¹ýÈôÊdzÌÐò±¾Éí²»Äܹ»·ÅÈëºǫ́Ôõô°ì¡ª¡ªÒ²¾ÍÊÇ˵£¬Ò»Ð©ÓÃncursesдµÄ³ÌÐò?»òÕߣ¬Èç¹ûÄãÐèÒª»ñµÃÖն˵ÄÕû¸ö¶Ô»°¸ÃÔõô°ì?ÔÙÓУ¬¸ù¾Ý³ÌÐòµÄÏȾöÌõ¼þ£¬¿ÉÄÜͬʱÔËÐеijÌÐòÖ®¼ä»áÓÐÓ°Ïì¡£

¡¡¡¡Screen½«ÔÊÐíÄã×öµ½ËùÓеÄÕâЩÊÂÇé¡£ÄãµÄ³ÌÐò½«²»»á²ì¾õµ½ÓëÔÚµ¥¶ÀµÄÖÕ¶ËÏÂÔËÐÐÓкβ»Í¬£¬Õ⽫ʹËüÃÇÔËÐеĺܺá£ÕâÖÖÇé¿öÏÂҲûÓпͻ§»ú»ò·þÎñÆ÷µÈ¡°Ô¶³Ì¡±¹¤¾ßµÄ¸ÅÄֻҪÔÚϵͳÖа²×°ÁËscreen¹¤¾ß£¬Äã¾Í¿ÉÒÔÔËÐÐÄãÏëÒªµÄ¹¤¾ß£¬²¢ÇÒÄܹ»ÓÃscreenÁ¬½Óϵͳ£¬Ò²¾ÍÊÇ˵£¬ÄãÓµÓÐËùÓÐÄãÐèÒªµÄ¶«Î÷¡£ScreenµÄÁíÒ»¸öºÃ´¦ÊÇËüÓÉGNU×é֯׫дºÍά»¤£¬Òò´Ë£¬ËüÄܹ»ÔÚ¿ÉÒÔÏëÏñµÄµ½µÄ¼¸ºõËùÓеÄUnixƽ̨ÉÏʹÓá£(¶ÔÓÚÄÇЩ¹ÜÀí¶àÖÖ²»Í¬ÀàÐÍϵͳµÄÈËÀ´Ëµ£¬Õâ·Ç³£¹Ø¼ü£¬ÒòΪËüÒâζ×ÅÄãÄܹ»ÔÚ²»Í¬µÄƽ̨ÉÏʹÓÃÏàͬµÄ¹¤¾ß¡£)

¡¡¡¡Screen¹¤×÷µÄÀý×Ó

¡¡¡¡ÔÚÎÒ¼ÒÀÎÒÔËÐÐÁËÒ»¸öµÍ¹¦ÂʵÄFM·¢ÉäÆ÷ÒԹ㲥ÎÒµÄÒôÀÖÊղء£(·¢ÉäÆ÷Ïà±ÈÎÞÏßÁ¬½Ó²¢²»¹ó£¬ËüÄܹ»ÈÃÎÒÔÚÔº×ÓïʹÓÃËæÉíÌ?ÔÈ»Ì?½ÎÒµÄƵµÀ¡?ÎÒʹÓÃÃûƬmp3blasterÇý¶¯·¢ÉäÆ÷£¬ÕâÊÇÒ»¸ö·Ç³£ºÃµÄ»ùÓÚ¿ØÖÆ̨µÄMP3²¥·ÅÆ÷£¬Äܹ»Ö§³Ö¾Þ´óµÄMP3ÊÕ¼¯¡£Ò»µ©Ëü¿ªÊ¼ÔËÐУ¬mp3blasterµÄÐÅÏ¢¿´ÆðÀ´¾ÍÏñÏÂͼһÑù:



¡¡¡¡Æù½ñΪֹ£¬Ëü¶¼ÊÇÈç´ËµÄÓÅÐã:ÎÒÄܹ»´ò¿ªÒ»¸ö´°¿Ú£¬¿ªÊ¼mp3balster£¬ÕûÌì¹ã²¥ÒôÀÖ¡£µ«ÊÇÈç¹ûÎÒ×øÔÚÂ¥ÉÏÎҵıʼDZ¾ÃæÇ°£¬²¢ÇÒ²»ÏêÅܵ½Â¥Ï¸ı䲥·ÅÁбí¸ÃÔõô°ì?ºÜ¼òµ¥£¬ÎÒÖ»ÐèÒªÔÚÒ»¸öscreen¶Ô»°ÏÂÆô¶¯mp3blaster£¬È»ºóÄܹ»´ÓÈκÎÓµÓÐshellµÄϵͳ·ÃÎÊËùµ÷ÓõÄscreen¡£

¡¡¡¡ÎÒÄܹ»Ê¹ÓÃÈçϵķ½·¨¿ªÊ¼Ò»¸ö½Ð×ö¡°radiostation¡±µÄscreen¶Ô»°:

¡¡¡¡tmancill@ghostrider:~$ screen -S radiostation

¡¡¡¡(´Ëʱ³öÏÖÒ»¸ö¿Õ°×µÄscreen)

¡¡¡¡tmancill@ghostrider:~$ mp3blaster

¡¡¡¡(ÔØÈëÎҵIJ¥·ÅÁÐ±í£¬È»ºó°´ÏÂplay¿ªÊ¼·¢Éä)

¡¡¡¡(°´Ï¡°CTRL-a¡±£¬È»ºó°´Ï¡°d¡±À뿪)


¡¡¡¡ÔÚÕâÀÎÒÄܹ»Í˳öÎÒµÄshell£¬¶ømp3blasterÔò¼ÌÐø±£³Ö¹¤×÷£¬Ê¹ÓÃÏÖÓеÄÒô¹ìÐÅÏ¢ºÍÔËÐÐʱ¼äÀ´¸üÐÂÖն˴°¿Ú(ÏÖÔÚ´Ë´°¿Ú²¢²»´æÔÚ)¡£ÈÃÎÒÃǼÙÉ裬ÎÒµÄÆÞ×Ó´òµç»°¸øÎÒ˵£¬¡°ºÙ!²¥·ÅһЩ²»Í¬ÓÚÄãÊղصÄÒôÀֵİÉ!¡±£¬È»ºó£¬ÎÒÓÃsshµÇ¼ghostrider»úÆ÷£¬²¢Ê¹ÓÃÏÂÃæµÄÃüÁî»Ö¸´»á»°:


¡¡¡¡tmancill@ghostrider:~$ screen -r radiostation

¡¡¡¡Èç¹ûÎÒÅöÇÉÍü¼ÇÁËÕýÔÚÔËÐеÄscreen»á»°µÄÃû×Ö£¬ÎÒ¿ÉÒÔʹÓá°-ls¡±¿ª¹ØÀ´²é¿´ÕýÔÚÔËÐеĻỰ:

¡¡¡¡tmancill@ghostrider:~$ screen -ls

¡¡¡¡There are screens on:

¡¡¡¡10238.frm (Detached)

¡¡¡¡25400.radiostation (Attached)

¡¡¡¡2 Sockets in /var/run/screen/S-tmancill.

¡¡¡¡Èç¹ûÎÒÀ뿪°ì¹«ÊÒʱûÓÐ×¢Ïú¡°radiostation¡±screen£¬ÎÒÄܹ»»Ö¸´Ëü£¬Ö¸Ê¾screenÔÚ»Ö¸´ÔËÐÐ(-r)ÎÒËùÇëÇóµÄ¶Ô»°Ö®Ç°¸úÈκÎÕýÔÚÔËÐеĶԻ°·ÖÀë(-d)¡£ÔÚÎҰ칫ÊҵĴ°¿ÚÉÏ£¬ÎÒ½«¿´µ½:

¡¡¡¡tmancill@ghostrider:~$ screen -r radiostation

¡¡¡¡[remote detached]

¡¡¡¡µ±È»£¬Äã²»¿ÉÄÜÔËÐÐÕâ¸ö¹ã²¥Õ¾¶øºÄ¾¡ËùÓеÄscreen¡£ÔÚÉú²ú»·¾³ÖУ¬Õâ·Ç³£ÓÐÓã¬ÒòΪÄã²»±ØÇø·ÖÄãÓ¦¸Ã´ÓÄĸöµØµã·ÃÎÊÕâ¸ö¶Ô»°¡£ÔÚÎҵİ칫ÊÒÖУ¬ÎÒÐèÒªÔÚGDB(GNU Project debugger£¬http://www.gnu.org/software/gdb/gdb.html)ÏÂÔËÐÐÒ»¿é×Ô¶¯ÊÛ»õ»úÈí¼þ£¬ÒÔ±ãÔÚËüÃÇ´æÔÚȱµã(segfaulted)ʱ£¬Äܹ»µÃµ½´íÎóµÄ»ØËݸú×ÙÐÅÏ¢¡£µ±±ÀÀ£·¢Éúʱ£¬Îҵļà¿ØÈí¼þ½«ÏòÎÒÃÇ·¢³ö¾¯¸æ֪ͨ£¬ÎÒÃǶþÊ®ËÄСʱËæ½ÐËæµ½µÄÖ§³ÖÍŶӳÉÔ±½«·ÃÎÊÕâ¸ö»á»°£¬ÔÚÎÒÃǵ¥¶ÀµÄÿ¸ö¹¤×÷Õ¾ÉÏÔËÐÐGDB shellÀ´½â¾öÎÊÌâ¡£ÕâÀïÓÐÒ»¸öÑ¡Ôñ£¬¾ÍÊÇ¿ÉÒÔ´Óϵͳ¿ØÖÆֱ̨½ÓÔËÐÐÈí¼þ£¬µ«ÕâÒâζ×Å´ýÃüµÄ¼¼ÊõÍŶӱØÐëÔÚÏÖ³¡£¬È»ºó±ØÐëÎïÀíµÄ½øÈëÊý¾ÝÖÐÐÄÖ´ÐкóÐøµÄ¹¤×÷¡£Òò´Ë£¬screen¾ø¶ÔÊÇÒ»¸öÊʺϵĽâ¾ö·½°¸¡£

¡¡¡¡ÓÐÒ»¼þÊÂÐèÒª½÷É÷ÐÐÊÂ:screenÊÇÒ»¸ö¶ÔÓû§È¨Ï޷dz£Ãô¸ÐµÄ³ÌÐò£¬Ò²¾ÍÊÇ˵Ëü»á¸ù¾ÝÖ´ÐвÙ×÷µÄÓû§À´½øÐв»Í¬µÄÏìÓ¦¡£ÔÚGDBµÄÀý×ÓÖУ¬×Ô¶¯ÊÛ»õ»úÈí¼þÔËÐÐÓÚÒ»¸öÌØÊâµÄÓû§ÕË»§Ï£¬Òò´ËÈç¹ûÄãʹÓá°su¡±»ò¡°sudo¡±ÃüÁî¸Ä±ä³ÉÁíÒ»¸öÓû§£¬Ä㽫Óöµ½È¨ÏÞÎÊÌâ¡£³öÏÖÕâÖÖÎÊÌâµÄÔ­ÒòÊÇscreen±ØÐëÄܹ»´ò¿ªÄãµÄtty(ÖÕ¶Ë)¡£¾ÙÒ»¸öÀý×Ó£¬ÈÃÎÒÃǼÙÉèÎÒÏëÔÚÎÒϵͳÖеÄscreenÏÂÒÔÓû§¡°asterisk¡±ÔËÐÐһЩ³ÌÐò£¬Èç¹ûÎÒÒÔÓû§¡°tony¡±µÇ¼£¬È»ºó¸Ä±äΪÓû§¡°asterisk¡±£¬ÎÒ½«ÓÃÒÔϵÄÃüÁîÀ´ÔËÐÐ:

¡¡¡¡asterisk@bach:~$ screen -S pbx

¡¡¡¡Cannot open your terminal '/dev/pts/146' - please check.(²»ÄÜ´ò¿ªÄãµÄÖնˡ°/dev/pts/146¡± - Çë¼ì²é¡£)

¡¡¡¡asterisk@bach:~$ ls -al /dev/pts/146

¡¡¡¡crw------- 1 tony tty 136, 146 May 31 18:16 /dev/pts/146

¡¡¡¡¾ÍÏñÄãÄܹ»¿´µ½µÄÒ»Ñù£¬ÓÉÓÚ°²È«ÎÊÌ⣬ÎÒµÄtty(ÖÕ¶Ë)ÓÉ´ò¿ªshellµÄÓû§ËùÓµÓУ¬¶ø²»ÊÇÎҸıäΪasteriskºóµÄÓÐЧÓû§ID¡£½â¾öÕâ¸öÎÊÌâµÄÒ»¸ö·½Ê½ÊÇÔÚµ÷ÓÃscreen֮ǰ£¬Ö±½ÓÒÔÓû§asteriskµÇ¼£¬µ«Õâ¸öÎÊÌâͬÑù»áÒÔÁíÍâµÄÐÎʽ³ÊÏÖ£¬ÄǾÍÊÇ£¬Èç¹ûÎÒÒÔasterisk¿ªÊ¼¹¤×÷£¬È»ºóÔÚÆäËüÓû§ÏÂÇëÇóÁª»ú£¬Ö®ºóÔÙÇл»»Øasterisk£¬¡°screen -r¡±ÈÔ½«²»ÄÜ´ò¿ªÖնˡ£Í¬Ñù×¢Òâµ½£¬ÔÚÎҸıäΪÓû§asterisk֮ǰ£¬¡°screen -ls¡±Ò²²»»áÏòÎÒÏÔʾ³ö¡°pbx¡±»á»°£¬ÕâÊÇÓÉÓÚscreenΪÿ¸öscreenÓû§´´½¨ÁËÒ»¸öÎļþ¼Ð£¬ËüÖ»ÄÜÁгö´ËÓû§µÄ»á»°¡£

¡¡¡¡ÄÇô£¬¸ÃÔõô×ö²ÅÄܹæ±ÜÕâЩȨÏÞÎÊÌâÄØ?Èç¹ûÓû§Õ˺ÅÓÐÒ»¸öÃÜÂ룬Äãͨ³£Äܹ»Í¨¹ýsshÒÔ´ËÓû§Ö±½Ó½øÈëϵͳ(Ò²¿ÉÄÜÊDZ¾µØ»ú)¡£»òÕߣ¬Èç¹ûÄã×ÜÊǺܴÒ棬²¢ÇÒÓÐ×ã¹»µÄ×ÔÐÅ£¬¸Ð¾õ²¢²»»á´æÔÚ±¾µØ°²È«Íþв£¬ÄãÔò¿ÉÒÔÔÚtty(ÖÕ¶Ë)ÐÞ¸ÄȨÏÞ¡£Èç¹ûÄãÕâÑù×öÁË£¬ÇëÈ·ÐÅÔÚ¹¤×÷Íêºó£¬ÄãÒѾ­´ÓÄ㹤×÷µÄÖÕ¶ËÉÏ×¢Ïú¡£Êµ¼ÊÉÏ£¬ÄãÒѾ­¸øÓèÁËÿ¸ö±¾µØϵͳÓû§Í¨¹ýshell·ÃÎʵÄȨÏÞ¡£ÁíÒ»¸öÑ¡ÔñÊǸıä³ÉrootÓû§ÔÙµ÷ÓÃscreen£¬È»ºóÔÚscreen»á»°ÖиıäΪÔËÐй¤×÷ËùÐèµÄϵͳÕ˺š£ÕâÑù×öÄܹ»Õý³£µÄÔ­ÒòÊdz¬¼¶Óû§Äܹ»´ò¿ªÈκÎÓû§µÄty(ÖÕ¶Ë)£¬¶ø±íÃæÉÏ£¬ÄãµÄÖ§³ÖÍŶÓÓ¦¸ÃÓиıäΪrootÓû§µÄ×㹻ȨÏÞ¡£

¡¡¡¡ScreenÄܹ»°ïÖúÄãʹÓÃÄÇЩ²»Êʺϡ°ÎÞÈË¿´¹Ü¡±Ê¹ÓõĴóÁ¿ÖÕ¶ËÈí¼þ£¬²¢ÇÒÖ»ÐèÔËÐÐÒ»¸öÆðʼ»á»°¼´¿É¡£Ïà±È֮ǰÄã¿ÉÄÜͨ¹ý¶à¸ö»á»°µÇ¼Զ³Ìϵͳ£¬ËüµÄ²¿ÊðÊÇÈç´Ë¿ìËÙ£¬Ò×ÓÃÐÔÓÖÊÇÈç´ËÖ®ºÃ£¬»òÕß˵ËüÔÚÄãµÄLinux¿ØÖÆ̨ÉÏÌí¼ÓºÍÉèÖÃÁ˸½¼ÓµÄÐéÄâ¿ØÖÆ̨¡£Õâ¾ÍÊÇscreen£¬ÉÏÃæµÄÎÄÕ½«Ö¸µ¼Äã¸üºÃµÄʹÓÃÕâ¸öÇ¿´óµÄ¹¤¾ß£¬Äã¿ÉÒÔÔÚÄãÐèÒªµÄÈκÎʱºòÔËÐÐËü¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 0 ÌõÆÀÂÛ