Mencetak di Linux itu mudah, tetapi terkadang terasa seperti banyak pekerjaan untuk meluncurkan aplikasi, membuka file, menemukan Cetak seleksi di menu, klik tombol konfirmasi, dan seterusnya. Saat Anda pengguna terminal Linux, Anda sering ingin melakukan tindakan kompleks dengan pemicu sederhana. Pencetakan itu rumit, dan tidak ada yang sesederhana lpr
perintah.
Cetak menggunakan perintah lpr
Untuk mencetak file dari terminal Anda, gunakan lpr
perintah:
$ lpr myfile.odt
Jika gagal, Anda perlu menyetel printer default atau menentukan printer secara manual.
Menyetel printer default
Menurut salinan manual Berkeley 4.2 saya yang sudah usang yang dicetak pada tahun 1984, lpr
perintah membuat paginasi dan mengirim file ke spool printer, yang mengalirkan data ke sesuatu yang disebut printer baris .
Saat ini, lpr
. yang sebenarnya perintah tidak cukup karena komputer modern cenderung memiliki akses ke beberapa printer, dan tentu saja ke printer yang jauh lebih kompleks daripada printer garis dot-matrix. Sekarang ada subsistem, yang disebut Common Unix Printing System (CUPS), untuk melacak semua printer yang Anda ingin komputer Anda akses, driver mana yang harus digunakan komputer Anda untuk berkomunikasi dengan setiap printer, printer mana yang digunakan secara default, dan segera. lpr.cups
atau lpr-cups
perintah, dibundel dengan CUPS dan biasanya di-symlink ke lpr
, memungkinkan Anda untuk mencetak dari terminal dengan merujuk konfigurasi Common Unix Printing System (CUPS) Anda terlebih dahulu.
Untuk mencetak file dengan lpr
, Anda harus menyetel printer default terlebih dahulu. Anda dapat mengatur printer default di pengaturan printer sistem Anda:
Sebagai alternatif, Anda dapat menandai printer sebagai default dengan lpadmin
perintah:
$ sudo lpadmin -d HP_LaserJet_P2015_Series
$ lpstat -v
device for HP_LaserJet_P2015_Series: ipp://10.0.1.222:631/printers/HP_LaserJet_P2015_Series
Menetapkan tujuan default dengan variabel lingkungan
Anda tidak diizinkan menyetel printer default Anda sendiri pada sistem yang tidak memiliki akun admin karena mengubah tujuan cetak dianggap sebagai tugas istimewa. Sebelum lpr
mereferensikan CUPS untuk suatu tujuan, ia menanyakan sistem Anda untuk PRINTER variabel lingkungan.
Dalam contoh ini, HP_LaserJet_P2015_Series
adalah nama yang dapat dibaca manusia yang diberikan ke printer. Setel PRINTER ke nilai itu:
$ PRINTER=HP_LaserJet_P2015_Series
$ export PRINTER
Setelah PRINTER variabel telah ditetapkan, Anda dapat mencetak:
$ lpr myfile.pdf
Dapatkan daftar printer yang terpasang
Anda dapat melihat semua printer yang menerima pekerjaan cetak dan yang terpasang ke sistem Anda dengan lpstat
perintah:
$ lpstat -a
HP_LaserJet_P2015_Series accepting requests since Sun 1 Aug 2021 10:11:02 PM NZST
r1060 accepting requests since Wed 18 Aug 2021 04:43:57 PM NZST
Mencetak ke printer sembarang
Setelah Anda menambahkan printer ke sistem Anda, dan sekarang Anda tahu cara mengidentifikasinya, Anda dapat mencetak ke salah satu dari mereka, apakah Anda memiliki tujuan default yang ditetapkan atau tidak:
$ lpr -P HP_LaserJet_P2015_Series myfile.txt
Bagaimana printer didefinisikan
CUPS memiliki front-end yang mudah digunakan yang dapat diakses melalui browser web seperti Firefox. Meskipun menggunakan browser web sebagai antarmuka penggunanya, sebenarnya layanan ini berjalan secara lokal di komputer Anda (lokasi yang disebut localhost ) pada port 631. CUPS mengelola printer yang terpasang ke komputer Anda, dan menyimpan konfigurasinya di /etc/cups/printers.conf
.
printers.conf
file terdiri dari definisi yang merinci perangkat pencetakan yang dapat diakses komputer Anda. Anda tidak dimaksudkan untuk mengeditnya secara langsung, tetapi jika Anda melakukannya, maka Anda harus menghentikan cupsd
daemon dulu.
Entri tipikal terlihat seperti ini:
<Printer r1060>
Info Ricoh 1060
Location Downstairs
MakeModel Ricoh Aficio 1060 - CUPS+Gutenprint v5.2.6
DeviceURI lpd://192.168.4.8
State Idle
StateTime 1316011347
Type 12308
Filter application/vnd.cups-raw 0 -
Filter application/vnd.cups-raster 100 rastertogutenprint.5.2
Accepting Yes
Shared No
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer
</Printer>
Dalam contoh ini, nama printer adalah r1060
, pengidentifikasi yang dapat dibaca manusia untuk Ricoh Aficio 1060.
MakeModel atribut ditarik dari lpinfo
perintah, yang mencantumkan semua driver printer yang tersedia di sistem Anda. Dengan asumsi Anda tahu bahwa Anda memiliki Ricoh Aficio 1060 yang ingin Anda cetak, maka Anda akan mengeluarkan perintah ini:
$ lpinfo -m | grep 1060
gutenprint.5.2://brother-hl-1060/expert Brother HL-1060 - CUPS+Gutenprint v5.2.11
gutenprint.5.2://ricoh-afc_1060/expert Ricoh Aficio 1060 - CUPS+Gutenprint v5.2.11
Lebih banyak sumber daya Linux
- Lembar contekan perintah Linux
- Lembar contekan perintah Linux tingkat lanjut
- Kursus online gratis:Ikhtisar Teknis RHEL
- Lembar contekan jaringan Linux
- Lembar contekan SELinux
- Lembar contekan perintah umum Linux
- Apa itu container Linux?
- Artikel Linux terbaru kami
Perintah ini mencantumkan driver relevan yang telah Anda instal.
MakeModel adalah setengah terakhir dari hasil. Dalam contoh ini, Ricoh Aficio 1060 - CUPS+Gutenprint v5.2.11
.
URI Perangkat atribut mengidentifikasi di mana printer ditemukan di jaringan (atau lokasi fisik, seperti port USB). Dalam contoh ini, DeviceURI adalah lpd://192.168.4.8
karena saya menggunakan lpd
(line printer daemon) protokol untuk mengirim data ke printer jaringan. Pada sistem yang berbeda, saya memasang HP LaserJet dengan kabel USB, jadi DeviceURI apakah DeviceURI hp:/usb/HP_LaserJet_P2015_Series?serial=00CNCJM26429
.
Mencetak dari terminal
Mengirim pekerjaan ke printer adalah proses yang mudah, selama Anda memahami perangkat yang terpasang ke sistem Anda dan cara mengidentifikasinya. Mencetak dari terminal cepat, efisien, dan mudah ditulis atau dilakukan sebagai pekerjaan batch. Cobalah!