Konfiguracja drukarki Xerox Phaser 3140
1. Zainstaluj CUPS zgodnie z instrukcją:
https://ubuntu.com/server/docs/service-cups
2. Pobierz sterownik
https://www.support.xerox.com/pl-pl/product/phaser-3140/content/104120
3. Dodaj drukarkę poprzez panel administracyjny (konieczne dodanie użytkownika do grupy lpadmin opisane w linku powyżej). Podczas dodawania drukarki konieczne jest podanie pliku PPD, który znajduje się pod poniższą lokalizacją w pobranym archiwum:
media/P3140_3155/Linux/noarch/at_opt/share/ppd/ph3140.ppd
4. Skopiuj i wypakuj archiwum na docelowym serwerze. Sterownik pochodzi z 2009 roku, więc jest archaiczny. Domyślne właściciel:grupa dla wszystkich plików w archiwum to 500:0. Historycznie „500” było zarezerwowane jako uid pierwszego użytkownika w systemie. Aby mieć poprawne uprawnienia, wypakowuj jako root:
$ sudo tar -xvzf P3140_3155.tar.gz
5. Zweryfikuj uprawnienia:
$ ls -la media/P3140_3155/Linux/
total 144
dr-xr-xr-x 5 root root 4096 Jul 6 2009 .
drwxr-xr-x 3 root root 4096 Jan 16 20:11 ..
-r-xr-xr-x 1 root root 3439 Jul 9 2009 Installer.htm
-r-xr-xr-x 1 root root 158 Dec 12 2007 OEM.ini
-r-xr-xr-x 1 root root 3897 Jul 9 2009 check_installation.sh
dr-xr-xr-x 8 root root 4096 Jul 6 2009 i386
-r-xr-xr-x 1 root root 56888 Jul 9 2009 install.sh
dr-xr-xr-x 5 root root 4096 Jul 6 2009 noarch
-r-xr-xr-x 1 root root 56888 Jul 9 2009 uninstall.sh
dr-xr-xr-x 8 root root 4096 Jul 6 2009 x86_64
6. Na tym etapie, w panelu administracyjnym CUPS będzie widnieć komunikat o brakującym filtrze. Należy wykonać następujące polecenie aby skopiować to co trzeba, tam gdzie trzeba:
$ cp --recursive media/P3140_3155/Linux/x86_64/at_root/usr/lib64/cups/ /usr/lib/
7. W panelu administracyjnym zaznacz pozycję „Share printers connected to this system” a następnie kliknij „Change settings”. To zrestartuje cups i załaduje skopiowane we wcześniejszym kroku filtry, a także umożliwi udostępnianie drukarki w usłudze mDNS / Bonjour, z czego korzysta domyślna usługa drukowania w Androidzie.
8. Na tym etapie powinno być możliwe dodanie drukarki po IPP w Windowsie, a drukarka powinna być widoczna na telefonie z Androidem znajdującym się w tej samej sieci. Próba wydruku na telefonie z androidem poskutkuje jednak następującym komunikatem:
Idle - "/var/spool/cups/d00002-001 (offset 61626): input stream is complete but output may still be valid"
9. Sugestia zagrzebana jest w połowie stosunkowo długiego logu wydruku cups:
$ cat /var/log/cups/error_log
..
Xerox_Phaser_3140: error while loading shared libraries: libcupsimage.so.2: cannot open shared object file: No such file or directory
..
10. Bogatszy w tą wiedzę, zainstaluj brakującą bibliotekę:
$ sudo apt install libcupsimage2
11. Ciesz się z drukowania na telefonie, które w sumie działa automagicznie… mógłby powiedzieć ktoś, kto nie musiał sam rozgryzać tego problemu.
PS. Drukarki to dno.