CUPS – Terminologi Pencetakan dan Pemindaian

Brandon Nielsen, Zdenek Dohnal Versi F31 onwards Last review: 2021-06-16

Pencetakan

Antrian cetak

Unit abstraksi dalam CUPS untuk sebuah printer – memiliki URI perangkat yang mewakili koneksi ke perangkat, dan dapat digunakan dengan driver klasik (berkas PPD dari paket lain) atau tanpa driver (pencetakan tanpa driver). Entri yang terlihat di dialog dan pengaturan cetak adalah antrian cetak tersebut. Antrian ini dapat bersifat permanen atau sementara.

Antrian cetak permanen

Antrian dengan driver klasik atau antrian cetak tanpa driver yang perlu dibagikan lebih lanjut di jaringan.

Antrian cetak sementara

Antrian yang tidak perlu dipasang sama sekali – mereka muncul selama dialog cetak dan menghilang setelah pencetakan berhasil dilakukan. Mereka bergantung pada pencetakan tanpa driver.

Antrian CUPS jarak jauh

Antrian pada mesin lain, tempat proses cupsd lain berjalan, bukan pada mesin lokal. Biasanya ditemukan dalam solusi perusahaan, di mana printer tidak berada di jaringan yang sama dengan pengguna atau jika admin menginginkan pemantauan terpusat untuk semua printer. Dalam solusi seperti itu, pengguna mengatur cups-browsed untuk memasang antrian CUPS jarak jauh sebagai antrian lokal melalui direktif BrowsePoll, atau memasang antrian tertentu melalui GNOME. Ada solusi untuk mengarahkan ulang pesan mDNS yang diiklankan oleh server CUPS ke jaringan pengguna, tetapi hal ini belum berhasil dikonfigurasi dengan benar.

Driver klasik

Ini adalah biner dan berkas PPD yang perlu dipasang agar perangkat dapat berfungsi. Ini merupakan cara lama dalam mendukung perangkat, yang akan dihapus di masa depan.

Pencetakan tanpa driver (nirkabel/ethernet)

Sebagian besar perangkat modern (2010 ke atas) mematuhi standar AirPrint, Mopria, atau IPP Everywhere, yang berarti mereka tidak memerlukan driver klasik untuk dapat mencetak. Perangkat ini memiliki IPP (Internet Printing Protocol) versi 2.0 ke atas di dalamnya, mampu “mengiklankan” dirinya melalui mDNS, dan mendukung format dokumen seperti PDF, PCLm, JPEG, Apple Raster, atau PWG Raster.

Ada beberapa prasyarat yang harus dipenuhi dalam sistem operasi agar dapat menggunakan fitur tanpa driver:

  • avahi-daemon harus berjalan

  • harus ada penyelesai alamat ‘.local’ yang aktif – systemd-resolved atau nss-mdns

  • perangkat itu sendiri harus memiliki port IPP (631) dan Bonjour/MDNS diaktifkan

  • IPP dan MDNS harus diaktifkan di firewall

Cara kerja pencetakan tanpa driver secara sederhana:

  • CUPS mendeteksi printer melalui pesan mDNS menggunakan Avahi

  • CUPS mengetahui kemampuan printer melalui IPP

  • jika ada pekerjaan cetak, CUPS menyiapkan rantai filter untuk mengonversi berkas yang masuk menjadi format dokumen yang dipahami printer (Apple Raster, PDF, PWG Raster, PCLm, JPEG)

Jika diperlukan, berkas PPD dihasilkan oleh pembuat PPD dalam CUPS atau oleh biner driverless.

Salah satu fitur yang menggunakan pencetakan tanpa driver adalah antrian sementara CUPS.

Lihat panduan untuk memeriksa apakah printer Anda mendukung pencetakan tanpa driver.

Pencetakan menggunakan driver

Pencetakan ini mirip dengan pencetakan tanpa driver dalam hal penyiapan rantai filter, tetapi:

  • dapat menggunakan fungsionalitas mDNS dan IPP yang terbatas atau tidak menggunakannya sama sekali

  • semua informasi tentang kemampuan perangkat diambil dari berkas PPD (Postscript Printer Description)

  • dapat menggunakan filter khusus dan komunikasi khusus dengan perangkat (tergantung pada driver)

Kelemahan dari pendekatan ini adalah bergantung pada driver pihak ketiga, Anda selalu harus memasang antrian permanen untuk itu, dan metode ini akan ditinggalkan di masa depan.

Antrian mentah

Tidak ada filter yang dijalankan oleh CUPS jika Anda mencetak ke antrian seperti ini, data dikirim sebagaimana adanya ke tujuan, tanpa opsi apa pun diterapkan oleh CUPS – terlepas dari format dokumen yang masuk. Diperlukan agar aplikasi yang Anda gunakan untuk mencetak mengirimkan data siap-cetak (dalam format yang benar, dengan semua opsi yang dipilih telah diterapkan) atau tujuan telah disetel ke pengaturan yang diinginkan (misalnya printer/server cetak disetel untuk melakukan duplex dua sisi panjang dengan pengaturan grayscale, sehingga setiap dokumen yang dicetak akan menggunakan pengaturan ini dan pengguna tidak akan dapat mengubahnya melalui aplikasi).

Pendekatan ini biasanya digunakan untuk mencetak ke printer label lama melalui aplikasi tertentu, atau di masa lalu, untuk mencetak ke antrian CUPS jarak jauh. Karena CUPS tidak memiliki cara untuk memberikan pengalaman pengguna yang umum (mengetahui properti printer, mengonversi berbagai format dokumen ke format yang diterima printer, mengatur opsi pencetakan) untuk antrian seperti ini, penggunaannya sudah tidak disarankan dan akan dihapus di masa depan (pada CUPS 3.X).

Pencetakan mentah

Pencetakan mentah terjadi jika CUPS menerima berkas dalam format dokumen yang dapat diterima langsung oleh printer, dan CUPS mengenali format tersebut berdasarkan aturan dari basis data MIME-nya. Daemon CUPS tidak menjalankan filter apa pun untuk pekerjaan seperti ini (mungkin hanya membungkus opsi ke dalam paket IPP jika koneksi dengan printer melalui IPP), dengan pengecualian untuk PDF, di mana filter pdftopdf dijalankan untuk menerapkan pengaturan umum seperti penskalaan, rotasi, dan sebagainya. Pencetakan mentah ini terjadi pada antrian cetak dengan driver klasik maupun antrian cetak tanpa driver. Fungsionalitas ini tetap ada di CUPS 3.X.

Perbedaan antara pencetakan mentah dan antrian mentah adalah pencetakan mentah merupakan situasi ketika daemon CUPS menerima berkas dalam format yang dapat diterima printer, sehingga daemon tidak memunculkan filter tambahan untuk pekerjaan tersebut (dengan PDF sebagai pengecualian), dan akan memunculkan filter untuk format dokumen yang tidak dapat diterima langsung oleh printer. Sementara itu, antrian mentah adalah antrian di mana daemon CUPS tidak menjalankan filter apa pun dalam kondisi apa pun, dan berperilaku seperti saluran (pipeline) di Unix.

Aplikasi printer

Biner yang menyediakan dukungan untuk perangkat lama yang tidak mampu mematuhi standar tanpa driver. Gagasan utamanya adalah mereka dapat menerima driver lama, kemudian mengiklankan dirinya sebagai perangkat yang mampu melakukan pencetakan tanpa driver. Dengan demikian, versi baru CUPS akan dapat mendeteksi mereka dan pengguna dapat mencetak melalui mereka seolah-olah itu adalah antrian sementara. Aplikasi printer yang saat ini tersedia di Fedora adalah ippeveprinter (bagian dari CUPS – lihat paket cups-printerapp) dan lprint (menyediakan dukungan untuk perangkat yang memerlukan pencetakan mentah – umumnya printer label). Aplikasi printer lain seperti ps-printer-app, ghostscript-printer-app, hplip-printer-app, dan gutenprint-printer-app saat ini tersedia sebagai SNAP hingga cups-filters 2.0 dirilis dan dikemas. Kecuali ippeveprinter, aplikasi printer ditulis menggunakan pustaka PAPPL, sehingga aplikasi printer seperti ini menyediakan antarmuka CLI dan Antarmuka Web untuk interaksi pengguna.

Pencetakan tanpa driver (USB)

Pencetakan tanpa driver memiliki varian untuk perangkat yang terhubung melalui USB – ini dicakup oleh standar 'IPP over USB'. Agar dapat berfungsi, Anda memerlukan paket 'ipp-usb', yang akan mendaftarkan perangkat dengan Avahi di localhost – kemudian perangkat USB akan tampak seperti perangkat nirkabel/ethernet. Proses pendeteksian/pencetakan terlihat sama seperti perangkat nirkabel/ethernet dengan dukungan tanpa driver.

Lihat panduan untuk memeriksa IPP-over-USB.

Pemindaian

Pemindaian klasik (melalui hplip dan sane-backends)

Pemindaian klasik berfungsi melalui backend, yaitu biner untuk komunikasi dengan perangkat. Terdapat beberapa backend, biasanya dibuat melalui rekayasa balik dari komunikasi antara pemindai dan driver MS Windows. Tidak ada backend klasik yang menerapkan protokol yang kompatibel dengan sebagian besar perangkat yang tersedia.

Pemindaian tanpa driver

Pemindaian tanpa driver menggunakan backend sane-escl (tidak dibangun di Fedora) dan sane-airscan untuk berkomunikasi dengan perangkat yang lebih baru. Perangkat baru ini biasanya mendukung eSCL (berdasarkan protokol AirScan oleh Apple) atau WSD (Web Services for Devices oleh Microsoft), yang dapat digunakan oleh sane-airscan.

Terkait pemindaian melalui USB, persyaratannya sama seperti pencetakan. Perangkat harus mendukung standar tanpa driver IPP over USB, dan paket ipp-usb harus dipasang agar dapat melakukan pemindaian tanpa driver melalui USB. Paket ini diperlukan karena membuat antarmuka tanpa driver di atas antarmuka USB yang digunakan oleh sane-airscan untuk berkomunikasi tanpa driver dengan perangkat.