วันศุกร์ที่ 26 พฤศจิกายน พ.ศ. 2553

แชร์เครื่องพิมพ์แบบง่าย ๆ ใน UBUNTU


ผมใช้ UBUNTU มาหลายปี แต่ไม่เคยใช้ UBUNTU แชร์เครื่องพิมพ์ให้เครื่องอื่นเลย เป็นเพราะในสำนักงานมีผมใช้ UBUNTU คนเดียว ฮาๆๆ เลยไม่มีความจำเป็นต้องใช้ UBUNTU แชร์เครื่องพิมพ์ให้คนอื่น ปกติก็จะเพิ่มเครื่องพิมพ์มาจากวินโดว์เครื่องอื่นซึ่งก็ใช้ได้ดีตลอดมาจึงไม่ได้คิดสนใจใช้ UBUNTU แชร์เครื่องพิมพ์สักที กระทั่งเมื่อสักสองสามวันก่อน @mamasag ได้สอบถามเรื่องการแชร์เครื่องพิมพ์ระหว่าง UBUNTU ด้วยกันที่ ห้องเพลง  แหะ ๆ ผมงม ๆ ด้วย แต่ทำไม่ได้ครับ อะนะแต่ว่าที่นี่มีกูรูหลายคนนิ ฮา ๆๆ รอกูรูดีกว่า อิอิในที่สุด @ชายเจตน์,@Kids @ชนกลุ่มน้อย OS และ @..เส ก็ช่วยกันหาวิธีจนสำเร็จลุล่วงไปได้ด้วยดี โดยมีผมเป็นผู้สังเกตการณ์แอบขโมยความรู้อยู่ห่าง ๆ อิอิ (ห่างมากกกมารู้อีกทีหลังจากทำเสร็จไปแล้วดีที่ได้ @ชายเจตน์ ช่วยถ่ายทอดให้ฟังไม่งั้นไม่ทันกิน อิอิ..) เอาละความรู้ได้มาแล้วแบ่งปันต่อครับ บันทึกไว้เป็นความรู้ดีกว่าปล่อยให้เลือนหายไปกับความทรงจำ และตายไปกับเรา เดี่ยวลูกหลานจะต้องมางมกันใหม่อีก จึงเป็นที่มาของบทความนี้ ทั้งนี้ทั้งนั้นเครดิตทั้งหมดให้กับ ทั้งห้าท่านที่กล่าวมาข้างต้นครับ ส่วนท่านใดที่มีส่วนเกี่ยวข้องด้วยแต่ไม่ปรากฎชื่อทักท้วงได้ครับ อิอิ …. และต้องขอออกตัวไว้ก่อนว่าผมไม่ใช่ผู้เชี่ยวชาญเรื่องคอมพิวเตอร์เป็นเพียง End User ที่หลงไหลคอมพิวเตอร์และ Linux และบทความนี้ก็เกิดขึ้นจากการทดลองใช้จริงโดยประมวลความรู้จากกูรูทั้งสี่ท่านข้างต้น โดยไม่ได้เปิดเอกสารคู่มือทางเทคนิคใด ๆ จึงอาจมีความผิดพลาดบางประการไม่มากก็น้อย  ดังนั้นหากบทความนี้ผิดถูกประการใดกระผมน้อมรับคำชี้แนะจากทุกท่าน เพื่อปรับปรุงแก้ไขให้ถูกต้องมากยิ่งขึ้นครับ

ออกทะเลไปไกลแระมาเริ่มเลยละกันครับ
อันดับแรกเตรียมการที่เครื่อง Host ก่อนโดย
        1. ติดตั้งไดรเวอร์เครื่องพิมพ์ที่จะแชร์ให้เรียบร้อยก่อนซึ่งวิธีการติดตั้งไดรเวอร์เครื่องพิมพ์ไม่ขอกล่าวไว้ในที่นี้
        2.ถ้าเครื่อง Host ยังไม่ได้ติดตั้ง samba ให้ติดตั้ง samba ก่อนครับ โดยไปที่ โปรแกรม>เครื่องใช้ไม้สอย>เทอร์มินัล
       3. ที่เทอร์มินัล sudo apt-get install samba samba-common-bin smbfs smbclient เพื่อติดตั้ง samba
       4.หลังจากติดตั้ง samba แล้ว ให้ไปแก้ไขไฟล์ smb.conf เพื่อให้เครื่อง client สามารถมองเห็นเครื่องพิมพ์ที่แชร์อยู่ในเครื่อง Host โดยไปที่เทอร์มินัล แล้ว  sudo gedit /etc/samba/smb.conf เพื่อเปิดไฟล์ smb.conf จากนั้นค้นหาบรรทัดที่ 298 แล้วเปลี่ยนค่าจาก browseable = no เป็น browseable = yes และที่บรรทัดที่ 301 แก้ guest ok = no เป็น guest ok = yes ให้แก้ตรงบริเวณที่วงในภาพครับ
หลังจากแก้แล้วจัดเก็บไฟล์และปิด gedit แล้วรีสตาร์ท samba ใหม่ ด้วยคำสั่ง sudo restart smbd เป็นอันเสร็จที่เครื่อง Host ครับ
หมายเหตุ  ในกรณีที่ท่านใช้ UPE 10.11 ของ @ชายเจตน์ ซึ่งได้ติดตั้ง samba และปรับแต่งไฟล์  smb.conf ให้เรียบร้อยจึงไม่ต้องติดตั้ง samba และปรับแต่งแก้ไขไฟล์  smb.conf อีก ให้ข้ามไปแชร์เครื่องพิมพ์ได้เลย
           5. จากนั้นไปที่ ระบบ>ดูแลระบบ>เครื่องพิมพ์  จะเข้าสู่หน้าต่าง  printing-localhost ตามภาพ
 
        ที่หน้า printing-localhost ให้ คลิกขวาที่เครื่องพิมพ์ที่ต้องการแชร์เพื่อดูว่าตั้งให้แชร์หรือยังถ้ายัง ให้เลือก “ถูกแบ่งปัน” เพื่อแชร์เครื่องพิมพ์ที่เลือก  จากนั้น เลือกที่เมนู เซิร์ฟเวอร์>ตั้งค่า จะได้หน้าต่าง server setting ที่หน้านี้ผมติ๊กแค่สองอันคือ "ประกาศเครื่องพิมพ์ที่แบ่งปันบนเครื่องนี้" และ"บันทึกข้อมูลการดีบั๊กเพื่อแก้ไขปัญหา" ตามภาพ
จากนั้นตกลงเลยครับ เป็นอันเสร็จพิธีที่เครื่อง Host ครับ

สำหรับวิธีการเพิ่มเครื่องพิมพ์ที่เครื่อง client  นั้นแบ่งเป็น 2  กรณี คือ กรณีที่เครื่อง client เป็น UBUNTU กับเครื่อง client เป็น Windows ดังนี้ ครับ
1.การเพิ่มเครื่องพิมพ์ให้เครื่อง client ที่เป็น UBUNTU ทำได้  2 วิธี คือ
           วิธีที่ 1 เป็นวิธีที่เหมาะกับเครือข่ายขนาดเล็กที่มีเครื่องพิมพ์แชร์อยู่ในเครือข่ายจำนวนไม่มาก หรือเป็นเครือข่ายภายในบ้าน ครับ เพราะมันจะสะดวกในการติดตั้งและแชร์ครับ มีขั้นตอนตามนี้ครับ
            ที่เครื่อง client
             1. ถ้ายังไม่ได้ติดตั้ง samba ให้ติดตั้ง samba ก่อนครับ โดยไปที่  โปรแกรม > เครื่องใช้ไม้สอย > เทอร์มินัล  เมื่อเปิดเทอร์มินัลขึ้นมาแล้วสั่ง  sudo apt-get install samba samba-common-bin smbfs smbclient  เพื่อติดตั้ง samba
             2. จากนั้นไปที่ ระบบ>ดูแลระบบ>เครื่องพิมพ์   เพื่อไปยังหน้า printing-localhost ในเครื่อง client
             3.ที่หน้า printing-localhost ให้ เลือกที่เมนู เซิร์ฟเวอร์>ตั้งค่า จะได้หน้าต่าง server setting ที่หน้านี้เลือกติ๊กเฉพาะหัวข้อแรก คือ "แสดงเครื่องพิมพ์ที่ถูกแบ่งปันโดยเครื่องอื่น ๆ" ตามภาพ
จากนั้นตกลงเลยครับ คราวนี้ที่เครื่อง client จะเห็นเครื่องพิมพ์ที่แชร์อยู่บนเครือข่ายทั้งหมดครับ แค่นี้เครื่อง client ก็สามารถพิมพ์งานผ่านเครื่องพิมพ์ที่แชร์มาจากเครื่อง Host ได้แล้วครับ ทดสอบได้เลย
          สำหรับการแชร์ด้วยวิธีนี้นั้นผมมองว่ามันง่ายดีครับถ้าทั้ง Host และ  client เป็น UBUNTU ด้วยกันและมีจำนวนเครื่องในเครือข่ายไม่มาก แต่ก็มีข้อเสีย คือ ที่เครื่อง client จะมองเห็นเครื่องพิมพ์ที่แชร์อยู่บนเครือข่ายทุกเครื่องครับ หากเป็นระบบขนาดใหญ่ที่มีเครื่องพิมพ์แชร์จำนวนมากคงจะสับสนน่าดูครับ ดังนั้นหากเป็นเครือข่ายขนาดใหญ่จึงไม่แนะนำให้ใช้วิธีนี้
         วิธีที่ 2 เพิ่มเครื่องพิมพ์ให้เครื่อง client ที่เป็น UBUNTU ผ่าน samba ซึ่งผมมองว่าเป็นวิธีที่เหมาะสมกับทั้งเครือข่ายขนาดใหญ่และขนาดเล็กแต่คงจะเหมาะกับเครือข่ายขนาดใหญ่มากกว่าเพราะที่เครื่อง client สามารถเลือก add ได้เฉพาะเครื่องพิมพ์ที่ตนเองต้องการเท่านั้น มีขั้นตอนตามนี้ครับ
           ที่เครื่อง client
              1 ถ้ายังไม่ได้ติดตั้ง samba ให้ติดตั้ง samba ก่อนครับ โดยไปที่ โปรแกรม > เครื่องใช้ไม้สอย > เทอร์มินัล  เมื่อเปิดเทอร์มินัลขึ้นมาแล้วสั่ง  sudo apt-get install samba samba-common-bin smbfs smbclient  เพื่อติดตั้ง samba 
              2. หลังจากติดตั้ง samba แล้วให้ไปที่ ระบบ>ดูแลระบบ>เครื่องพิมพ์ เพื่อไปยังหน้า printing-localhost ในเครื่อง client ตามภาพ
              3.ที่หน้า printing-localhost ของเครื่อง client คลิก "เพิ่ม" จะได้หน้าต่าง เพิ่มเครื่องพิมพ์ขึ้นมาดังรูป
          4.ที่หน้านี้ให้เลือกตรงเครื่องพิมพ์บนเครือข่าย > เครื่องพิพม์ Windows ผ่าน SAMBA  แล้วคลิกที่ "เรียกดู" จะได้หน้าต่าง "เรียกดู SMB"ดังภาพครับ
 
           5.ที่หน้าต่าง "เรียกดู SMB" ให้เลือกหาเครื่องพิมพ์ที่แชร์มาจากเครือง Host ที่เราต้องการ จากนั้น คลิก ตกลง ครับ เพื่อกลับไปยังหน้าเดิมดังภาพ
           6.จะเห็นว่ามีข้อมูลเครื่องพิมพ์มาปรากฎที่ช่อง SMB แล้ว คลิก ถัดไป ครับ
          7.เลือกยี่ห้อเครื่องพิมพ์ แล้วคลิก ถัดไป
           8.เลือกรุ่นของเครื่องพิมพ์แล้ว คลิก ถัดไป 
           9.ตั้งชื่อเครื่องพิมพ์ครับ แล้วคลิก เริ่มใช้
          10.ลองพิมพ์หน้าทดสอบครับ 
          11.เมื่อไปดูที่หน้า printing-localhost ของเครื่อง client จะพบเครื่องพิมพ์ที่เพิ่งเพิ่มเข้าดังภาพครับ  เพียงเท่านี้ก็สามารถใช้งานเครื่องพิมพ์ผ่านเครื่อง Host ที่เป็น UBUNTU ได้แล้วครับ

2.การเพิ่มเครื่องพิมพ์ให้เครื่อง client ที่เป็น Windows (ในที่นี้ทดสอบกับ Windows XP) สามารทำได้  3 วิธี คือ

      วิธีที่ 1 เพิ่มเครื่องพิมพ์ที่แชร์จากเครื่อง Host ผ่าน My Network Places
            1.ที่หน้า Desktop ของเครื่อง client  คลิก ๆ เลือก My Network Places
            2. ที่หน้า My Network Places ที่ช่อง Address ให้พิมพ์ \\[ชื่อเครื่อง] ตัวอย่างของผมก็ \\phaa-1201t  คราวนี้จะเข้าไปในเครื่อง Host เลย ซึ่งก็จะเห็นเครื่องพิมพ์และไดเร็กทอรี่ที่แชร์ทั้งหมดในเครื่อง Host  ครับตามภาพครับ
          3. จากนั้นคลิก ๆ เลือกเครื่องพิมพ์ที่ต้องการครับ จะมีหน้าต่างถามขึ้นมา ก็ตอบ yes ไปเลยครับ แล้วจากนั้นมีหน้าต่างถามขึ้นมาอีก ก็ OK ไปเลย

             4.จากนั้นจะมีหน้าต่าง add printer wizard ขึ้นมา เพื่อติดตั้งไดรเวอร์ครับ ก็เลือกดูรุ่นของเราว่ามีในลิสต์หรือเปล่า 
             5.ถ้ามีอยู่แล้วก็เลือกแล้ว OK แล้วรอจนกว่าจะติดตั้งไดรเวอร์เสร็จ แต่หากไม่มีในลิสต์ให้เลือก Have Disk เพื่อติดตั้งไดรเวอร์จากภายนอก โดยต้องใช้แผ่นไดรเวอร์ของเครื่องพิมพ์ดังกล่าวติดตั้งลงไปในเครื่อง client  หลังจากติดตั้งไดรเวอร์เสร็จแล้วจะมีหน้าต่างแบบในภาพขึ้นมาแสดงว่าติดตั้งเรียบร้อยแล้ว


         6.จากนั้นลองไปดูที่ Printers and Faxers จะพบว่าเครื่องพิมพ์จากเครื่อง Host มาอยู่ที่หน้านี้เรียบร้อยแล้ว
เท่านี้เครื่อง client ที่เป็น Windows ก็สามารถพิมพ์งานผ่านเครื่องพิมพ์ที่แชร์มาจากเครื่อง Host ที่เป็น UBUNTUได้แล้วครับ
         วิธีที่ 2 เพิ่มเครื่องพิมพ์ที่แชร์ให้เครื่อง client ที่เป็น Windows โดยใช้ Add Printer Wizard 
แล้ว browse หาเครื่องพิมพ์ที่เราแชร์ไว้ มีขั้นตอนดังนี้
              1.ที่เครื่อง client ให้ไปที่ Start>Printers and Faxers จะได้หน้าต่าง Printers and Faxers ดังภาพ
             2.ที่หน้า Printers and Faxers เลือก add a printer จะได้หน้าต่าง add printer wizard
          3.ที่หน้าต่าง add printer wizard เลือก next เพื่อไปหน้าต่อไป
            4.ที่หน้านี้เลือก A network printer... แล้ว next เพื่อไปหน้าต่อไป
             5. ที่หน้านี้ เลือก browse for a printer แล้ว next  
       6.ที่หน้านี้มองหาเครื่องพิมพ์ที่แชร์มาจากเครื่อง Host  เมื่อเจอแล้วเลือก และ next ซึ่งมันจะให้ติดตั้งไดรเวอร์อีกเราก็จัดการติดตั้งไดรเวอร์เหมือนวิธีแรกครับ
          วิธีที่ 3 เพิ่มเครื่องพิมพ์ที่แชร์ให้เครื่อง client ที่เป็น Windows โดยใช้ Add Printer Wizard แล้ว connect ผ่านทาง URL ซึ่งวิธีนี้จะต้องทราบหมายเลข IP ของเครื่อง Host ก่อน และจะต้อง conect ผ่านหมายเลข IP เท่านั้น ด้วยเหตุที่จะต้อง connect ผ่านหมายเลข IP เท่านั้น วิธีนี้จึงไม่เหมาะกับเครือข่ายที่ใช้ DHCP จ่ายหมายเลข IP ครับ วิธีการตามนี้ครับ
              1.ที่เครื่อง client ให้ไปที่ Start>Printers and Faxers
              2.ที่หน้า Printers and Faxers เลือก add a printer จะได้หน้าต่าง add printer wizard
              3.ที่หน้าต่าง add printer wizard เลือก next เพื่อไปหน้าต่อไป
              4.แล้วเลือก A network printer... แล้ว next เพื่อไปหน้าต่อไป ตามภาพ
              5.ที่หน้านี้เลือก connect to a printer … ตามภาพเลยครับ
              6. ตรง URL: ให้ใส่ข้อมูลตามนี้ครับ http://[IP:631]/printers/ชื่อเครื่องพิมพ์ที่แชร์มาจากเครื่องแม่ครับ เช่น ของผม http://192.168.2.105:631/printers/HP-LaserJet-P2014 จากนั้น next ซึ่งจะเข้าสู่กระบวนการติดตั้งไดรเวอร์เราก็จัดการติดตั้งไดรเวอร์เหมือนวิธีการแรกครับ หลังติดตั้งไดรเวอร์เสร็จก็สามารถใช้งานได้เลยครับ
หมายเหตุ วิธีการดูรายละเอียดเกี่ยวกับเครื่องพิมพ์ที่แชร์มาจากเครื่องแม่ว่าชื่ออะไร
             1. ที่เครื่อง client ให้เปิด เบราเซอร์ขึ้นมา แล้วพิมพ์ที่ address ของเบราเซอร์ ตามนี้ http://[IP:631] เช่นของผม http://192.168.2.105:631 จะได้ตามภาพ
           2.จากภาพเลือก แท็ป Printers จะมีรายชื่อเครื่องพิมพ์บนเครื่อง Host แสดงอยู่ดังภาพ
           3.จากภาพให้คลิกเลือกที่ชื่อเครื่องพิมพ์ที่ต้องการครับ จะมีรายละเอียดตามรูปครับ
        4.ตรงนี้ให้ copy ที่อยู่บน address ไปใส่ที่ URL ในหน้าต่าง add printer wizard ในข้อ 6 ได้เลยครับ
จบแล้วครับ ผิดถูกประการใดขอคำชี้แนะด้วยครับ

เขียนไว้ที่น้ีด้วย http://playoss.com/node/105