310 likes | 404 Views
ML-2010 Series training April 200 5. Contents. Introduction to Samsung Linux Driver Elements of Linux Printing Typical Printing Systems Linux Print Package Structure of LPP Printing Front-end Linux LPR Filters I/O Backend Installer Configuration Tool. Contents. Trouble Shooting
E N D
ML-2010 Seriestraining April 2005
Contents • Introduction to Samsung Linux Driver • Elements of Linux Printing • Typical Printing Systems • Linux Print Package • Structure of LPP Printing • Front-end Linux LPR • Filters • I/O Backend • Installer • Configuration Tool
Contents • Trouble Shooting • Install/Uninstall Problem • N/W printing problem • USB problem • Directory Accessibility • Log messages • Ghostscript check • CUPS version check • Printing from Text editors
Elements of Linux Printing • Application • All applications generate Postscript document to print. • Lpr • Interface command for printing. • Request printing job to LPD server daemon. • Filters • Converts the postscript documents to appropriate printing languages. (PS, PCL, GDI) • I/O to device • parallel, USB, N/W,…etc.
Typical Printing Systems • BSD LPR • Line Printer Spooler is created by Berkeley Software Distribution. • Classic unix printing system. • LPRng • Enhancement of lpr. Job moving among queues. • CUPS • Based on IPP. Using single daemon. • Can print Text, Image, and HP-GL/2 documents.
Samsung Linux Driver • Components • Installer : GUI/Semi-graphical • Linux LPR : feature selection UI • linux-config : configuring printers • Ghostscript : rasterizing utility • Printing Systems : automatic detection • If there is no printing system on the user’s PC, Installer Installs CUPS printing system. • Linux Printing Solution • LPP(Linux Print Package) is a solution package of printing.
Structure of LPP Printing Application LLPR File GDIprint PStoPS Ghostscript GDI filter I/O Backend imagetoPS Pclprint texttoPS PStoPS Ghostscript I/O Backend LPP Pipeline hpgltoPS PJLHDR PStoPS I/O Backend
Front-end Linux LPR • LLPR main Samsung ML-2010 Series (SPL II) Samsung ML-2010 Series (SPL II)
Front-end Linux LPR • Properties
Front-end Linux LPR • Properties
Front-end Linux LPR • Properties
Filters • texttops, imagetops, hpgltops • Each file format is converted to PS • PStoPS • N-up, Image, Orientation, Collate, and Page selection • Ghostscript • PS will be converted to PCL or raw bitmap • pjlhdr/pclprint/gdiprint • I/O Backend • Smbprint, ippprint, socketprint
I/O Backend • Local Devices • /dev/lp0, /dev/usb • File, Special device (kernel driver module) • Remote LPD • IPP • port 631 • Socket • port 9100 • Samba • Shared Printer attached to MS Windows PC.
Installer • Detecting Environment • OS: Version, Library, X-Window • Priniting System • Copying • Check & Rescue • Uninstall
Configuration Tool • linux-config
Configuration Tool • Add Printer Wizard
Install/Uninstall Problem • Autorun • Autorun feature does NOT always work. • If the user’s linux OS doesn’t support this feature or if the user disables it, autorun will not work. • Finding CD • Be a ‘root’ user • $ su • Password: • # whoami • Root
Install/Uninstall Problem • Mount CD-ROM • # mount /dev/cdrom /mnt/cdrom • # ls –l /mnt/cdrom • Execute installer manually • #/mnt/cdrom/autorun • If graphical installer is not executed • Enable access to X-server from other users. • $ xhost + (You must command as login user.) • access control disabled, clients can connect from any host • After that, be a root user and follow above steps.
Install/Uninstall Problem • If uninstaller can’t remove directories • Remove ‘core’ files using ‘force’ option. • # ls /usr/local/linuxprinter • # rm –rf /usr/local/linuxprinter • If previous configuration makes LPP got confused • Remove all the configuration files • # rm –rf /root/.linux* • # rm /etc/linuxprint.cfg
N/W printing problem • Acceptance setup from server • BSD LPR system : /etc/hosts.lpd • Add the ip address or names of client PC to allow them to print. • Only one between ip or name should be added. • LPRng system : /etc/lpd.perms • Uncomment “ACCEPT” lines, and add “#” character to make “REJECT” lines as comment.
N/W printing problem • CUPS system : /etc/cups/cupsd.conf • Add allow list to this file. … <Location /> Order Deny, Allow Deny From All Allow From 127.0.0.1 Allow From 168.214.13.* </Location> …
N/W printing problem • Restart server daemon • LPR/LPRng System • # /etc/init.d/lpd restart • or • # /etc/rc.d/init.d/lpd restart • CUPS System • # /etc/init.d/cups restart • or • # /etc/rc.d/init.d/cups restart
N/W printing problem • Check if the server allows to print • Enter the following commands as root in one single line: • If you do not have netcat, install the package "netcat". # echo -en "\002$QUEUE\n" | netcat -w $TIMEOUT -p 721 $HOST 515 | tr '\000' '0' • replace $QUEUE with the queue on the remote host • replace $TIMEOUT with '2' for a two seconds timeout • replace $HOST with the name or IP of the remote host • If you receive a single '0' the remote host accepts a print job from your local machine. • Otherwise you may get an error message.
N/W printing problem • If you don't receive a single '0' or if you get an error message the remote lpd doesn't accepts a print job from your local host. # echo -e "\004$QUEUE” | netcat -w $TIMEOUT -p 722 $HOST 515 • to get a long status message about the queue on the remote host.
N/W printing problem • Printing to Windows shared printers • Check if samba-client is installed. • # rpm –qa|samba, # rpm –qa|grep smbclient • # smbclient //server/’shared printer name’ • N/W status check • # ping print server ip address • # lsmod : List loaded kernel modules. • # modproben/w driver module : Insert the driver module. • # ifup eth0 : This will bring up ethernet adaptor.
USB problem • If can’t print to USB devices # lsmod Module size Used by printer 6084 0 (unused) usb-uhci 22872 0 (unused) usbcore 55680 0 [printer usb-uhci] • If there is no printer module, # modprobe printer # ls –l /dev/usb/lp0 crw-r--r-- 1 root 180, 0 Jun 25 04:30 /dev/usb/lp0 • If there is not lp0 device, # mknod /dev/usb/lp0 c 180 0
Directory Accessibility • Check Accessibility • Printing daemon should be accessible to all the files and directory related to printing. • /dev/lp0 or /dev/usb/lp0 • User defined destination (or file) • /etc/printcap, /var/spool/lpd, /var/spool/lpd/lp • How to fix • # chmod 777 filename or directory (not recommended) • # checkpc –f ( LPRng Only)
Log messages • Change into debug mode • Add debug option to /etc/linuxprint.cfg <xml version=“1.0”?> <linux root=“/usr/local/linuxprinter” system=“bsd”> <option name=“debug” value=“yes”/> … </linux> • Location of log files • /tmp/lpp-filter.dbg • /var/log/cups/error_log (CUPS only)
Ghostscript check • Check if Ghostscript work properly • Ghostscript is main part of LPP when using PCL or GDI printers. • If GS can’t render the PS document correctly, printed output will be corrupted. • # gs –v : checking GS version • # gv MyDocument.ps : check if gs can render the PS document. This will look like a preview.
CUPS version check • Older CUPS problems • CUPS which is older than 1.1.10 includes many bugs. • LPP provides CUPS as rpm packages and upgrade or install recent CUPS automatically if needed. # rpm –q cups cups-1.1.14-0 If the installed cups is older than 1.1.10 # rpm –Uvh /mnt/cdrom/cups/each linux/cups*
Printing from Text editors • Direct printing from text editors • Text editor generate simple ascii text format • Print command should be changed for the text output to be changed into Postscript document by using enscript • lpr %s -> enscript %s • This problem is caused because LPP can’t recognize data type when it is transferred from standard input pipeline.