CUPS – Cara Mengatasi Masalah Pencetakan
Jika Anda mengalami masalah dengan pencetakan, silakan periksa halaman common bugs sebelum melaporkan bug. Jika masalah yang Anda alami tidak tercantum di sana atau tidak ada solusi alternatif yang membantu, silakan pertimbangkan untuk mengirimkan laporan bug melalui filing a bug report untuk membantu kami memperbaiki kinerja Fedora di perangkat keras Anda.
Mengidentifikasi area masalah Anda
Masalah pencetakan dapat cukup kompleks, dan pemelihara mungkin memerlukan kerja sama aktif atau data yang cukup dari pelapor untuk membantu pemelihara memahami dan (jika bukan masalah yang spesifik pada hardware) mereproduksi masalah tersebut. Oleh karena itu, mohon bersabar dan berusaha semaksimal mungkin untuk memperkecil masalah agar pemelihara dapat mengatasinya.
Dapat terdapat:
-
masalah dalam melihat atau terhubung ke printer (dapat disebabkan oleh masalah pada backend CUPS, masalah Avahi, masalah libusb, atau masalah cups-browsed),
-
masalah aksesibilitas (pengaturan yang salah/benar dalam cupsd.conf atau interpretasi yang buruk oleh daemon cupsd, kerja sama yang buruk dengan NIS, SSSD…),
-
cetak menggunakan Samba (masalah dengan backend SMB, yang merupakan bagian dari Samba) atau dengan Samba yang diotentikasi melalui Kerberos (samba_krb5_printing),
-
masalah dengan filter yang digunakan saat mengonversi dokumen ke format yang didukung oleh printer, yang memengaruhi cara atau apakah dokumen akan dicetak (masalah dengan filter - pdftops, pdftopdf, pstops, bannertopdf, dll. - atau masalah dengan file biner atau perpustakaan yang digunakan oleh filter - libgs, qpdf, poppler, dll.),
-
masalah dengan berkas Deskripsi Printer PostScript, yang merupakan cara lama untuk mendefinisikan kemampuan printer seperti ukuran halaman yang didukung, batas halaman, dan sebagainya…
Tanpa menyebutkan kemungkinan keterbatasan atau masalah pada firmware atau hardware printer itu sendiri, sehingga segala jenis data atau penyempitan masalah sangat dihargai.
Langkah terbaik adalah melampirkan berkas dengan log yang dijelaskan di bawah ini.
Pencatatan CUPS
Semua pencatatan CUPS secara default diarahkan ke journal sejak Fedora 28 (sebelum Fedora 28, pencatatan error_log secara default juga diarahkan ke journal).
Kita perlu mendefinisikan dua cara berbeda untuk menangkap log CUPS yang terkait dengan insiden - satu jika antrian cetak yang rusak tidak disediakan oleh HPLIP dan yang lain jika disediakan oleh HPLIP. Perbedaan keduanya terletak pada opsi filter journald - jika Anda menggunakan antrian non-HPLIP untuk debugging, Anda dapat mengumpulkan log dari unit systemd CUPS (dengan opsi '-u cups'), karena semua pesan kesalahan diarahkan dengan benar ke logging unit systemd CUPS dan dapat diakses dalam output setelah penyaringan unit. Perpustakaan HPLIP tidak diimplementasikan untuk melakukan hal yang sama (pengembang hulu tidak merespons untuk menerima perbaikan potensial ke dalam proyek dan masalahnya tidak cukup kritis untuk menarik tambalan hilir selamanya), sehingga pesan-pesan mereka tidak ditandai untuk unit sistemd CUPS dan disaring setelah memanggil journald dengan '-u cups'. Untuk antrian semacam itu, log journald tanpa penyaringan diperlukan.
|
Catatan jurnal journald yang terkait dengan insiden tanpa penyaringan hanya diperlukan untuk antrian cetak HPLIP (URI perangkatnya dimulai dengan hp://) dan tidak diinginkan untuk antrian lain, karena dapat sulit dibaca dalam kasus yang lebih besar. Harap lampirkan catatan jurnal journald yang terkait dengan insiden hanya jika diperlukan. |
Lokasi pencatatan CUPS
Pencatatan CUPS secara default disimpan di jurnal sistem, tetapi pencatatan ke berkas dapat diatur di /etc/cups/cups-files.conf dengan perintah ErrorLog. Jika Anda ingin mengubah pengaturan default, nama berkas pencatatan tidak relevan, tetapi disarankan untuk menempatkan berkas tersebut di jalur /var/log/cups, jika tidak, SELinux akan memblokir akses cupsd ke berkas tersebut.
Menyetel pencatatan ke berkas memiliki kelemahan berikut (tanpa operasi tambahan):
-
tidak dapat mendapatkan hanya log yang terkait dengan suatu tugas tanpa harus menghubungkan perintah tambahan
-
tidak dapat mendapatkan log untuk rentang waktu yang ditentukan tanpa menggabungkan perintah tambahan
Untuk menangkap log yang terkait dengan insiden, perintah tail -f dapat digunakan, misalnya:
tail -f /var/log/cups/error_log
Aktifkan pencatatan debug CUPS
Aktifkan informasi debugging lengkap dengan:
$ cupsctl LogLevel=debug2
Catatan tugas CUPS
|
Jika masalah muncul saat Anda mengirim dokumen untuk dicetak atau saat Anda mencoba melakukannya, catat log untuk tugas ini. Jika log tugas tersedia, pengirimannya WAJIB. |
Siapkan CUPS untuk pencatatan tugas
Untuk dapat melihat riwayat tugas spesifik, silakan aktifkan:
PreserveJobFiles Yes
di berkas /etc/cups/cupsd.conf dan jalankan ulang layanan CUPS. Jangan lupa untuk menghapus baris tersebut setelah selesai melakukan debugging. Perintah lpstat -W all tampaknya kosong setelah mencetak jika Anda tidak mengaktifkan direktif tersebut.
Dapatkan catatan tugas untuk ID tugas tertentu
Untuk menangkap log tugas, Anda perlu mengetahui ID Pekerjaan (JID) dari tugas tersebut - ini adalah angka setelah tanda hubung dalam ID permintaan:
ID Permintaan terlihat seperti ini:
<print_queue_name>-<JID>
dan dapat dilihat di terminal jika Anda mengirim dokumen untuk dicetak menggunakan perintah lp:
$ lp -d <print_queue_name> <file1> ... <fileN> request id is <print_queue_name>-<JID> (N file(s))
Atau saat Anda menampilkan daftar tugas (lihat perintah man lpstat) - tugas terbaru berada di bagian akhir:
$ lpstat -W all ... <print_queue_name>-<JID> <user> 1024 Wed 11 Jan 2017 05:52:19 PM CET
Anda dapat mendapatkan log tugas terbaru secara otomatis (jika Anda telah menginstal awk dan lpstat -W menampilkan semua tugas) dengan cara:
$ journalctl -u cups JID=`lpstat -W all | awk '{print $1}' | awk -F '-' '{print $NF}' | tail -n 1` > cups_job_log
Atau secara manual, jika Anda menemukan JID sendiri:
journalctl -u cups JID=<JID> > cups_job_log
Catatan log cupsd yang terkait dengan insiden (antrian cetak yang rusak tidak didukung oleh HPLIP)
Terkadang kita tidak dapat mengaitkan kesalahan dengan tugas cetak tertentu, sehingga log tugas menjadi tidak efektif. Log cupsd yang terkait dengan insiden diperlukan.
Cara memulai pencatatan log cupsd yang terkait dengan insiden
Di terminal baru/tab terminal, silakan jalankan perintah berikut:
journalctl -f -u cups > cups_whole_log
Cara mendapatkan logging cupsd yang terikat pada insiden
Setelah Anda memicu kondisi kesalahan yang ingin Anda diagnosa, misalnya dengan mencetak sesuatu, coba cari printer menggunakan perintah lpinfo, dll., Anda dapat menghentikan penangkapan log cupsd yang terkait dengan insiden dari langkah di atas dengan menekan <ctrl>+<c>.
Catatan log cupsd yang terkait dengan insiden (antrian cetak yang rusak didukung oleh HPLIP)
Sayangnya, perpustakaan HPLIP tidak mencatat aktivitasnya di unit CUPS dalam jurnal, jadi jika antrian cetak Anda diinstal dengan driver HPLIP (URI perangkatnya dimulai dengan hp://), kami memerlukan catatan jurnal yang terikat insiden.
Cara memulai pencatatan jurnal yang terkait dengan insiden
Di terminal baru/tab terminal, silakan jalankan perintah berikut:
journalctl -f > journal_whole_log
Cara mendapatkan pencatatan jurnal yang terikat pada insiden
Setelah Anda memicu kondisi kesalahan yang ingin Anda diagnosa, misalnya mencetak sesuatu, menjalankan skrip HP, dll., Anda menghentikan pencatatan jurnal insiden yang terikat dari langkah di atas dengan menekan <ctrl>+<c>.
Menonaktifkan pencatatan debug
Silakan lampirkan berkas cups_job_log untuk tugas yang bermasalah, cups_whole_log, atau journal_log jika Anda berhasil merekam log lengkap cupsd selama peristiwa bermasalah tersebut sebagai lampiran dalam laporan bug.
Untuk mematikan informasi debugging, lakukan hal berikut:
$ sudo sed -i 's,LogLevel debug2,LogLevel warn,' /etc/cups/cupsd.conf $ sudo systemctl restart cups
Perintah tambahan untuk bekerja dengan systemd-journald
Lihat pesan log dengan:
journalctl -u cups -e
atau:
journalctl -u cups --since=...
Untuk menyaring pesan yang berkaitan dengan ID tugas tertentu, gunakan:
journalctl -u cups JID=...
(Fitur tab completion akan menampilkan ID tugas mana yang memiliki pesan log)
pencatatan cups-browsed
daemon cups-browsed diperkenalkan di Fedora sekitar versi cups-1.5. Daemon ini dapat memindai siaran Bonjour, siaran CUPS (telah usang), dan server LDAP untuk mencetak, serta membuat atau menghapus antrian lokal yang mengarah ke printer-printer tersebut. Daemon ini juga dapat membuat siaran antrian CUPS lokal, tetapi fitur ini telah ditandai sebagai usang.
Untuk mengaktifkan logging debug, Anda perlu menambahkan:
DebugLogging stderr
menjadi /etc/cups/cups-browsed.conf.
Catatan log akan tersedia di jurnal sistem setelah cups-browsed di-restart.
Pencatatan debug skrip HPLIP
Skrip Python dari HPLIP (misalnya hp-setup, hp-clean, hp-scan) memiliki logging debug yang diarahkan ke deskriptor file kesalahan standar, sehingga logging tersebut tidak tercatat di jurnal. Untuk mendapatkan logging debug tersebut, jalankan skrip dengan parameter -ldebug, misalnya:
$ hp-setup -ldebug -i
dan ulangi masalah tersebut. Kemudian salin pesan dari terminal ke berkas hp_script_log. Mohon lampirkan berkas tersebut ke tiket Bugzilla juga.
Merek dan model printer saya apa?
Setiap printer yang berbeda memiliki ID Perangkat yang spesifik untuk modelnya. Anda dapat menemukannya dengan perintah lpinfo:
su -c "lpinfo -l -v"
Perintah ini menjalankan setiap backend dalam mode penemuan, agar mereka melaporkan perangkat yang dapat dideteksi secara otomatis. Hal ini akan menghasilkan serangkaian blok baris, masing-masing seperti ini:
Device: uri = usb://HP/DESKJET%20990C?serial=U123456789AB
class = direct
info = HP DESKJET 990C
make-and-model = HP DESKJET 990C
device-id = MFG:HEWLETT-PACKARD;MDL:DESKJET 990C;CMD:MLC,PCL,PML;CLS:PRI
NTER;DES:Hewlett-Packard DeskJet 990C;SN:U123456789AB;S:00808880800010032C100000
0C2000000;P:0800,FL,B0;J: ;
location =
Baris yang mengidentifikasi tipe model ini adalah baris panjang yang dimulai dengan “device-id =” (ditampilkan di sini melingkar di tiga baris).
Perhatikan bahwa jika printer Anda tidak dapat terdeteksi secara otomatis, Anda masih dapat menemukan ID Perangkat dengan menjalankan backend yang sesuai menggunakan nama host printer sebagai argumen. Backend usb, parallel, snmp, dan dnssd semuanya berusaha melaporkan ID Perangkat sebenarnya yang diberikan oleh printer.
$ /usr/lib/cups/backend/snmp 10.34.18.3 network socket://10.34.18.3 "HP Color LaserJet CP2025dn" "HP Color LaserJet CP2025dn" "MFG:Hewlett-Packard;CMD:PJL,PML,PCLXL,POSTSCRIPT,PCL;MDL:HP Color LaserJet CP2025dn; CLS:PRINTER;DES:Hewlett-Packard Color LaserJet CP2025dn;MEM:MEM=55MB;COMMENT:RES=600x8;" "HP Color LaserJet CP2025dn"
ID Perangkat dalam hal ini (lihat backend(7)) adalah kolom terakhir sebelum kolom terakhir.
Antrian cetak mana yang tersedia untuk saya?
Antrian pada mesin Anda dapat berupa antrian permanen atau sementara. CUPS mampu menampilkan semua antrian cetak yang tersedia di jaringan lokal (antrian permanen dan sementara) dengan cara:
$ lpstat -e
Untuk antrian permanen, Anda dapat mendapatkan informasi lebih lanjut dengan:
$ lpstat -t
Driver mana yang saya gunakan?
Berkas PPD untuk antrian printer dapat memberitahu Anda driver mana yang sedang digunakan. Anda dapat menggunakan perintah ini untuk mengetahui driver mana yang sedang digunakan:
grep -H '^*NickName:' /etc/cups/ppd/*.ppd
Anda juga dapat mengetahui hal ini menggunakan aplikasi system-config-printer. Klik ganda pada ikon antrian dan periksa kolom “Make and Model”.
Untuk melihat driver yang tersedia, klik tombol Ubah… di sebelah bidang tersebut. Anda mungkin menemukan bahwa mencoba driver lain dapat membantu untuk melihat apakah masalah yang sama muncul.
Model tanpa driver
Sebagian besar printer yang dirilis sejak 2010 mendukung AirPrint atau IPP Everywhere, artinya printer tersebut tidak perlu diinstal untuk berfungsi - perangkat tersebut ditemukan oleh Avahi dan kemampuan cetaknya dikomunikasikan melalui protokol IPP - pada dasarnya, printer tersebut adalah perangkat tanpa driver. Ada dua solusi di Fedora yang mengimplementasikan IPP Everywhere:
-
Model CUPS 'everywhere'
-
cups-filters 'driverless' driver
Model CUPS 'everywhere'
Ini adalah implementasi CUPS dari standar IPP Everywhere, yang tersedia sebagai model printer khusus. Model ini digunakan saat Anda menggunakan antrian sementara CUPS untuk perangkat Anda atau jika Anda menginstal perangkat Anda sebagai model IPP Everywhere di antarmuka web CUPS atau melalui lpadmin (menggunakan opsi -m everywhere).
Karena berkas PPD yang dibuat bergantung pada komunikasi IPP dengan printer, kita memerlukan informasi yang dikumpulkan dari perangkat. Anda dapat menggunakan perintah ipptool untuk itu:
$ ipptool --ippserver ipptool.attr <your_printer_device_uri> get-printer-attributes.test
Lampirkan berkas ipptool.attr ke tiket Bugzilla jika diperlukan.
cups-filters 'driverless' driver
Pengemudi khusus untuk cangkir-saringan yang digunakan untuk menghasilkan PPD sesuai dengan standar IPP Everywhere. Pengemudi ini digunakan jika Anda memilih model tanpa driver selama proses instalasi printer.
Kami juga memerlukan output permintaan get-printer-attributes:
$ ipptool --ippserver ipptool.attr <your_printer_device_uri> get-printer-attributes.test
dan log debug dari driver itu sendiri saat menghasilkan PPD untuk perangkat Anda:
$ driverless -d cat <ipp_device_uri> 2> driverless_debug > created_ppd
Lampirkan semua file yang telah dibuat ke tiket Bugzilla jika diperlukan.
Menemukan di mana letak masalahnya
When a print job is processed it is sent through a chain of filters to convert the file into a format the printer can understand, and then finally sent to a backend, a program which can transport the data to the printer. By slightly changing how you print you can try a different printing path to see if that changes anything. If it works around the problem, you know which area the problem was in — include that information in a bug report so that we can fix it.
Permohonan
Coba cetak dari aplikasi lain untuk melihat apakah masalahnya hilang atau tetap terjadi terlepas dari cara file dicetak. Coba cetak dokumen dari baris perintah menggunakan perintah lp.
Format dokumen
Jika Anda mengalami masalah saat mencetak berkas PDF, coba cetak jenis berkas lain untuk melihat apakah masalahnya terkait dengan proses pencetakan secara umum atau spesifik pada berkas PDF. Coba konversi berkas tersebut ke format lain dan cetak berkas tersebut.
Jika masalah terkait dengan pencetakan berkas teks, coba hapus/pasang ulang paket paps. Paket ini menyediakan filter teks ke PostScript alternatif dari yang disertakan dengan CUPS.
Untuk memeriksa dokumen yang telah dikirim ke CUPS untuk dicetak, aktifkan opsi PreserveJobFiles seperti ini:
cupsctl PreserveJobFiles=yes
Submitted job documents will remain in /var/spool/cups. There are files with two types of names - dXXXXX-YYY and cXXXXX. dXXXXX-YYY is file which goes to CUPS system, unfiltered file - XXXXX is job ID, which is filled with zeros to be 5 characters long, and YYY is sequence number of file in the job. cXXXXX is file which contains printing options for a job specified by job ID in XXXXX. Please attach dXXXXX-YYY to the bug for a job when you experience the issue
Menjalankan filter secara manual
Pengguna yang lebih berpengalaman mungkin ingin mencoba menjalankan filter CUPS secara manual dan memeriksa berkas data pada setiap langkah saat dikonversi antara format yang berbeda. Berikut adalah contoh cara melakukannya untuk antrian gutenprint bernama pqueue dengan halaman uji CUPS yang memiliki tipe MIME khusus, application/vnd.cups-banner:
Pertama, Anda perlu mengetahui alur filter untuk application/vnd.cups-banner → printer/pqueue (tipe MIME output). Anda dapat mengaktifkan debugging, mencetak halaman uji, mendapatkan log tugas CUPS, dan di dalam cups_job_log Anda akan menemukan sesuatu yang serupa dengan:
envp[29]="FINAL_CONTENT_TYPE=printer/pqueue" Started filter /usr/lib/cups/filter/bannertopdf (PID 1111) Started filter /usr/lib/cups/filter/pdftopdf (PID 1112) Started filter /usr/lib/cups/filter/gstoraster (PID 1113) Started filter /usr/lib/cups/filter/rastertogutenprint.5.2 (PID 1114)
atau jalankan
/usr/lib/cups/filter/bannertopdf 1 me '' 1 '' </usr/share/cups/data/testprint >bannertopdf.pdf cupsfilter -e -m printer/pqueue -p /etc/cups/ppd/pqueue.ppd bannertopdf.pdf > /dev/null
dan Anda akan melihat:
INFO: pdftopdf (PID 1111) started. INFO: gstoraster (PID 1112) started. INFO: rastertogutenprint.5.2 (PID 1113) started.
|
Pipa filter ini berasal dari cups-1.6. Untuk cups versi di bawah 1.6, Anda akan melihat bannertops → pstops → pstoraster sebagai gantinya. |
Sekarang Anda dapat menjalankan filter secara manual:
export PPD=/etc/cups/ppd/pqueue.ppd /usr/lib/cups/filter/bannertopdf 1 me '' 1 '' </usr/share/cups/data/testprint >bannertopdf.pdf /usr/lib/cups/filter/pdftopdf 1 me '' 1 '' <bannertopdf.pdf >pdftopdf.pdf /usr/lib/cups/filter/pdftoraster 1 me '' 1 ''<pdftopdf.pdf >out.ras /usr/lib/cups/filter/rastertogutenprint.5.2 1 me '' 1 ''<out.ras >out.prn
Di sini, perintah evince atau okular dapat digunakan untuk memeriksa output setelah dua filter pertama, perintah rasterview dapat digunakan untuk memeriksa output filter ketiga, dan output filter terakhir harus diperiksa secara manual atau dikirim langsung (lpr -oraw out.prn) ke printer.
Pengemudi
Jika Anda memiliki akses ke printer dengan merek/model yang berbeda, mungkin sebaiknya mencoba untuk melihat apakah masalah tersebut terjadi pada kedua printer atau hanya pada salah satunya. Hal ini dapat memberikan petunjuk apakah masalah tersebut disebabkan oleh driver tertentu, atau apakah itu merupakan masalah yang lebih umum.
Meskipun Anda hanya memiliki akses ke satu printer, seringkali ada beberapa pilihan driver yang dapat digunakan untuk model printer tertentu, dan mencoba masing-masing driver secara bergantian dapat membantu dalam mengidentifikasi masalah. Lihat di atas untuk cara melakukannya.
Foomatic
Untuk driver Foomatic, Anda dapat mencoba mengaktifkan debugging Foomatic dengan mengedit berkas /etc/foomatic/filter.conf dan menambahkan baris:
debug: 1
Selanjutnya, saat Anda mencetak tugas ke antrean menggunakan foomatic, proses debugging akan disimpan di /tmp/foomatic-rip.log, dan file input yang diterima oleh foomatic-rip akan berada di /tmp/foomatic-rip.ps.
Backend (transportasi tugas)
Anda mungkin dapat mencoba menggunakan backend yang berbeda. Gunakan system-config-printer, klik dua kali pada ikon antrian printer, lalu klik tombol Change… di sebelah bidang Device URI. Anda mungkin melihat panah ekspander Connection di pojok kanan bawah jendela — klik panah tersebut untuk melihat backend mana yang tersedia. Untuk printer HP yang terhubung melalui USB, biasanya backend hp atau usb dapat digunakan.
Untuk menangkap komunikasi USB:
-
temukan nomor bus di mana perangkat USB terhubung, misalnya:
$ lsusb
Bus 002 Device 010: ID 03f0:012a HP, Inc HP LaserJet M1536dnf MFP
=
-
mulai penangkapan paket USB:
$ sudo tcpdump -i usbmonN -s0 -w usb.pcap
di mana N adalah nomor bus.
Untuk printer jaringan, Anda mungkin memiliki berbagai protokol yang dapat dicoba.
-
socket digunakan untuk HP JetDirect (biasanya port 9100)
-
lpd digunakan untuk berbagi printer gaya lama UNIX.
-
smb digunakan untuk berbagi file CIFS dari sistem Windows.
-
ipp adalah untuk perangkat yang mendukung Internet Printing Protocol (IPP) dan juga untuk server CUPS lainnya. — Anda dapat menangkap lalu lintas IPP dengan perintah
tcpdumpseperti ini (nama antarmuka mungkin berbeda dari p4p1):
tcpdump -n -i p4p1 -U -s0 -w ipp.pcap port ipp
-
bjnp adalah protokol jaringan eksklusif Canon (biasanya port 8611)
Alat konfigurasi
Jika masalah Anda berkaitan dengan pengaturan antrian cetak, cobalah menggunakan salah satu metode lain untuk melakukannya. Ada empat metode yang tersedia:
-
Aplikasi Pengaturan Sistem GNOME 3 (control-center), Pengaturan Sistem > Printer dari GNOME Shell
-
system-config-printer, System > Administration > Printing dari menu GNOME -
antarmuka web CUPS, http://localhost:631/
-
alat baris perintah
lpadmin,lpoptions,cupsctl,cupsaccept,cupsenable, dan sebagainya.
Cerita pengguna
Ada beberapa skenario umum yang sering terjadi saat mengatasi masalah pencetakan. Saya akan menyebutkan beberapa di antaranya beserta langkah-langkah untuk mendapatkan informasi yang diperlukan.
Saya memiliki printer HP dan mengalami masalah dengan skrip HPLIP
Silakan ikuti langkah-langkah yang tercantum dalam bagian-bagian berikut:
-
lampirkan berkas-berkas ke tiket Bugzilla dan nonaktifkan pencatatan debug
-
sediakan nama model printer dan berkas PPD printer dari
/etc/cups/ppd/
Saya memiliki printer HP, telah menginstalnya dengan HPLIP, dan mengalami masalah dengannya
Antrian cetak yang diinstal oleh HPLIP memiliki URI perangkat yang dimulai dengan hp://.
Silakan ikuti langkah-langkah yang tercantum dalam bagian-bagian berikut:
-
picu masalah Anda
-
lampirkan berkas dengan output perintah
lsusb -vdan dari/var/log/ipp-usbjika perangkat terhubung melalui USB -
lampirkan berkas-berkas ke tiket Bugzilla dan nonaktifkan pencatatan debug
-
sediakan nama model printer dan berkas PPD printer dari
/etc/cups/ppd/
Printer saya tidak mencetak dengan benar atau sama sekali, tetapi saya dapat melihat printer tersebut di dialog cetak
Silakan ikuti langkah-langkah yang tercantum dalam bagian-bagian berikut:
-
picu masalah Anda - cetak dokumen spesifik ke antrian cetak spesifik yang Anda alami masalah dengannya
-
lampirkan berkas yang telah dibuat ke tiket dan nonaktifkan pencatatan debug
-
sertakan berkas PPD printer Anda dari
/etc/cups/ppd/jika tersedia -
lampirkan berkas yang ingin Anda cetak
-
beritahu aplikasi apa yang Anda gunakan untuk mencetak
-
sebutkan model printer
-
lampirkan berkas dengan output perintah
lsusb -vdan dari/var/log/ipp-usbjika perangkat terhubung melalui USB
Masalah umum CUPS
Untuk masalah umum - printer tidak ditemukan, segfault - silakan ikuti langkah-langkah di bagian berikut (avahi-daemon harus dijalankan):
-
picu masalah - misalnya, coba cari printer menggunakan perintah
sudo lpinfo -l -v, lakukan tindakan tertentu di antarmuka web - tergantung pada masalah Anda -
lampirkan berkas yang dibuat ke tiket dan nonaktifkan pencatatan debug
-
simpan output dari lpinfo ke dalam berkas dan lampirkan berkas tersebut
-
simpan output dari kedua perintah lpstat ke dalam berkas dan lampirkan berkas tersebut
-
lampirkan berkas dengan output perintah
lsusb -vdan dari/var/log/ipp-usbjika perangkat terhubung melalui USB
Printer saya tidak mencetak dengan benar - saya menggunakan model 'everywhere'
Silakan ikuti langkah-langkah yang tercantum dalam bagian-bagian berikut:
Saya memiliki masalah umum dengan cups-browsed
Silakan ikuti langkah-langkah yang tercantum dalam bagian-bagian berikut:
-
Aktifkan pencatatan cups-browsed, tetapi jangan restart cups-browsed terlebih dahulu.
-
mulai layanan cups-browsed melalui
systemctldan mulai merekam log-nya:
$ journalctl -u cups-browsed -f > cups_browsed_log
-
memicu masalah atau menunggu hingga cups-browsed memicu masalah tersebut sendiri
-
batalkan penelusuran cups dan tangkap log cupsd
-
lampirkan berkas yang dibuat
cups_whole_logdancups_browsed_logke tiket dan nonaktifkan pencatatan debug
Printer yang ditemukan oleh cups-browsed tidak mencetak atau mencetak dengan buruk
Cerita pengguna yang paling sulit - kami perlu mengetahui bagaimana antrian cetak dibuat dan bagaimana perilakunya selama proses pencetakan. Antrian cetak yang ditemukan oleh cups-browsed memiliki URI perangkat yang dimulai dengan implicitclass://.
Silakan ikuti langkah-langkah berikut:
-
Mendapatkan informasi printer dari get-printer-attributes dan berkas PPD
-
Aktifkan pencatatan cups-browsed, tetapi jangan restart cups-browsed terlebih dahulu.
-
mulai layanan cups-browsed melalui
systemctldan mulai merekam log-nya:
$ journalctl -u cups-browsed -f > cups_browsed_queue_creation
-
berikan waktu kepada cups-browsed untuk memproses perangkat yang ditemukan (tergantung pada jumlah perangkat yang ada di jaringan lokal atau jumlah antrian cetak yang disimpan di lokasi yang Anda tentukan dengan direktif
BrowsePoll) -
batalkan cups-browsed dan cupsd log menangkap - simpan file-file tersebut sebagai
cups_queue_creationdancups_browsed_queue_creation
Sekarang kita perlu merekam log selama proses pencetakan:
-
mulai merekam log cups_browsed lagi:
$ journalctl -u cups-browsed -f > cups_browsed_printing
-
picu masalah Anda - cetak dokumen spesifik ke antrian cetak spesifik yang Anda alami masalah dengannya
-
Peroleh log tugas untuk tugas yang baru saja Anda jalankan dan batalkan penangkapan log cups-browsed
-
lampirkan semua berkas log yang telah dikumpulkan
Want to help? Learn how to contribute to Fedora Docs ›