Direct Printing in LPRng
hi, I am using LPRng for printing. What my problem is that the spooler spools the enitre file and then starts printing but i need the printer to start printing while the spooling is going on. What are the configurations do i need to do?? Any idea?? -sankar-
Hello, On Apr 20 05:18 Sankara Narayanan wrote (shortened):
I am using LPRng for printing. What my problem is that the spooler spools the enitre file and then starts printing but i need the printer to start printing while the spooling is going on.
As far as I know this is not possible. But there are so many options for LPRng that I am not sure. Read carefully the LPRng howto which matches to your particular Suse Linux version: file:///usr/share/doc/packages/lprng/LPRng-HOWTO.html Why do you need the printer to start printing while the spooling is going on? In general this is not possible because what should happen when several jobs should be printed at the same time? It is the intrinsic idea of "spooling" that the spooling system seperates job submission from job processing - i.e.: 1. The user submits a job with "lpr" to the spooling system. 2. The spooling system does not process the job but it only stores it in its spooling directory. 3. When the job was completely stored in the spooling directory "lpr" is finished and the user can continue without having to wait until the job is finally printed (the job may have to wait a longer time because other jobs are in the queue). 4. Now another process (lpd worker) is started which does the job processing (i.e. filtering and sending the result to the printer). 5. When a job was completely processed then it is removed from the spooling directory or kept in the spooling directory (depending on what was configured for the particular queue). 6. While 4. and 5. is going on the user can query what has happened with the job by using "lpq". Perhaps the "Job Filtering By LPR" may be a workaround for what you want - see the LPRng howto: -------------------------------------------------------------------- The lpr_bounce flag, if present in the printcap entry, will force lpr to process the job using the specified filters and send the outputs of the filters to the remote printer for further processing. -------------------------------------------------------------------- This way the lpr program does all what is needed to process a job. In fact this is job processing without spooling so that the lpr program would "hang" until the job is finally printed. Regards Johannes Meixner -- SUSE LINUX AG, Maxfeldstrasse 5 Mail: jsmeix@suse.de 90409 Nuernberg, Germany WWW: http://www.suse.de/
hi, Thank u for your respose Mr. Meixner. I will try the HOWTO document. This is my scenario, We have linux client (lpd service running) connected to the remote server (Windows). An lpr printer was created at the windows server from there we are trying to print large documents (some 200 Page). Since printer is created at the server, filtering is done at the lpd of the server. Then the lpd running at the client stores the entire document but we have limited free space (6 MB) hence printing of larger document (in our case approx. 25 page MS word document). If the lpd at the client is capable of getting the job in a phased manner or if it could print while spooling we could print large documents. If u have any idea pls suggest me. regards sankar ----- Original Message ----- From: "Johannes Meixner" <jsmeix@suse.de> To: <suse-linux-e@suse.com> Sent: Tuesday, April 20, 2004 1:32 PM Subject: Re: [SLE] Direct Printing in LPRng
Hello,
On Apr 20 05:18 Sankara Narayanan wrote (shortened):
I am using LPRng for printing. What my problem is that the spooler
spools
the enitre file and then starts printing but i need the printer to start printing while the spooling is going on.
As far as I know this is not possible. But there are so many options for LPRng that I am not sure. Read carefully the LPRng howto which matches to your particular Suse Linux version: file:///usr/share/doc/packages/lprng/LPRng-HOWTO.html
Why do you need the printer to start printing while the spooling is going on? In general this is not possible because what should happen when several jobs should be printed at the same time? It is the intrinsic idea of "spooling" that the spooling system seperates job submission from job processing - i.e.: 1. The user submits a job with "lpr" to the spooling system. 2. The spooling system does not process the job but it only stores it in its spooling directory. 3. When the job was completely stored in the spooling directory "lpr" is finished and the user can continue without having to wait until the job is finally printed (the job may have to wait a longer time because other jobs are in the queue). 4. Now another process (lpd worker) is started which does the job processing (i.e. filtering and sending the result to the printer). 5. When a job was completely processed then it is removed from the spooling directory or kept in the spooling directory (depending on what was configured for the particular queue). 6. While 4. and 5. is going on the user can query what has happened with the job by using "lpq".
Perhaps the "Job Filtering By LPR" may be a workaround for what you want - see the LPRng howto: -------------------------------------------------------------------- The lpr_bounce flag, if present in the printcap entry, will force lpr to process the job using the specified filters and send the outputs of the filters to the remote printer for further processing. -------------------------------------------------------------------- This way the lpr program does all what is needed to process a job. In fact this is job processing without spooling so that the lpr program would "hang" until the job is finally printed.
Regards Johannes Meixner -- SUSE LINUX AG, Maxfeldstrasse 5 Mail: jsmeix@suse.de 90409 Nuernberg, Germany WWW: http://www.suse.de/
-- Check the headers for your unsubscription address For additional commands send e-mail to suse-linux-e-help@suse.com Also check the archives at http://lists.suse.com Please read the FAQs: suse-linux-e-faq@suse.com
Hello, On Apr 21 03:11 Sankara Narayanan wrote (shortened):
This is my scenario, We have linux client (lpd service running) connected to the remote server (Windows). An lpr printer was created at the windows server from there we are trying to print large documents (some 200 Page). Since printer is created at the server, filtering is done at the lpd of the server. Then the lpd running at the client stores the entire document but we have limited free space (6 MB) hence printing of larger document (in our case approx. 25 page MS word document).
As far as I know there is no reasonable solution except to provide much more space for spooling - only 6 MB is far too small. There must be space for several jobs because otherwise several Windows machines could not print at the same time. Regarding limited spool space see "Minimum Spool Queue Free Space" in the LPRng HOWTO but note that there must be at least spool space for one job and that "If there is not enough space then the job is rejected" which is probably not what the user wants but this is better than a crashed lpd because of no disk space. In particular in your scenario the "Job Filtering By LPR" is no possible workaround because the client doesn't filter at all. Regards Johannes Meixner -- SUSE LINUX AG, Maxfeldstrasse 5 Mail: jsmeix@suse.de 90409 Nuernberg, Germany WWW: http://www.suse.de/
participants (2)
-
Johannes Meixner
-
Sankara Narayanan