ลูกค้า CUPS จำเป็นต้องติดตั้งไดรเวอร์ในเครื่องหรือไม่?


10

ถ้าฉันใช้ CUPS ลูกค้าควรติดตั้งไดรเวอร์ไว้ในเครื่องหรือไม่?

ตัวอย่าง: สมมติว่าเรามี 1 เครือข่ายพีซีที่มี Linux, 1 เซิร์ฟเวอร์การพิมพ์ (หรือ CUPS, เซิร์ฟเวอร์การพิมพ์ Samba)

หาก Linux PC ต้องการพิมพ์เอกสารผ่านเซิร์ฟเวอร์การพิมพ์จำเป็นต้องมี Linux PC เพื่อให้มีไดรเวอร์สำหรับเครื่องพิมพ์ที่จะใช้หรือไม่

หรือใช้ API ทั่วไปบางอย่าง?


ฉันกำลังต่อสู้กับเครื่องพิมพ์ CANON LBP ฉันลองทุกอย่างแล้ว! และไม่สามารถให้พวกเขาทำงานในพื้นที่ได้ แต่ฉันต้องการคอมพิวเตอร์ Linux เพื่อให้สามารถพิมพ์ได้ LBP 810 และ LBP 1120 รายการ
bakytn

ฉันคิดว่าปัญหาของคุณคือ LBP810 (และอาจจะ 1120) เป็นผู้ชนะด้วยสติปัญญาทั้งหมดบนคอมพิวเตอร์ IIRC ไม่เคยมีไดรเวอร์ลินุกซ์ใด ๆ ที่ผลิตสำหรับ 810 (อย่างน้อย) ดูการแก้ไขด้านล่างของฉันสำหรับคำแนะนำ
ConcOfOfTunbridgeWells

Linux -> ไม่; Windows -> ควร แต่ไม่บังคับ
MUY เบลเยี่ยม

คำตอบ:


10

เซิร์ฟเวอร์การพิมพ์ที่ใช้ CUPS เป็นเครื่องเดียวที่จำเป็นต้องมีไดรเวอร์ อ่านเกี่ยวกับ CUPS บนวิกิพีเดียตัวอย่าง - ในส่วนภาพรวมมันระบุว่าค่อนข้างชัดเจน:

CUPS ช่วยให้ผู้ผลิตเครื่องพิมพ์และนักพัฒนาไดรเวอร์เครื่องพิมพ์สามารถสร้างไดรเวอร์ที่ทำงานบนเซิร์ฟเวอร์การพิมพ์ได้ง่ายขึ้น การประมวลผลเกิดขึ้นบนเซิร์ฟเวอร์ช่วยให้การพิมพ์บนเครือข่ายง่ายขึ้นกว่าระบบการพิมพ์ Unix อื่น ๆ ด้วยการติดตั้ง Samba ผู้ใช้สามารถระบุเครื่องพิมพ์บนคอมพิวเตอร์ Windows ระยะไกลและไดรเวอร์ PostScript ทั่วไปสามารถใช้สำหรับการพิมพ์ทั่วทั้งเครือข่าย

มิฉะนั้นแล้วอะไรคือประโยชน์ที่แท้จริงของการใช้ CUPS


5

หากคุณใช้ Samba / CUPS เป็นเซิร์ฟเวอร์การพิมพ์สำหรับไคลเอนต์ที่ใช้ Windows ลูกค้ามักจะมีไดรเวอร์สำหรับเครื่องพิมพ์นั้นแม้ว่าในบางกรณี CUPS สามารถทำการแปลของตัวเองได้ ตัวอย่างเช่นเป็นไปได้ที่จะตั้งค่า ghostscript และ render postscript เพื่อแสดงบนเครื่องพิมพ์ที่ไม่ใช่ PS แม้ว่าไคลเอนต์ Windows จะต้องใช้ไดรเวอร์ PS ที่เล่นได้ดีกับสิ่งนี้

สำหรับลูกค้า Linux คำตอบคือ: มันซับซ้อน แต่ไม่ Unix / Linux ดั้งเดิมไม่มีการพิมพ์ดั้งเดิมหรือการแสดงผล API เทียบเท่ากับ GDI ของ Windows แม้ว่าไลบรารีเช่นไคโรสามารถให้ฟังก์ชันนี้สำหรับแอปพลิเคชันที่ใช้ แอ็พพลิเคชัน unix แบบดั้งเดิมส่วนใหญ่พิมพ์ ASCII ไปยัง stdout หรือสร้างไฟล์ Postscript โดยกำเนิด ไลบรารีการเรนเดอร์ที่ไม่ขึ้นกับอุปกรณ์เช่นไคโรจะแสดงผลให้กับ Postscript ผ่านไดรเวอร์ของตัวเองซึ่งจะรวมอยู่ในไคลเอนต์พร้อมกับไลบรารี

คุณเกือบจะพบ Postscript ที่ไหนสักแห่งในเวิร์กโฟลว์สำหรับ CUPS หรือระบบการพิมพ์ lpr / lpd ที่เก่ากว่า โดยทั่วไปแล้วไคลเอนต์จะสร้างเอาต์พุต ASCII หรือ Postscript เอาต์พุต ASCII จะถูกแปลงผ่านบางสิ่งเช่น a2ps และ Postscript ที่เพิ่งผ่านไป Postscript จะถูกส่งผ่านไปยังเครื่องพิมพ์หรือเลเยอร์การแสดงผลตาม Ghostscript

เป็นเวลานานแล้วที่ฉันตั้งค่าระบบย่อยการพิมพ์ที่ใช้ linux แต่ IIRC ไดรเวอร์ PS นั้นค่อนข้างธรรมดาโดยมีไฟล์ PPD สำหรับเครื่องพิมพ์เป้าหมาย ลูกค้าไม่จำเป็นต้องรู้มากนัก ตามเนื้อผ้าคุณเพิ่งตั้งค่าคิวสำหรับการพิมพ์ในรูปแบบที่แตกต่างกัน (เช่นพิมพ์สองหน้า, ไม่พิมพ์สองด้านหรือหัวจดหมาย) และพวกเขากลายเป็นปลายทางการพิมพ์แยกต่างหาก

หากคุณใช้แอพที่มีการควบคุมเครื่องพิมพ์ท้องถิ่นเช่นแอพที่ใช้ตัวเลือกGNOME-Print API หรือไฟล์การพิมพ์โดยตรงพร้อมlpr -oตัวเลือกสิ่งอำนวยความสะดวกการพิมพ์จะสามารถควบคุมปลายทางเครื่องพิมพ์ที่แท้จริงได้มากขึ้น ตัวอย่างเช่นสามารถเลือกถาดหรือการพิมพ์สองด้านโดยเฉพาะได้ หากคุณมีไฟล์ PPD ที่ถูกต้องสำหรับเครื่องพิมพ์ที่ติดตั้งบนเซิร์ฟเวอร์ CUPS ตัวเลือกเหล่านี้ควรทำงานจากไคลเอนต์โดยไม่ต้องให้ไคลเอ็นต์ติดตั้งซอฟต์แวร์ไดรเวอร์เพิ่มเติม

แก้ไข:ในกรณีของคุณฉันคิดว่าปัญหาอาจเป็นได้ว่า LBP810 เป็น winprinter และไม่เคยมีไดรเวอร์ Linux ที่ผลิตมาให้ ทางออกที่ดีที่สุดของคุณอาจเป็นเครื่องพิมพ์ที่แตกต่างกันซึ่งสามารถทำได้อย่างถูกถ้าคุณเข้าใกล้

เครื่องพิมพ์เลเซอร์มือสองราคาถูกมากใน eBay และคุณสามารถรับ Laserjet 4100 หรือสิ่งที่คล้ายกันประมาณ 100 USDขึ้นอยู่กับตำแหน่งของคุณ เลเซอร์ HP ระดับกลางทั้งหมดรองรับ Postscript หรือ PCL5 / 6 และจะเล่นได้ดีกับ Linux และ CUPS คุณควรมีปัญหาเล็กน้อยในการทำให้สิ่งเหล่านี้ใช้งานได้และสิ่งที่ใช้มีราคาถูกมาก


คุณบอกว่าเมื่อติดตั้ง PPD บนเซิร์ฟเวอร์ CUPS ไคลเอนต์ไม่จำเป็นต้องใช้ไดรเวอร์ สิ่งที่เกี่ยวกับไคลเอนต์ Windows ที่ต้องการไดรเวอร์อย่างชัดเจนเมื่อเพิ่มเครื่องพิมพ์ที่ใช้ร่วมกัน CUPS
CDuv
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.