Charles Bradshaw
2004-Mar-11 23:41 UTC
[Samba] Newbe samba confusion - windows to samba to lpd which driver does the translation?
I'm trying hard to understand some very basic samba working. If I'm asking the question in the wrong list could somebody kindly re-direct me. When a print job is sent from a windows machine to a printer on a linux samba server there are a number of 'drivers' (actually just translators) involved: First the windows machine puts the text and or graphics through the windows 'driver' and a job is spooled to the windows queue. At this stage I assume we have printer codes in the spool queue? Next the data is past across the network to a samba spool queue /var/spool/samba. Next the samba server demon picks up this data and passes it to the linux printing system and yet another set of 'drivers' gs lpdomatic hpijs etc. process the data an it is spooled ready to be finally to be passed to an actual device driver /dev/lp0 or whatever. First question is this simplified picture correct? I think it is because I have a working Epson printer setup which works just fine. If so then how on earth is the data not translated twice? Is the 'magic filter' clever enough to identify that raw data is being passed from samba to lpd? Last question I never see anything in /var/spool/samba is this because this is just a buffer? Of have I got it all wrong? Finally where is the big picture documented? I have read the Linus printing HOWTO and the distributed Samba docs. I don't wish to be grumpy but this is all far too deep for understanding no matter how determined. When I eventually get to understand it all I promise to publish a diagram. Thanks for being patient with a geriatric newbe ;} -- Open WebMail Project (http://openwebmail.org)
John H Terpstra
2004-Mar-11 23:48 UTC
[Samba] Newbe samba confusion - windows to samba to lpd which driver does the translation?
On Fri, 12 Mar 2004, Charles Bradshaw wrote:> I'm trying hard to understand some very basic samba working. If I'm asking the > question in the wrong list could somebody kindly re-direct me. > > When a print job is sent from a windows machine to a printer on a linux samba > server there are a number of 'drivers' (actually just translators) involved: > > First the windows machine puts the text and or graphics through the windows > 'driver' and a job is spooled to the windows queue. At this stage I assume we > have printer codes in the spool queue? Next the data is past across the > network to a samba spool queue /var/spool/samba. Next the samba server demon > picks up this data and passes it to the linux printing system and yet another > set of 'drivers' gs lpdomatic hpijs etc. process the data an it is spooled > ready to be finally to be passed to an actual device driver /dev/lp0 or whatever. > > First question is this simplified picture correct? I think it is because I > have a working Epson printer setup which works just fine. > > If so then how on earth is the data not translated twice? Is the 'magic > filter' clever enough to identify that raw data is being passed from samba to lpd? > > Last question I never see anything in /var/spool/samba is this because this is > just a buffer? Of have I got it all wrong? > > Finally where is the big picture documented? I have read the Linus printing > HOWTO and the distributed Samba docs. I don't wish to be grumpy but this is > all far too deep for understanding no matter how determined. When I eventually > get to understand it all I promise to publish a diagram. >Check the "Classical Printing" chapter of the Samba-HOWTO-Collection. http://www.samba.org/samba/docs/Samba-HOWTO-Collection.pdf> Thanks for being patient with a geriatric newbe ;}We were all there once. Now we are geriatric oldies! :) - John T. -- John H Terpstra Email: jht@samba.org