¾¯¸æ: ´Ó FreeBSD 8.0 Æð£¬ ´®¿Ú¶ÔÓ¦µÄÉ豸ÃûÓÉ /dev/ttydN ±äΪ /dev/ttyuN¡£ FreeBSD 7.X Óû§Ó¦½«ÕâÆªÎĵµµÄʾÀýÖеÄÉ豸Ãû¸ÄΪÔÏȵÄÑù×Ó¡£
¡¡¡¡ÒªÏëÔÚ LPDºǫ́´òӡϵͳÉÏʹÓôòÓ¡»ú£¬ ÄúÐèÒªÉèÖôòÓ¡»úÓ²¼þºÍ LPDÈí¼þ¡£ Õâ¸ö ÎĵµÃèÊöÁËÕâÁ½¼¶ÉèÖãº
²Î¼û¼òµ¥´òÓ¡»ú ÉèÖÃÀ´Á˽âÔõÑùÁ¬½ÓÒ»¸ö´òÓ¡»ú£¬ ¸æËß LPDÔõÑùÓë ËüͨѶ£¬ ²¢ÇÒ´òÓ¡´¿Îı¾µ½ ´òÓ¡»ú¡£
²Î¼û ¸ß¼¶´òÓ¡»úÉèÖà À´Á˽âÔõÑù´òÓ¡¶àÖÖ ÌØÊâ¸ñʽµÄÎļþ£¬ ÔõÑù´òÓ¡±¨Í·Ò³£¬ ÔõÑùͨ¹ýÍøÂç ´òÓ¡£¬ ÔõÑù¿ØÖÆ´òÓ¡»úµÄ·ÃÎÊȨÏÞ£¬ ²¢ÇÒѧ»áΪ´òÓ¡ ×÷Òµ¼ÇÕÊͳ¼Æ¡£
¡¡¡¡Õⲿ·Ö½²½âÔõÑùÅäÖôòÓ¡»úÓ²¼þºÍ LPDʹ֮Óë´òÓ¡»úÅäºÏ¡£ ½²½âµÄ»ù´¡ÖªÊ¶ÓУº
Ó²¼þ ÉèÖò¿·Ö½«½²½âÔõÑù°Ñһ̨´òÓ¡»úÁ¬½Óµ½ Äú¼ÆËã»úµÄÒ»¸ö¶Ë¿ÚÉÏ¡£
Èí¼þ ÉèÖò¿·Ö½«½²½âÔõÑùÅäÖà LPDºǫ́´òÓ¡µÄÅäÖà Îļþ (/etc/printcap)¡£
¡¡¡¡Èç¹ûÄúÕýÔÚÉèÖÃһ̨ͨ¹ýÍøÂçÐÒé ½ÓÊÕÊý¾ÝÀ´´òÓ¡¶ø²»ÊÇͨ¹ý´®¿Ú»òÕß²¢¿ÚµÄ´òÓ¡»ú£¬ ²Î¼û ʹÓÃÍøÂçÊý¾ÝÁ÷½çÃæµÄ´òÓ¡»ú¡£
¡¡¡¡¾¡¹ÜÕⲿ·Ö½Ð¡°¼òµ¥´òÓ¡»ú ÉèÖá±£¬ µ«»¹ÊÇÏ൱¸´Ôӵġ£ ʹ´òÓ¡»ú ÅäºÏ LPD ºǫ́´òӡϵͳÔÚ¼ÆËã»úÉÏÕý³£ÔËתÊÇ×îÄÑµÄ ²¿·Ö¡£ Ò»µ©ÄúµÄ´òÓ¡»ú¿ÉÒÔÕý³£¹¤×÷ºó£¬ÄÇЩ¸ß¼¶Ñ¡Ï ±ÈÈ籨ÎÄÒ³ºÍ¼ÇÕÊ£¬ ÊÇÏ൱¼òµ¥µÄ¡£
¡¡¡¡Õⲿ·Ö½²ÊöÁË´òÓ¡»úÁ¬½Óµ½¼ÆËã»úµÄ¶àÖÖ Í¾¾¶¡£ Ö÷ÒªÌÖÂÛÁ˶àÖÖ½Ó¿ÚºÍ Á¬½ÓÏߣ¬ »¹ÓÐÔÊÐí FreeBSD Óë´òÓ¡»úͨѶËùÐèµÄ ÄÚºËÅäÖá£
¡¡¡¡Èç¹ûÄúÒѾÁ¬½ÓºÃÁËÄúµÄ´òÓ¡»ú¶øÇÒÒѾ ÓÃËüÔÚÁíÍâÒ»¸ö²Ù×÷ϵͳϳɹ¦µÄ´òÓ¡£¬ Äú »òÐí¿ÉÒÔÌøµ½Õâ¸ö²¿·ÖÈí¼þÉèÖá£
¡¡¡¡ÏÖÔÚËù³öÊÛµÄÔÚ PC ÉÏʹÓõĴòÓ¡»úͨ³£ÖÁÉÙÓÐ ÒÔÏÂÈýÖÖ½Ó¿ÚÖеÄÒ»¸ö£º
´®¿Ú£¬ Ò²½Ð RS-232 »òÕß COM ¿Ú£¬ ʹÓÃÄú¼ÆËã»úÉϵĴ®¿ÚÀ´·¢ËÍÊý¾Ýµ½´òÓ¡»ú¡£ ´®¿ÚÔÚ¼ÆËã»úÉÏÒѾ·Ç³£ÆÕ±é£¬ ¶øÇÒµçÀÂÒ²·Ç³£ÈÝÒ×Âòµ½ÇÒÈÝÒ×ÖÆ×÷¡£ ´®¿ÚÓÐʱÐèÒªÌØÊâµÄµçÀ£¬ ¶øÇÒ¿ÉÄÜÐèÒªÄúÈ¥ÅäÖÃÉÔ΢Óеã¶ù¸´ÔÓµÄͨѶѡÏî¡£ ´ó¶àÊý PC µÄ´®¿ÚµÄ×î¸ß´«ÊäËÙ¶ÈÖ»ÓÐ 115200 bps£¬ ÕâʹµÃ´òÓ¡ºÜ´óµÄͼÏñÐèÒªµÄʱ¼äºÜ³¤¡£
²¢¿Ú ʹÓüÆËã»úÉϵIJ¢¿ÚÀ´·¢ËÍÊý¾Ýµ½´òÓ¡»ú¡£ ²¢¿ÚÔÚ¼ÆËã»úÉÏÒ²ÒѾ·Ç³£ÆÕ±é£¬ ¶øÇÒËٶȸßÓÚ RS-232 ´®¿Ú¡£ µçÀ·dz£ÈÝÒ×Âòµ½£¬ µ«ºÜÄÑÊÖ¹¤ÖÆ×÷¡£ ²¢¿Úͨ³£Ã»ÓÐͨѶѡÏ ÕâʹµÃÅäÖÃËüÏ൱¼òµ¥¡£
²¢¿Ú°´´òÓ¡»úÉϵĽÓÍ·À´ÃüÃûÒ²½Ð×ö ¡°Centronics¡±½Ó¿Ú¡£
USB ½Ó¿Ú£¬ ¼´Í¨Óô®ÐÐ×ÜÏߣ¬ ¿ÉÒÔ´ïµ½±È²¢¿ÚºÍ´®¿Ú¸ßºÜ¶àµÄËÙ¶È¡£ ÆäµçÀ¼ȼòµ¥ÓÖ±ãÒË¡£ USB ÓÃÀ´´òÓ¡±È´®¿ÚºÍ²¢¿Ú¸üÓÐÓÅÊÆ£¬ µ« UNIX® ϵͳ²»ÄܺܺõÄÖ§³ÖËü¡£ ±ÜÃâÕâ¸öÎÊÌâµÄ·½·¨¾ÍÊǹºÂòһ̨ Ïñ´ó¶àÊý´òÓ¡»úÒ»ÑùµÄ¼ÈÓÐ USB ½Ó¿ÚÓÖÓв¢¿ÚµÄ ´òÓ¡»ú¡£
¡¡¡¡Ò»°ãÀ´Ëµ²¢¿ÚÖ»Ìṩµ¥ÏòͨѶ (¼ÆËã»úµ½´òÓ¡»ú)£¬ ¶ø´®¿ÚºÍ USB Ôò¿ÉÒÔÌṩ˫ÏòͨѶ¡£ еIJ¢¿Ú (EPP ºÍ ECP) ¼°´òÓ¡»úÔÚʹÓÃÁË IEEE-1284 ±ê×¼µÄµçÀÂÖ®ºó£¬ ¿ÉÒÔÔÚ FreeBSD ÏÂË«ÏòͨѶ¡£
¡¡¡¡Óë´òÓ¡»úͨ¹ý²¢¿ÚË«ÏòͨѶͨ³£ÓÉÕâÁ½ÖÖ·½·¨ÖеÄÒ»ÖÖÀ´Íê³É¡£ µÚÒ»¸ö·½·¨ÊÇʹÓÃΪ FreeBSD ±àдµÄ¿ÉÒÔͨ¹ý´òÓ¡»úʹÓõÄÓïÑÔÓë´òÓ¡»úͨѶµÄÇý¶¯³ÌÐò¡£ Õâͨ³£ÓÃÔÚÅçÄ«´òÓ¡»úÉÏ£¬ ÇÒ¿ÉÒÔÓÃÀ´±¨¸æÊ£Óàīˮ¶àÉÙºÍÆäËû״̬ÐÅÏ¢¡£ µÚ¶þÖÖ·½·¨Ê¹ÓÃÔÚÖ§³Ö PostScript® µÄ´òÓ¡»úÉÏ¡£
¡¡¡¡PostScript ÈÎÎñÊÂʵÉÏÓɳÌÐò·¢Ë͸ø´òÓ¡»ú£» µ«Ëü²¢²»½øÐдòÓ¡¶øÊÇÖ±½Ó½«½á¹û·µ»Ø¸ø¼ÆËã»ú¡£ PostScript Ò²²Éȡ˫ÏòͨѶÀ´½«´òÓ¡ÖеÄÎÊÌⱨ¸æ¸ø¼ÆËã»ú£¬ ±ÈÈç PostScript ³ÌÐòÖеĴíÎó»òÕß´òÓ¡»ú¿¨Ö½¡£ ÕâЩÐÅÏ¢¶ÔÓÚÓû§À´ËµÒ²ÐíÊǷdz£ÓмÛÖµµÄ¡£ ´ËÍ⣬ ×îºÃµÄÔÚÖ§³Ö PostScript µÄ´òÓ¡»úÉϼÇÕʵķ½·¨ÐèҪ˫ÏòͨѶ£º ѯÎÊ´òÓ¡»ú´òÓ¡×ÜÒ³Êý (´òÓ¡»ú´Ó³ö³§Ò»¹²´òÓ¡¹ý¶àÉÙÒ³)£¬ È»ºó·¢ËÍÓû§µÄÈÎÎñ£¬ Ö®ºóÔٴβéѯ×Ü´òÓ¡Ò³Êý¡£ ½«´òӡǰºóµÃµ½µÄÁ½¸öÖµÏà¼õ¾Í¿ÉÒԵõ½¸ÃÓû§Òª¸¶¶àÉÙֽǮ¡£
¡¡¡¡Óò¢¿ÚÁ¬½Ó´òÓ¡»úÐèÒªÓà Centronics µçÀ°ѴòÓ¡»úÓë¼ÆËã»úÁ¬½ÓÆðÀ´¡£ ¾ßÌå˵Ã÷Ö¸µ¼ÔÚ´òÓ¡»ú£¬ ¼ÆËã»úµÄ˵Ã÷ÊéÉÏÓ¦¸ÃÓУ¬ »òÕ߸ɴàÁ½¸öÉÏÃæ¶¼ÓС£
¡¡¡¡¼ÇסÄúÓõļÆËã»úÉϵÄÄĸö²¢¿Ú¡£ µÚÒ»¸ö²¢¿ÚÔÚ FreeBSD ÉϽР/dev/ppc0£» µÚ¶þ¸ö½Ð /dev/ppc1£¬ ÒÀ´ËÀàÍÆ¡£´òÓ¡»úÉ豸ҲÓÃͬÑùµÄ·½·¨ÃüÃû£º /dev/lpt0 ÊǽÓÔÚµÚÒ»¸ö²¢¿ÚÉϵĴòÓ¡»ú£¬ ÒÀ´ËÀàÍÆ¡£
¡¡¡¡Óô®¿ÚÁ¬½Ó´òÓ¡»úÐèÒªÓà ºÏÊʵĴ®¿ÚµçÀ°ѴòÓ¡»úÓë¼ÆËã»úÁ¬½ÓÆðÀ´¡£ ¾ßÌå ˵Ã÷Ö¸µ¼Ó¦¸ÃÔÚ´òÓ¡»ú£¬ ¼ÆËã»úµÄ˵Ã÷ÊéÉÏÓУ¬ »òÕß Í¬Ñù¸É´àÁ½¸öÉÏÃæ¶¼ÓС£
¡¡¡¡Èç¹ûÄú²»È·¶¨Ê²Ã´Ñù¶ùµÄµçÀ²ÅÊÇ ¡° ºÏÊʵĴ®¿Ú µçÀ ¡± £¬ Äú¿ÉÒÔ³¢ÊÔÒÔϼ¸ÖÖ²»Í¬µÄ µçÀ£º
µ÷ÖÆ½âµ÷Æ÷ µçÀÂÿһ¶ËµÄ ÿһ¸ùÒý½Å¶¼Ö±½ÓÁ¬½Óµ½ÁíÒ»¶Ë ÏàÓ¦µÄÒý½Å ÉÏ¡£ ÕâÖÖµçÀÂÒ²½Ð×ö ¡°DTE-to-DCE¡± µçÀ¡£
·Çµ÷ÖÆ½âµ÷Æ÷µçÀÂÉÏÿһ¶ËµÄÓÐЩÒý½Å ÊÇÓëÁíÒ»¶ËÏàÓ¦Òý½ÅÖ±½ÓÁ¬½ÓµÄ£¬ ¶øÓÐһЩÔòÊǽ»²æÁ¬½ÓµÄ (±ÈÈ磬 ·¢ËÍÊý¾ÝÒý½ÅÁ¬½Óµ½ ½ÓÊÕÊý¾ÝÒý½Å )£¬ »¹ÓÐһЩÒý½ÅÖ±½ÓÔÚµçÀÂÁ¬½ÓÍ·¶ùÄÚ ¶Ì½Ó¡£ ÕâÖÖµçÀÂÒ²½Ð×ö ¡°DTE-to-DTE¡± µçÀ¡£
Ò»Ð©ÌØÊâµÄ´òÓ¡»úÐèÒªµÄ´®¿Ú´òÓ¡»ú µçÀ£¬ ÊÇÒ»Öֺͷǵ÷ÖÆ½âµ÷Æ÷µçÀÂÀàËÆµÄµçÀ£¬ Ö»ÊÇһЩÐźŻ¹ÊÇË͵½ÁËÁíÒ»¶Ë£¬ ¶ø ²»ÊÇÖ±½ÓÔÚÁ¬½ÓÍ·¶ùÄÚ¶Ì·¡£
¡¡¡¡µ±È»£¬ Äú»¹µÃΪ´òÓ¡»úÉèÖÃͨѶ²ÎÊý¡£ Ò»°ãÊÇͨ¹ý´òÓ¡»úÃæ°åÉϵİ´Å¥»òÕß DIP ¿ª¹Ø½øÐÐÉèÖᣠÔÚ¼ÆËã»úºÍ´òÓ¡»úÉ϶¼Ñ¡ÔñËüÃÇËùÖ§³ÖµÄ×î¸ß ²¨ÌØ (ÿÃë¶àÉÙ±ÈÌØ£¬ ÓÐʱҲ½Ð ²¨ÌØÂÊ) µÄ´«ÊäËÙÂÊ¡£ Ñ¡Ôñ7»òÕß8¸öÊý¾Ýλ£» Ñ¡Ôñ²»Ð£Ñ飬 żУÑé»òÕ߯æÐ£Ñ飻 Ñ¡Ôñ1¸ö»ò2¸öֹͣλ¡£ »¹ÒªÑ¡ÔñÁ÷Á¿¿ØÖÆÐÒ飺 ÎÞ£¬ XON/XOFF (Ò²½Ð×ö ¡°in-band¡± »ò ¡°Èí¼þ¡±) Á÷Á¿¿ØÖÆ¡£ ¼ÇסÄúµÄÈí¼þÅäÖÃÖеIJÎÊýÒ²ÒªÉè³ÉÉÏÃæµÄÊýÖµ¡£
¡¡¡¡Õⲿ·ÖÃèÊöÁËҪʹÓà FreeBSD ϵͳÖÐµÄ LPD ºǫ́´òӡϵͳ½øÐдòÓ¡ËùÐèµÄÈí¼þÉèÖá£
¡¡¡¡°üÀ¨Õ⼸¸ö²½Ö裺
ÔÚÐèÒªµÄʱºòÅäÖÃÄÚºËÀ´ÔÊÐíÄúÁ¬½Ó ´òÓ¡»úµÄ¶Ë¿Ú£» ÅäÖÃÄÚºË ²¿·Ö»á¸æËßÄú ÐèÒª×öʲô¡£
Èç¹ûÄúʹÓò¢¿Ú£¬ ÔòÐèÒªÉèÖÃһϠ²¢¿ÚµÄͨѶģʽ; ÉèÖà ²¢¿ÚͨѶģʽ ²¿·Ö»á¸æËßÄú¾ßÌåµÄ ϸ½Ú¡£
²âÊÔ²Ù×÷ϵͳÊÇ·ñÄܹ»·¢ËÍÊý¾Ýµ½´òÓ¡»ú¡£ ¼ì²â´òÓ¡»ú Áª»ú×´¿ö ²¿·Ö»á¸æËßÄúÒªÔõÑù ×ö¡£
Ϊ LPD ÉèÖÃÓë´òÓ¡»úÆ¥ÅäµÄ²ÎÊýÔò ͨ¹ýÐÞ¸Ä /etc/printcap Õâ¸öÎļþÀ´Íê³É¡£ ÕâÕºóÃæ µÄ²¿·Ö½«½²½âÈçºÎÀ´Íê³ÉÉèÖá£
¡¡¡¡²Ù×÷ϵͳµÄÄÚºËΪÁËÊ¹Ä³Ð©ÌØÊâÉ豸¹¤×÷ÐèÒªÖØÐ ±àÒë¡£ ´òÓ¡»úËùÓõĴ®¿Ú¡¢ ²¢¿Ú¾ÍÊôÓÚÄÇÐ©ÌØÊâÉ豸¡£ Òò´Ë£¬ ¿ÉÄÜÐèÒª Ìí¼Ó¶Ô´®¿Ú»ò²¢¿ÚµÄÖ§³Ö£¬ Èç¹ûÄں˲¢Ã»ÓÐÅäÖÃËüÃǵϰ¡£
¡¡¡¡ÒªÏëÖªµÀÄúÏÖÔÚʹÓõÄÄÚºËÊÇ·ñÖ§³Ö´®¿Ú£¬ ÊäÈ룺
# grep sioN /var/run/dmesg.boot
¡¡¡¡ÆäÖÐ N ÊÇ´®¿ÚµÄ ±àºÅ£¬ ´Ó0¿ªÊ¼¡£ Èç¹ûÄú¿´µ½ ÀàËÆÏÂÃæµÄÊä³ö£º
sio2 at port 0x3e8-0x3ef irq 5 on isa sio2: type 16550A
¡¡¡¡Ôò˵Ã÷ÄúÏÖÔÚʹÓõÄÄÚºËÖ§³Ö´®¿Ú¡£
¡¡¡¡ÒªÏëÖªµÀÄúÏÖÔÚʹÓõÄÄÚºËÊÇ·ñÖ§³Ö²¢¿Ú£¬ ÊäÈ룺
# grep ppcN /var/run/dmesg.boot
¡¡¡¡ÆäÖÐ N ÊDz¢¿ÚµÄ ±àºÅ£¬ ͬÑù´Ó0¿ªÊ¼¡£ Èç¹ûµÃµ½ÀàËÆ ÏÂÃæµÄÊä³ö£º
ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/8 bytes threshold
¡¡¡¡ÄÇôÄúÏÖÔÚʹÓõÄÄÚºËÖ§³Ö²¢¿Ú¡£
¡¡¡¡Äú¿ÉÄܱØÐëΪÁËʹ²Ù×÷ϵͳ֧³ÖÄú´òÓ¡»úÐèÒªµÄ´®¿Ú»ò ²¢¿Ú¶ø ÖØÐÂÅäÖÃÄںˡ£
¡¡¡¡ÒªÔö¼Ó¶Ô´®¿ÚµÄÖ§³Ö£¬ ²Î¼û ÄÚºËÅäÖÃÕⲿ·Ö¡£ ÒªÔö¼Ó¶Ô²¢¿ÚµÄÖ§³Ö£¬ ³ýÁ˲μû ÉÏÃæÌáµ½µÄÄDz¿·ÖÖ®Í⣬ »¹Òª ²Î¼ûÏÂÃæµÄ ²¿·Ö¡£
¡¡¡¡ÔÚʹÓò¢¿Úʱ£¬ Äú¿ÉÒÔÑ¡Ôñ Èà FreeBSD ÓÃÖжϷ½Ê½»¹ÊÇÂÖѯ·½Ê½À´ Óë´òÓ¡»úͨѶ¡£ ÔÚ FreeBSD ÉÏ£¬ ͨÓõĴòÓ¡»úÇý¶¯ (lpt(4)) ʹÓà ppbus(4) ϵͳ£¬ ËüÀûÓà ppc(4) Çý¶¯À´¿ØÖƶ˿ÚоƬ¡£
ÖÐ¶Ï ·½Ê½ÊÇ GENERIC ºËÐĵÄĬÈÏ·½Ê½¡£ ÔÚÕâÖÖ·½Ê½Ï£¬ ²Ù×÷ϵͳռÓÃÒ»ÌõÖжÏÇëÇóÏßÀ´¼ì²â´òÓ¡»úÊÇ·ñÒѾ×öºÃ½ÓÊÕÊý¾ÝµÄ×¼±¸¡£
ÂÖѯ ·½Ê½ÊDzÙ×÷ϵͳ·´¸´²»¶ÏµÄѯÎÊ´òÓ¡»úÊÇ·ñ×öºÃ½ÓÊÕÊý¾ÝµÄ×¼±¸¡£ µ±Ëü·µ»Ø¾ÍÐ÷ʱ£¬ ºËÐÄ¿ªÊ¼·¢ËÍÏÂÃæÒª·¢Ë͵ÄÊý¾Ý¡£
¡¡¡¡ÖжϷ½Ê½ËÙ¶Èͨ³£»á¿ìһЩ£¬ µ«È´Õ¼ÓÃÁËÒ»Ìõ±¦¹óµÄÖжÏÇëÇóÏß¡£ һЩгöµÄ HP ´òÓ¡»ú ²»ÄÜÕý³£µÄ¹¤×÷ÔÚÖжÏģʽÏ£¬ ÊÇÓÉÓÚһЩ¶¨Ê±ÎÊÌâ (»¹Ã»ÕýÈ·µÄÀí½â) Ôì³ÉµÄ¡£ ÕâЩ´òÓ¡»úÐèҪʹÓÃÂÖѯ·½Ê½¡£ ÄúÓ¦¸ÃʹÓà ÈκÎÒ»ÖÖ·½Ê½£¬ Ö»ÒªËüÄÜÕý³£¹¤×÷¾ÍÐС£ һЩ´òÓ¡»úËäÈ»ÔÚÁ½ÖÖģʽ϶¼¿ÉÒÔ ¹¤×÷£¬ µ«ÔÚÖжÏģʽÏ»áÂýµÄÒªÃü¡£
¡¡¡¡Äú¿ÉÒÔÓÃÒÔÏÂÁ½ÖÖ·½·¨É趨ͨѶģʽ£º ͨ¹ý ÅäÖÃÄں˻òÕßʹÓà lptcontrol(8) Õâ¸ö³ÌÐò¡£
¡¡¡¡ÒªÍ¨¹ýÅäÖÃÄں˵ķ½·¨ÉèÖà ͨѶģʽ£º
ÐÞ¸ÄÄÚºËÅäÖÃÎļþ¡£ ÕÒµ½ Ò»¸ö½Ð ppc0 µÄ¼Ç¼¡£ Èç¹ûÄúÏëÒªÉèÖõÄÊÇ µÚ¶þ¸ö²¢¿Ú£¬ ÄÇôÓà ppc1 ´úÌæ¡£ ʹÓõÚÈý¸ö²¢¿ÚµÄʱºòÓà ppc2 ´úÌæ£¬ ÒÀ´ËÀàÍÆ¡£
Èç¹ûÄúÏ£ÍûʹÓÃÖжÏÇý¶¯Ä£Ê½£¬ ÔòÓ¦±à¼ÏÂÃæµÄÅäÖãº
hint.ppc.0.irq="N"
ËüÔÚ /boot/device.hints Õâ¸öÎļþÖУ¬ ÆäÖÐ N ÓÃÕýÈ·µÄÖÐ¶Ï ±àºÅ´úÌæ¡£ ͬʱ£¬ ºËÐÄÅäÖÃÎļþÒ²±ØÐë °üÀ¨ ppc(4) µÄÇý¶¯£º
device ppc
Èç¹ûÄúÏëҪʹÓÃÂÖѯ·½Ê½£¬ Ö»ÐèÒª°Ñ /boot/device.hints Õâ¸öÎļþÖеÄÏÂÃæÕâÐÐɾ³ýµô£º
hint.ppc.0.irq="N"
ÔÚ FreeBSD Ï£¬ ÓÐʱÉÏÃæµÄ·½·¨²¢²»ÄÜʹ²¢¿Ú¹¤×÷ÔÚÂÖѯ·½Ê½¡£ ´ó¶àÊýÇé¿öÊÇÓÉÓÚ acpi(4) Çý¶¯Ôì³ÉµÄ£¬ Ëü¿ÉÒÔ×Ô¶¯Õì²âµ½É豸²¢½«Æä¹ÒÔØµ½ÏµÍ³ÉÏ£¬ µ«Ò²Òò´Ë£¬ Ëü¿ØÖÆ×Å´òÓ¡»ú¶Ë¿ÚµÄ·ÃÎÊģʽ. ÄúÐèÒª¼ì²é acpi(4) µÄÅäÖÃÀ´½â¾öÕâ¸öÎÊÌâ¡£
±£´æÎļþ¡£ È»ºóÅäÖ㬠½¨Á¢£¬ ²¢°²×°¸ÕÅäÖõÄÄںˣ¬ ×îºóÖØÐÂÆô¶¯¡£ ²Î¼û ÄÚºËÅäÖà ÕâÕÂÀ´»ñµÃ¸ü¶àϸ½Ú¡£
¡¡¡¡Ê¹Óà lptcontrol(8) ÉèÖÃͨѶģʽ£º
ÊäÈ룺
# lptcontrol-i
-d
/dev/lptN
½« lptN ÉèÖóÉÖжϷ½Ê½¡£
ÊäÈ룺
# lptcontrol-p
-d
/dev/lptN
½« lptN ÉèÖóÉÂÖѯ·½Ê½¡£
¡¡¡¡Äú¿ÉÒÔ°ÑÕâЩÃüÁî¼ÓÈëµ½ /etc/rc.local Õâ¸öÎļþÖУ¬ ÕâÑùÿ´ÎÆô¶¯ÏµÍ³ ʱ¶¼»áÉèÖóÉÄúÏëÒªµÄ·½Ê½¡£ ²Î¼û lptcontrol(8) À´»ñµÃ ¸ü¶àÐÅÏ¢¡£
¡¡¡¡ÔÚÉèÖúǫ́´òӡϵͳ֮ǰ£¬ ÄúÓ¦¸ÃÈ·±£ÄúµÄ¼ÆËã»ú¿ÉÒÔ°ÑÊý¾Ý ·¢Ë͵½´òÓ¡»úÉÏ¡£ ·Ö±ð¶ÀÁ¢µ÷ÊÔ´òÓ¡»úµÄͨѶºÍºǫ́´òӡϵͳ»á¸ü¼òµ¥¡£
¡¡¡¡ÎÒÃÇΪÁ˲âÊÔ´òÓ¡»ú£¬½«·¢ËÍһЩÎı¾¸øËü¡£ Ò»¸ö½Ð lptest(1) µÄ³ÌÐòÄÜʤÈÎÕâÏ×÷£¬ Ëü¿ÉÒÔÈôòÓ¡»úÁ¢¼´´òÓ¡³ö³ÌÐò·¢¸øËüµÄ ×Ö·û£º ËüÔÚÿÐдò³ö ¿ÉÒÔ´òÓ¡µÄ 96 ¸ö ASCII ×Ö·û¡£
¡¡¡¡µ±ÎÒÃÇʹÓõÄÊÇһ̨ PostScript ( »òÕßÒÔÆäËûÓïÑÔΪ»ù´¡µÄ ) ´òÓ¡»ú£¬ ÄÇô ÐèÒª¸ü×ÐϸµÄ¼ì²â¡£ Ò»¶ÎССµÄ PostScript ³ÌÐò×ãÒÔÍê³É¼ì²âµÄÈÎÎñ£¬ ±ÈÈçÏÂÃæÕâ¶Î³ÌÐò£º
%!PS 100 100 moveto 300 300 lineto stroke 310 310 moveto /Helvetica findfont 12 scalefont setfont (Is this thing working?) show showpage
¡¡¡¡¿ÉÒÔ°ÑÉÏÃæÕâ¶Î PostScript ´úÂëд½øÒ»¸öÎļþÀ ²¢ÇÒÏñÏÂÃæ²¿·ÖµÄÀý×ÓÀïÄÇÑù ʹÓá£
×¢Òâ: ÉÏÃæµÄС³ÌÐòÊÇÕë¶Ô PostScript ¶ø²»ÊÇ»ÝÆÕµÄ PCL дµÄ¡£ ÓÉÓÚ PCL ÓµÓÐÐí¶àÆäËû´òÓ¡»úûÓеÄÇ¿´ó¹¦ÄÜ£¬ ±ÈÈçËüÖ§³ÖÔÚ´òÓ¡´¿Îı¾µÄͬʱ¼Ð´øÌØÊâµÄÃüÁ ¶ø PostScript Ôò²»ÄÜÖ±½Ó´òÓ¡´¿Îı¾£¬ ËùÒÔÐèÒª¶ÔÕâÀà´òÓ¡»úÓïÑÔ½øÐÐÌØÊâµÄ´¦Àí¡£
¡¡¡¡Õⲿ·ÖÄÚÈݽ«Ö¸µ¼ÄúÔõÑù¼ì²â FreeBSD ÊÇ·ñ¿ÉÒÔÓëһ̨ÒѾÁ¬½ÓÔÚ²¢¿ÚÉϵĴòÓ¡»úͨѶ¡£
¡¡¡¡Òª²âÊÔ²¢¿ÚÉϵĴòÓ¡»ú£º
Óà su(1) ÃüÁîת»»µ½ root Óû§¡£
·¢ËÍÊý¾Ýµ½´òÓ¡»ú¡£
Èç¹û´òÓ¡»ú¿ÉÒÔÖ±½Ó´òÓ¡´¿Îı¾£¬ ¿ÉÒÔÓà lptest(1)¡£ ÊäÈ룺
# lptest > /dev/lptN
ÆäÖÐ N ÊDz¢¿ÚµÄ±àºÅ£¬ ´Ó0¿ªÊ¼¡£
Èç¹û´òÓ¡»úÖ§³Ö PostScript »òÆäËû´òÓ¡»úÓïÑÔ£¬ ¿ÉÒÔ·¢ËÍÒ»¶ÎС³ÌÐòµ½´òÓ¡»ú¡£ ÊäÈ룺
# cat > /dev/lptN
È»ºó£¬ Ò»ÐÐÒ»ÐÐµØ ÊäÈë ÊäÈëÕâ¶Î³ÌÐò¡£ ÒòΪÔÚ°´Ï »»ÐÐ »òÕß »Ø³µ Ö®ºó£¬ ÕâÒ»ÐоͲ»ÄÜÔÙÐÞ¸ÄÁË¡£ µ±ÄúÊäÈëÍêÕâ¶Î³ÌÐòÖ®ºó£¬ °´ CONTROL+D£¬ »òÕ߯äËû±íʾÎļþ½áÊøµÄ¼ü¡£
ÁíÍâÒ»ÖÖ°ì·¨£¬ Äú¿ÉÒÔ°ÑÕâ¶Î³ÌÐòдÔÚÒ»¸öÎļþÀ ²¢ÊäÈ룺
# cat file > /dev/lptN
ÆäÖÐ file Êǰüº¬ÕâÄúÒª·¢¸ø´òÓ¡»ú³ÌÐòµÄÎļþÃû¡£
¡¡¡¡Ö®ºó£¬ ÄúÓ¦¸Ã¿´µ½´òÓ¡³öÁËһЩ¶«Î÷¡£ Èç¹û´òÓ¡³öµÄ¶«Î÷¿´ÆðÀ´²¢²»ÕýÈ·£¬ Çë²»Òª×ż±£» ÎÒÃǽ«ÔÚºóÃæÖ¸µ¼ÄúÈçºÎ½â¾öÕâÀàÎÊÌâ¡£
¡¡¡¡Õⲿ·Ö½«¸æËßÄúÈçºÎ¼ì²â FreeBSD ÊÇ·ñ¿ÉÒÔÓëÁ¬½ÓÔÚ´®¿ÚÉϵĴòÓ¡»úͨѶ¡£
¡¡¡¡Òª²âÊÔÁ¬½ÓÔÚ´®¿ÚÉϵĴòÓ¡»ú£º
ͨ¹ý su(1) ÃüÁîתΪ root Óû§¡£
ÐÞ¸Ä /etc/remote Õâ¸öÎļþ¡£ Ôö¼ÓÏÂÃæÕâЩÄÚÈÝ£º
printer:dv=/dev/port:br#bps-rate:pa=parity
ÆäÖÐ port ÊÇ´®¿ÚµÄÉ豸½Úµã (ttyu0¡¢ ttyu1£¬ µÈµÈ)£¬ bps-rate ÊÇÓë´òÓ¡»úͨѶʱʹÓõÄËÙÂÊ£¬ ¶ø parity ÊÇͨѶʱ´òÓ¡»úÒªÇóµÄУÑé·½·¨ (Ó¦¸ÃÊÇ even¡¢ odd¡¢ none£¬ »ò zero Ö®Ò»)¡£
Õâ¶ùÓÐÒ»¸ö´®¿Ú´òÓ¡»úµÄÀý×Ó£¬ ËüÁ¬½ÓÔÚµÚÈý¸ö´®¿ÚÉÏ£¬ ËÙ¶ÈΪ 19200 ²¨ÌØ£¬ ²»½øÐÐУÑ飺
printer:dv=/dev/ttyu2:br#19200:pa=none
Óà tip(1) Á¬½Ó´òÓ¡»ú¡£ ÊäÈ룺
# tip printer
Èç¹ûûÄܳɹ¦£¬ ÔòÒªÔÙ´ÎÐÞ¸Ä /etc/remote Õâ¸öÎļþ£¬ ²¢ÇÒÊÔÊÔÓà /dev/cuaaN ´úÌæ /dev/ttydN¡£
·¢ËÍÊý¾Ýµ½´òÓ¡»ú¡£
Èç¹û´òÓ¡»ú¿ÉÒÔÖ±½Ó´òÓ¡´¿Îı¾£¬ ÔòÓà lptest(1)¡£ ÊäÈ룺
% $lptest
Èç¹û´òÓ¡»úÖ§³Ö PostScript »òÕ߯äËû ´òÓ¡»úÓïÑÔ£¬ Ôò·¢ËÍÒ»¶ÎС³ÌÐòµ½ ´òÓ¡»ú¡£ Ò»ÐÐÒ»ÐеÄÊäÈë³ÌÐò£¬ ±ØÐë ·Ç³£×Ðϸ ÒòΪÏñÍ˸ñ »òÕ߯äËû±à¼¼üÒ²Ðí¶Ô´òÓ¡»úÀ´ËµÓÐËüµÄ ÒâÒå¡£ ÄúͬÑùÒ²ÐèÒª°´Ò»¸öÌØÊâµÄ Îļþ½áÊø¼ü£¬ ÈôòÓ¡»úÖªµÀËüÒѾ ½ÓÊÕÁËÕû¸ö³ÌÐò¡£ ¶ÔÓÚ PostScript ´òÓ¡»ú£¬ °´ CONTROL+D¡£
»òÕߣ¬ ÄúͬÑùÒ²¿ÉÒ԰ѳÌÐò´æ´¢ÔÚÒ»¸öÎļþÀï ²¢ÊäÈ룺
% >file
ÆäÖÐ file ÊÇ °üº¬Òª·¢ËͳÌÐòµÄÎļþÃû¡£ ÔÚ tip(1) ·¢ËÍÕâ¸öÎļþÖ®ºó£¬ °´´ú±í Îļþ½áÊøµÄ¼ü¡£
¡¡¡¡ÄúÓ¦¸Ã¿´µ½´òÓ¡³öÁËһЩ¶«Î÷¡£ Èç¹ûËüÃÇ¿´ÆðÀ´²¢²»ÕýÈ·Ò²²»Òª×ż±£» ÎÒÃǽ«ÔÚÉÔºóµÄÕ½ÚÖнéÉÜÈçºÎ½â¾öÕâÀàÎÊÌâ¡£
¡¡¡¡Ä¿Ç°£¬ ÄúµÄ´òÓ¡»úÓ¦¸ÃÒѾÁ¬ºÃÁËÏߣ¬ ϵͳÄÚºËҲΪÓë´òÓ¡»úÁª»ú¶øÖØÐÂÅäÖúà (Èç¹ûÐèÒªµÄ»°)£¬ ¶øÇÒÄúÒ²ÒѾ¿ÉÒÔ·¢ËÍһЩ¼òµ¥µÄÊý¾Ýµ½´òÓ¡»ú¡£ ÏÖÔÚ£¬ ÎÒÃÇÒªÅäÖà LPD À´Ê¹Æä¿ØÖÆÄúµÄ´òÓ¡»ú¡£
¡¡¡¡ÅäÖà LPD ÒªÐÞ¸Ä /etc/printcap Õâ¸öÎļþ¡£ ÓÉÓÚ LPD ºǫ́´òӡϵͳÔÚÿ´ÎʹÓúǫ́´òÓ¡µÄʱºò£¬ ¶¼»á¶ÁÈ¡Õâ¸öÎļþ£¬ Òò´Ë¶ÔÕâ¸öÎļþµÄÐ޸ĻáÁ¢¼´ÉúЧ¡£
¡¡¡¡printcap(5) Õâ¸öÎļþµÄ¸ñʽºÜ¼òµ¥¡£ Äú¿ÉÒÔÓÃÄú×îϲ»¶µÄÎı¾±à¼Æ÷À´ÐÞ¸Ä /etc/printcap Õâ¸öÎļþ¡£ ÕâÖÖ¸ñʽºÍÆäËûµÄÏñ /usr/share/misc/termcap ºÍ /etc/remote ÕâÀàÎļþÊÇÒ»ÑùµÄ¡£ ÒªµÃµ½¹ØÓÚÕâÖÖ¸ñʽµÄÏ꾡ÐÅÏ¢£¬ Çë²ÎÔÄÁª»úÊÖ²á cgetent(3)¡£
¡¡¡¡¼òµ¥µÄºǫ́´òÓ¡ÅäÖðüÀ¨ÏÂÃæµÄ¼¸²½£º
¸ø´òÓ¡»úÆðÒ»¸öÃû×Ö (¼ÇÒäºÍʹÓõıðÃû)£¬ È»ºó°ÑËüÃÇд½øÎļþ /etc/printcap£» ²Î¼û ÈçºÎΪ´òÓ¡»úÃüÃû ÕâÕÂÀ´µÃµ½¸ü¶àµÄ¹ØÓÚÆðÃûµÄ°ïÖú¡£
ͨ¹ýÔö¼Ó sh Ïî¹Øµô±¨Í·Ò³ (ËüĬÈÏÊÇÆôÓõÄ)£» ²Î¼û ÈçºÎ½ûÓñ¨Í·Ò³ ²¿·ÖÀ´µÃµ½¸ü¶àÐÅÏ¢¡£
½¨Á¢Ò»¸öºǫ́´òÓ¡¶ÓÁеÄĿ¼£¬ ²¢ÇÒͨ¹ý sd ÏîĿָ¶¨ËüµÄλÖã» Äú¿É²Î¼û ´´½¨ºǫ́´òÓ¡¶ÓÁÐĿ¼ Ò»½ÚÁ˽â¸ü¶àÐÅÏ¢¡£
ÔÚ /dev ÏÂÉèÖôòÓ¡»úÉ豸½Úµã£¬ ²¢ÇÒÔÚдÔÚ /etc/printcap ÎļþÖÐ lp ÏîÄ¿À ²Î¼û ʶ±ð´òÓ¡»úÉ豸 Õⲿ·Ö¿ÉÒԵõ½¸ü¶àÐÅÏ¢¡£ ´ËÍ⣬ Èç¹û´òÓ¡»úÁ¬½ÓÔÚ´®¿ÚÉÏ£¬ ͨѶ²ÎÊýµÄÉèÖÃÐèҪдÔÚ ms# ÏîÖС£ ÕâЩ²ÎÊýÔÚ ÅäÖúǫ́´òӡͨѶ²ÎÊý ÕâÔÚÇ°ÃæÒѾÌÖÂÛ¹ý¡£
°²×°´¿Îı¾¹ýÂËÆ÷£» ÏêÇéÇë²Î¼û °²×°Îı¾¹ýÂËÆ÷ С½Ú¡£
Óà lpr(1) ÃüÁîÀ´²âÊÔÉèÖᣠÏëµÃµ½¸ü¶àÐÅÏ¢¿ÉÒԲμû ²âÊÔ ºÍ ¹ÊÕÏÅųý ²¿·Ö¡£
×¢Òâ: ʹÓôòÓ¡»úÓïÑԵĴòÓ¡»ú£¬ Èç PostScript ´òÓ¡»ú£¬ ͨ³£ÊDz»ÄÜÖ±½Ó´òÓ¡´¿Îı¾µÄ¡£ Ç°ÃæÌáµ½£¬ ²¢ÇÒ½«ÔÚºóÃæ¼ÌÐø½øÐнéÉܵļòµ¥µÄÉèÖ÷½·¨£¬ ¾ù¼Ù¶¨ÄúÕýÔÚ°²×°ÕâÖÖÖ»ÄÜ´òÓ¡ËüÄÜʶ±ðµÄÎļþ¸ñʽµÄ´òÓ¡»ú¡£
¡¡¡¡Óû§Í¨³£»áÏ£ÍûÖ±½ÓÔÚϵͳÌṩµÄ´òÓ¡»úÉÏ´òÓ¡´¿Îı¾¡£ ²ÉÓà LPD ½Ó¿ÚµÄ³ÌÐòҲͨ³£ÊÇÕâÑùÉè¼ÆµÄ¡£ Èç¹ûÄúÕýÔÚ°²×°ÕâÑùһ̨´òÓ¡»ú£¬ ²¢ÇÒÏ£ÍûËü²»½öÄÜ´òӡʹÓÃËüÖ§³ÖµÄ´òÓ¡»úÓïÑÔµÄÈÎÎñ ¶øÇÒ »¹ÄÜ´òÓ¡´¿Îı¾µÄÈÎÎñµÄ»°£¬ ÄÇôǿÁÒ½¨ÒéÄúÔÚÉÏÃæÌáµ½µÄ¼òµ¥ÉèÖõIJ½ÖèÉÏÔö¼ÓÒ»²½£º °²×°´Ó×Ô¶¯´¿Îı¾µ½ PostScript (»òÕ߯äËû´òÓ¡»úÓïÑÔ) µÄת»»³ÌÐò¡£ ¸ü¶àµÄϸ½Ú£¬ Çë²Î¼û ÔÚ PostScript ´òÓ¡»úÉÏ´òÓ¡´¿Îı¾¡£
¡¡¡¡µÚÒ»²½ (¼òµ¥) ¾ÍÊǸø´òÓ¡»úÆðÒ»¸öÃû×Ö¡£ ÄúÊǰ´¹¦ÄÜÆðÃû×Ö»¹ÊǸɴàÆð¸ö¹Å¹ÖµÄÃû×Ö¶¼Ã»ÓйØÏµ£¬ ÒòΪÄú¿ÉÒÔ¸ø´òÓ¡»úÉèÖÃÐí¶àµÄ±ðÃû¡£
¡¡¡¡ÔÚ /etc/printcap ÀïÖÁÉÙÓÐÒ»¸ö´òÓ¡»ú±ØÐëÖ¸¶¨£¬ ±ðÃûÊÇ lp¡£ ÕâÊÇĬÈϵĴòÓ¡»úÃû¡£ Èç¹ûÓû§¼ÈûÓÐ PRINTER »·¾³±äÁ¿£¬ ҲûÓÐÔÚÈκΠLPD ÃüÁîµÄÃüÁîÐÐÖÐÖ¸¶¨´òÓ¡»úÃû£¬ Ôò lp ½«ÊÇĬÈÏҪʹÓõĴòÓ¡»ú¡£
¡¡¡¡»¹ÓУ¬ ÎÒÃÇͨ³£°Ñ×îºóÒ»¸ö±ðÃûÉèÖóÉÄÜÍêÈ«ÃèÊö´òÓ¡»úµÄÃû×Ö£¬ °üÀ¨³§¼ÒºÍÐͺš£
¡¡¡¡Ò»µ©ÄúÑ¡ºÃÁËÃû×Ö»òÕßһЩ±ðÃû£¬ °ÑËüÃǷŽøÎļþ /etc/printcap Àï¡£ ´òÓ¡»úµÄÃû×ÖÓ¦¸Ã´Ó×î×ó±ßµÄÒ»ÁÐдÆð¡£ ÓÃÊú¸ÜÀ´¸ô¿ªÃ¿¸ö±ðÃû£¬ ²¢ÇÒÔÚ×îºóÒ»¸ö±ðÃûºóÃæ¼ÓÉÏÒ»¸öðºÅ¡£
¡¡¡¡ÔÚÏÂÃæµÄÀý×ÓÖУ¬ ÎÒÃÇ´ÓÒ»¸ö»ù±¾µÄ /etc/printcap ¿ªÊ¼£¬ ËüÖ»¶¨ÒåÁËÁ½Ì¨´òÓ¡»ú (һ̨ Diablo 630 ÐÐʽ´òÓ¡»úºÍһ̨ Panasonic KX-P4455 PostScript ¼¤¹â´òÓ¡»ú ):
# # /etc/printcap for host rose # rattan|line|diablo|lp|Diablo 630 Line Printer: bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:
¡¡¡¡ÔÚÕâ¸öÀý×ÓÖУ¬ µÚһ̨´òÓ¡»ú±»ÃüÃûΪ rattan ²¢ÇÒÉèÖÃÁË line£¬ diablo, lp£¬ ºÍ Diablo 630 Line Printer Õ⼸¸ö±ðÃû¡£ ÒòΪËü±»ÉèÖÃÁË lp Õâ¸ö±ðÃû£¬ ËùÒÔËüÊÇĬÈÏ´òÓ¡»ú¡£ µÚ¶þ̨ ±»ÃüÃûΪ bamboo£¬ ²¢ÇÒÉèÖÃÁË ps£¬ PS, S£¬ panasonic£¬ ºÍ Panasonic KX-P4455 PostScript v51.4 Õ⼸¸ö±ðÃû¡£
¡¡¡¡LPD ºǫ́´òӡϵͳĬÈÏ »áΪÿ¸öÈÎÎñ´òÓ¡ ±¨Í·Ò³¡£ ±¨Í·Ò³ °üº¬ÁË·¢ËÍÕâ¸öÈÎÎñµÄÓû§£¬ ·¢ËÍÕâ¸öÈÎÎñµÄ¼ÆËã»ú£¬ ÈÎÎñµÄÃû×Ö£¬ ²¢Óôó×Öĸ´ò³ö¡£ µ«²»ÐÒµÄÊÇ£¬ ËùÓÐÕâЩ¶îÍâµÄÎı¾£¬ ¶¼»á¸øÔÚ¶Ô´òÓ¡»ú½øÐÐ×î³õµÄÅäÖÃʱÅųý¹ÊÕÏ´øÀ´À§ÄÑ£¬ ËùÒÔÎÒÃǽ«ÏȲ»´òÓ¡±¨Í·Ò³¡£
¡¡¡¡ÒªÔÝÍ£´òÓ¡±¨Í·Ò³£¬ Ϊ´òÓ¡»úµÄ¼Ç¼Ôö¼Ó sh ±ê¼Ç£¬ ÔÚ /etc/printcap ÎļþÖС£ Õâ¶ùÓÐÒ»¸ö /etc/printcap ÎļþÖÐʹÓà sh µÄÀý×Ó:
# # /etc/printcap for host rose - no header pages anywhere # rattan|line|diablo|lp|Diablo 630 Line Printer:\ :sh: bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\ :sh:
¡¡¡¡×¢ÒâÎÒÃǵÄÕýÈ·¸ñʽ: µÚÒ»ÐдÓ×î×ó±ßÒ»ÁпªÊ¼£¬ ¶øºóµÄÿһÐÐÓà TAB Ëõ½øÒ»´Î¡£ Ò»ÐÐд²»ÏÂÐèÒª»»ÐÐʱ£¬ ÔÚ»»ÐÐǰ´òÒ»¸ö·´Ð±¸Ü¡£
¡¡¡¡ÏÂÒ»²½ÉèÖþÍÊÇÒª½¨Á¢Ò»¸ö ºǫ́´òÓ¡¶ÓÁÐĿ¼£¬ Ò²¾ÍÊÇÔÚ´òÓ¡ÈÎÎñ×îÖÕÍê³É֮ǰÓÃÓÚ´æ·ÅÕâЩÈÎÎñµÄĿ¼£¬ Õâ¸öĿ¼ÖÐÒ²»á´æ·Åºǫ́´òӡϵͳÓõ½µÄÆäËûһЩÎļþ¡£
¡¡¡¡ÓÉÓÚºǫ́´òÓ¡¶ÓÁÐĿ¼µÄ±äÁ¿±¾ÖÊ£¬ ͨ³£ °ÑÕâЩĿ¼°²ÅÅÔÚ /var/spool Ï¡£ ÄúҲûÓбØÒªÈ¥ ±¸·Ýºǫ́´òÓ¡¶ÓÁÐĿ¼ÀïµÄÄÚÈÝ¡£ ÖØÐ½¨Á¢ËüÃÇÖ»Òª¼òµ¥µÄʹÓà mkdir(1) ÃüÁî¡£
¡¡¡¡Í¨³££¬ ÎÒÃÇϰ¹ß½«Ä¿Â¼ÃûÆð³ÉºÍ ´òÓ¡»úÒ»ÑùµÄÃû×Ö£¬ ÏñÏÂÃæ ÕâÑù£º
# mkdir /var/spool/printer-name
¡¡¡¡È»¶ø£¬ Èç¹ûÄúÓкܶàÍøÂç´òÓ¡»ú£¬ Äú¿ÉÄÜÏëÒª°ÑÕâЩºǫ́´òÓ¡µÄ¶ÓÁÐĿ¼Ŀ¼·ÅÔÚÒ»¸öµ¥¶ÀµÄרΪʹÓà LPD ´òÓ¡¶ø×¼±¸µÄĿ¼Àï¡£ ÎÒÃǽ«ÓÃÎÒÃǵÄÁ½Ì¨´òÓ¡»ú rattan ºÍ bamboo ×÷ΪÀý×Ó£º
# mkdir /var/spool/lpd # mkdir /var/spool/lpd/rattan # mkdir /var/spool/lpd/bamboo
×¢Òâ: Èç¹ûµ£ÐÄÓû§ÈÎÎñµÄ±£ÃÜÐÔ£¬ ¿ÉÄÜ»áÏ£Íû±£»¤ÏàÓ¦µÄºǫ́´òÓ¡¶ÓÁÐĿ¼£¬ ʹ֮²»Äܱ»ÆäËûÓû§·ÃÎÊ¡£ ºǫ́´òÓ¡µÄ¶ÓÁÐĿ¼µÄÊôÖ÷Ó¦¸ÃÊÇ daemon Óû§£¬ ¶ø daemon Óû§ºÍ daemon ×éÓµÓжÁдºÍËÑË÷µÄȨÏÞ£¬µ«ÆäËûÓû§Ã»ÓС£ ½ÓÏÂÀ´ÓÃÎÒÃǵÄÁ½Ì¨´òÓ¡»ú×÷ΪÀý×Ó:
# chown daemon:daemon /var/spool/lpd/rattan # chown daemon:daemon /var/spool/lpd/bamboo # chmod 770 /var/spool/lpd/rattan # chmod 770 /var/spool/lpd/bamboo
¡¡¡¡×îºó£¬ ÄúÐèҪͨ¹ý/etc/printcap Îļþ¸æËß LPD ÕâЩĿ¼¡£ Äú¿ÉÒÔÓà sd ±ê¼ÇÀ´Ö¸¶¨ºǫ́´òÓ¡¶ÓÁÐĿ¼µÄ·¾¶:
# # /etc/printcap for host rose - added spooling directories # rattan|line|diablo|lp|Diablo 630 Line Printer:\ :sh:sd=/var/spool/lpd/rattan: bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\ :sh:sd=/var/spool/lpd/bamboo:
¡¡¡¡×¢Òâ´òÓ¡»úµÄÃû×ÖÒª´ÓµÚ 1 ÁпªÊ¼£¬ ÆäËû¼Ç¼ÿÐж¼ÒªÓà TAB ¼üËõ½øÒ»´Î£¬ д²»¿ªÐèÒª»»ÐÐÔÚ×îºó¼ÓÉÏ·´Ð±¸Ü¡£
¡¡¡¡Èç¹ûÄúûÓà sd ±ê¼ÇÖ¸¶¨ºǫ́´òÓ¡¶ÓÁÐĿ¼£¬ ºǫ́´òӡϵͳ»á½« /var/spool/lpd Ŀ¼×÷ΪĬÈÏĿ¼¡£
¡¡¡¡ÔÚ Hardware Setup Ò»½ÚÖУ¬ÎÒÃÇ˵Ã÷ÁË FreeBSD Óë´òÓ¡»úͨѶ½«Ê¹ÓÃÄĸö¶Ë¿ÚºÍ /dev Ŀ¼ÏµĽڵ㡣 ÎÒÃÇÒª¸æËß LPD ÕâЩÐÅÏ¢¡£ µ±ºǫ́´òӡϵͳÓÐÈÎÎñÐèÒª´òÓ¡£¬Ëü½«Îª¹ýÂ˳ÌÐò £¨¸ºÔð´«ËÍÊý¾Ýµ½´òÓ¡»ú£© ´ò¿ªÖ¸¶¨µÄÉ豸¡£
¡¡¡¡Óà lp ±ê¼ÇÔÚ /etc/printcap ÀïÁгö /dev ϵÄÉ豸½Úµã¡£
¡¡¡¡ÔÚÎÒÃǵÄÀý×ÓÖУ¬ ¼ÙÉè´òÓ¡»ú rattan ÔÚµÚÒ»¸ö²¢¿ÚÉÏ£¬ ´òÓ¡»ú bamboo ÔÚµÚÁù¸ö´®¿ÚÉÏ; ÏÂÃæÊÇ Òª¶Ô /etc/printcap ÎļþÀïÔö¼ÓµÄÄÚÈÝ :
# # /etc/printcap for host rose - identified what devices to use # rattan|line|diablo|lp|Diablo 630 Line Printer:\ :sh:sd=/var/spool/lpd/rattan:\ :lp=/dev/lpt0: bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\ :sh:sd=/var/spool/lpd/bamboo:\ :lp=/dev/ttyu5:
¡¡¡¡Èç¹ûÄúûÔÚÄúµÄ /etc/printcap ÎļþÖÐ Óà lp ±ê¼ÇÖ¸¶¨É豸½Úµã£¬ LPD ½«Ä¬ÈÏʹÓà /dev/lp ¡£ /dev/lp ĿǰÔÚ FreeBSD Öв»´æÔÚ¡£
¡¡¡¡Èç¹ûÄúÕýÔÚ°²×°µÄ´òÓ¡»úÊÇÁ¬½ÓÔÚ ²¢¿ÚÉϵģ¬ ÇëÌøµ½ °²×°Îı¾ ¹ýÂËÆ÷ ÕâÕ¡£ Èç¹û²»Êǵϰ£¬ »¹ÊÇ×îºÃ°´ÏÂÃæ½éÉÜµÄ ²½Öè×ö¡£
¡¡¡¡¶ÔÓÚÁ¬ÔÚ´®¿ÚÉϵĴòÓ¡»ú£¬ LPD ¿ÉÒÔΪ·¢ËÍÊý¾Ýµ½´òÓ¡»úµÄ¹ýÂ˳ÌÐòÉèÖúò¨ÌØÂÊ£¬ УÑ飬 ºÍÆäËû´®¿ÚͨѶ²ÎÊý ¡£ ÕâÊÇÓÐÀûµÄ£¬ ÒòΪ:
Ëü¿ÉÒÔÈÃÄúÖ»Ðè¼òµ¥µÄÐÞ¸Ä /etc/printcap ¾ÍÄܳ¢ÊÔ²»Í¬µÄͨѶ ²ÎÊý; Äú²¢²»ÐèÒªÈ¥ÖØÐ±àÒë¹ýÂËÆ÷ ³ÌÐò¡£
ËüʹµÃºǫ́´òӡϵͳ¿ÉÒÔÔÚ ¶ą̀Óв»Í¬´®¿ÚͨѶÉèÖõĴòÓ¡»úÉÏʹÓà ÏàͬµÄ¹ýÂËÆ÷³ÌÐò¡£
¡¡¡¡ÏÂÃæÕâ¸ö /etc/printcap ÖÐ Óà lp ±ê¼ÇÀ´¿ØÖÆÁгöÉ豸µÄ ´®¿ÚͨѶ²ÎÊý :
ÉèÖÃÉ豸µÄͨѶËÙ¶ÈΪ bps-rate£¬ ÕâÀï bps-rate ¿ÉÒÔΪ 50£¬ 75£¬ 110, 134£¬ 150£¬ 200£¬ 300£¬ 600£¬ 1200£¬ 1800£¬ 2400£¬ 4800£¬ 9600, 19200£¬ 38400£¬ 57600£¬ or 115200 ±ÈÌØÃ¿Ãë¡£
ÉèÖÃÒÑ´ò¿ªµÄÖжËÉ豸µÄÑ¡Ïî ¡£ stty(1) ½«Ïêϸ ½²Êö¿ÉÓõÄÑ¡Ïî¡£
¡¡¡¡µ± LPD ´ò¿ª Óà lp Ö¸¶¨µÄÉ豸ʱ£¬ Ëü»á ½«É豸µÄÌØÐÔÉèÖóÉÔÚ ms# ±ê¼ÇºóÖ¸¶¨µÄÄÇÑù¡£ ÌØ±ðÊÇ parenb, parodd£¬ cs5, cs6£¬ cs7, cs8£¬ cstopb, crtscts£¬ ºÍ ixon ÕâЩģʽ£¬ ËüÃÇÔÚ stty(1) ÊÖ²áÖÐÓÐÏêϸ˵Ã÷¡£
¡¡¡¡ÎÒÃǾٸöÀý×ÓÀ´Ìí¼ÓÎÒÃÇÁ¬ÔÚµÚ6¸ö´®¿ÚÉ쵀 ´òÓ¡»ú¡£ ÎÒÃǽ«Éè²¨ÌØÎª38400¡£ ÖÁÓÚģʽ£¬ ÎÒÃǽ«Óà -parenb ÉèÖóɲ»Ð£Ñ飬 Óà cs8 ÉèÖóÉ8λ×Ö·û£¬ Óà clocal ÉèÖóɲ»Òªµ÷ÖÆ½âµ÷Æ÷¿ØÖÆ£¬ Óà crtscts ÉèÖóÉÓ²¼þÁ÷Á¿¿ØÖÆ£º
bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\ :sh:sd=/var/spool/lpd/bamboo:\ :lp=/dev/ttyu5:ms#-parenb cs8 clocal crtscts:
¡¡¡¡ÎÒÃÇÏÖÔÚ×¼±¸¸æËß LPD ʹÓÃʲôÎı¾¹ýÂËÆ÷ ¸ø´òÓ¡»ú·¢ËÍÈÎÎñ¡£ Îı¾¹ýÂËÆ÷£¬ Ò²½Ð ÊäÈë¹ýÂËÆ÷£¬ ÊÇÒ»¸ö ÔÚ LPD ÓÐÒ»¸öÈÎÎñÒª·¢¸ø ´òÓ¡»úʱÔËÐеijÌÐò¡£ µ± LPD Ϊ´òÓ¡»úÔËÐÐÎı¾¹ýÂËÆ÷ʱ£¬ ËüÉèÖùýÂËÆ÷µÄ ±ê×¼ÊäÈëΪҪ·¢¸ø´òÓ¡»úµÄÈÎÎñ£¬ ¶ø±ê×¼Êä³öΪ Óà lp ±ê¼ÇÖ¸¶¨µÄ´òÓ¡»ú ¡£ ¹ýÂËÆ÷ÏÈ´Ó±ê×¼ÊäÈë¶ÁÈ¡ ÈÎÎñ£¬ Ϊ´òÓ¡»ú½øÐÐһЩת»» £¬ ²¢½«½á¹ûдµ½±ê×¼Êä³ö£¬ ÕâЩ½á¹û ½«±»´òÓ¡¡£ ÏëµÃµ½¸ü¶à¹ØÓÚÎı¾¹ýÂËÆ÷µÄÐÅÏ¢£¬ ¼û ¹ýÂËÆ÷ Õâ½Ú¡£
¡¡¡¡¶ÔÓÚ¼òµ¥µÄ´òÓ¡»úÉèÖ㬠Îı¾¹ýÂËÆ÷¿ÉÒÔ½ö½öÊÇÒ»¶Î Ö´ÐÐ /bin/cat µÄ shell ½Å±¾À´ ·¢ËÍÈÎÎñµ½´òÓ¡»ú¡£ FreeBSD »¹ÌṩÁËÒ»¸ö½Ð×ö lpf µÄ¹ýÂËÆ÷£¬ Ëü¿ÉÒÔ´¦ÀíÍ˸ñºÍÏ»®ÏßÀ´ ʹÄÇЩ¿ÉÄܲ»Äܺܺô¦ÀíÕâÀà×Ö·ûÁ÷µÄ´òÓ¡»úÕý³£¹¤×÷¡£ ¶øÇÒ£¬ µ±È»£¬ Äú¿ÉÒÔÓÃÈÎºÎÆäËûµÄ ÄúÏëÓõĹýÂ˳ÌÐò¡£ lpf ¹ýÂËÆ÷ÔÚ lpf: Ò»¸öÎı¾ ¹ýÂËÆ÷ Õâ½Ú½«ÓÐÏêϸÃèÊö¡£
¡¡¡¡Ê×ÏÈ£¬ ÎÒÃÇÀ´Ð´Ò»¶Î½Ð×ö /usr/local/libexec/if-simple µÄ¼òµ¥ shell ½Å±¾×÷ΪÎı¾¹ýÂËÆ÷¡£ ÓÃÄúÊìϤµÄÎı¾±à¼Æ÷½«ÏÂÃæµÄÄÚÈݷŽø Õâ¸öÎļþ£º
#!/bin/sh # # if-simple - Simple text input filter for lpd # Installed in /usr/local/libexec/if-simple # # Simply copies stdin to stdout. Ignores all filter arguments. /bin/cat && exit 0 exit 2
¡¡¡¡Ê¹Õâ¸öÎļþ¿ÉÒÔ±»Ö´ÐУº
# chmod 555 /usr/local/libexec/if-simple
¡¡¡¡È»ºóÓà if ±ê¼ÇÔÚ /etc/printcap Àï¸æËß LPD ʹÓÃÕâ¸ö½Å±¾¡£ ÎÒÃǽ«ÈÔȻΪ Ò»Ö±×÷ΪÀý×ÓµÄÕâÁ½Ì¨´òÓ¡»úÔÚ /etc/printcap ÀïÔö¼ÓÕâ¸ö±ê¼Ç£º
# # /etc/printcap for host rose - added text filter # rattan|line|diablo|lp|Diablo 630 Line Printer:\ :sh:sd=/var/spool/lpd/rattan:\ :lp=/dev/lpt0:\ :if=/usr/local/libexec/if-simple: bamboo|ps|PS|S|panasonic|Panasonic KX-P4455 PostScript v51.4:\ :sh:sd=/var/spool/lpd/bamboo:\ :lp=/dev/ttyu5:ms#-parenb cs8 clocal crtscts:\ :if=/usr/local/libexec/if-simple:
×¢Òâ: if-simple ½Å±¾µÄ¸±±¾¿ÉÒÔÔÚ /usr/share/examples/printing Ŀ¼ÖÐÕÒµ½¡£
¡¡¡¡lpd(8) ÔÚ /etc/rc Öб»ÔËÐУ¬ ËüÊÇ·ñ±»ÔËÐÐÓÉ lpd_enable Õâ¸ö±äÁ¿¿ØÖÆ¡£ Õâ¸ö ±äÁ¿Ä¬ÈÏÊÇ NO¡£ Èç¹ûÄú»¹Ã»ÓÐÐÞ¸Ä £¬ ÄÇôÔö¼ÓÕâÐУº
lpd_enable="YES"
¡¡¡¡µ½ /etc/rc.conf Îļþµ±ÖУ¬ È»ºó¼È¿ÉÒÔÖØÆôÄúµÄ »úÆ÷£¬ Ò²¿ÉÒÔÖ±½ÓÔËÐÐ lpd(8)¡£
# lpd
¡¡¡¡ÏÖÔÚÒѾ»ù±¾Íê³ÉÁË LPD µÄ»ù±¾ÉèÖᣠµ«²»ÐÒµÄÊÇ£¬ »¹²»ÊÇÇì×£µÄʱºò£¬ ÒòΪÎÒÃÇ»¹ÐèÒª²âÊÔÉèÖò¢ÇÒÐÞÕýËùÓÐµÄ ÎÊÌâ¡£ Òª²âÊÔÉèÖ㬠³¢ÊÔ´òӡһЩ¶«Î÷¡£ Òª Óà LPD ϵͳ´òÓ¡£¬ Äú¿ÉÒÔ Ê¹Óà lpr(1) ÃüÁ Ëü¿ÉÒÔÌá½»Ò»¸öÈÎÎñÀ´´òÓ¡¡£
¡¡¡¡Äú¿ÉÒÔÁªºÏʹÓà lpr(1) ºÍ lptest(1) ³ÌÐò£¬ ÔÚ ¼ì²é´òÓ¡»ú ͨѶ Õâ½Ú½éÉÜÔõÑùÉú³ÉһЩ²âÊÔÎı¾¡£
¡¡¡¡Òª²âÊÔ¼òµ¥ LPD ÉèÖãº
¡¡¡¡ÊäÈ룺
# lptest 20 5 | lpr -P
printer-name
¡¡¡¡ÆäÖÐ printer-name ÊÇ ÔÚ /etc/printcap ÖÐÖ¸¶¨µÄ´òÓ¡»úµÄÒ»¸öÃû×Ö ( »òÕßÒ»¸ö±ðÃû) ¡£ Òª²âÊÔĬÈÏ
´òÓ¡»ú£¬ ÊäÈë lpr(1) ²»´øÈκΠ-P
Ñ¡Ïî¡£ ͬÑù£¬ Èç¹ûÄúÕýÔÚ²âÊÔһ̨ʹÓà PostScript µÄ´òÓ¡»ú£¬ ·¢ËÍÒ»¸ö PostScript ³ÌÐòµ½´òÓ¡»ú¶ø²»ÊÇ Ê¹Óà lptest(1)¡£
Äú¿ÉÒ԰ѳÌÐò·ÅÔÚÒ»¸ö ÎļþÀ È»ºóÊäÈ룺 lpr file¡£
¡¡¡¡¶ÔÓÚһ̨ PostScript ´òÓ¡»ú£¬ ÄúÓ¦¸ÃµÃµ½ÄǶγÌÐòµÄ ½á¹û¡£ ¶øÈç¹ûÄúʹÓÃµÄ lptest(1)£¬ ÔòÄúµÃµ½µÄ ½á¹ûÓ¦¸Ã¿´ÆðÀ´ÏñÏÂÃæÕâÑù£º
!"#$%&'()*+,-./01234 "#$%&'()*+,-./012345 #$%&'()*+,-./0123456 $%&'()*+,-./01234567 %&'()*+,-./012345678
¡¡¡¡Òª¸ü½øÒ»²½µÄ²âÊÔ´òÓ¡»ú£¬ ³¢ÊÔÏÂÔØÒ»Ð©´óµÄ ³ÌÐò (Ϊ»ùÓÚÌØ¶¨ÓïÑԵĴòÓ¡»ú ) »òÕßÔËÐÐ lptest(1) ²¢Ê¹Óò»Í¬µÄ²ÎÊý¡£ ±ÈÈ磬 lptest 80 60 ½«Éú³É 60 ÐРÿÐÐ 80 ¸ö×Ö·û¡£
¡¡¡¡Èç¹û´òÓ¡»ú²»Äܹ¤×÷£¬ ²Î¿¼ ¹ÊÕÏÅųý Õâ½Ú¡£
±¾ÎĵµºÍÆäËüÎĵµ¿É´ÓÕâÀïÏÂÔØ£ºftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
Èç¹û¶ÔÓÚFreeBSDÓÐÎÊÌ⣬ÇëÏÈÔĶÁÎĵµ£¬Èç²»Äܽâ¾öÔÙÁªÏµ<questions@FreeBSD.org>.
¹ØÓÚ±¾ÎĵµµÄÎÊÌâÇë·¢ÐÅÁªÏµ <doc@FreeBSD.org>.