Tisknuti na Sambe s lprng

Jan Marek jmarek na jcu.cz
Úterý Duben 23 08:25:07 CEST 2002


Dobrý den,

On Mon, Apr 22, 2002 at 09:11:57PM -0400, Matej Cepl wrote:
> Dobrý den,
> 
> Mám podezření, že problém je v právech na spoolovacím adresáři
> /var/spool/lpd/samba. Podle smb.conf(5) ,,Typically the path
> specified would be that of a world-writeable spool directory with
> the sticky bit set on it``. Tak jsem si nastavil chmod a+w,+s na
> příslušný adresář a pak mi to jednou i fungovalo (teď už to zase
> stojí za starou bačkoru). Když ale projedu checkpc -f z LPRng
> (nebo kdykoli se nastartuje lpd démon), tak mi nadává na blbá
> práva a přestaví je na 0700. Mimochodem paramter printing
> v smb.conf nemá zjevně vůbec žádný význam (ať už je tam
> "bsd" nebo "lprng" tak to stojí stejně za bačkoru).
> 
> Co mě na tom také mate je to, že podle mého porozumění
> LPRng-HOWTO práva na spooladresáři by neměla být tak
> rozhodující jako /etc/lpd.perm (který přikládám, stejně
> jako /etc/samba/smb.conf).
> 
> Nemůžete mě někdo nakopnout správným směrem, prosím?

z vašeho dopisu mi připadá, že nechápete, jak tisk přes Sambu
funguje...

V podstatě je to tak, že Samba soubor k tisku uloží do adresáře,
který je specifikovaný (ale POZOR!!! - NE do adresáře systému
LPRng!!!) a pak na ten tisk zavolá příkaz

lpr -Ptiskárna uložený_soubor

Jak je vidno, tisk přes Sambu je v podstatě z hlediska LPRng
LOKÁLNÍ záležitost, nikoliv vzdálená. Tu vzdálenou část totiž
řeší Samba.

Z toho taky vyplývají úpravy uvedených souborů...

Můj názor, proč to nechtělo fungovat, je, že se těm dvěma
systémům navzájem nelíbila práva k tomu adresáři, který jste
uvedl jako spool pro Sambu. Buď držkoval LPRng (a on se většinou
odmítne spustit, pokud se mu něco nelíbí), nebo Samba.

> 
> 	Děkuji
> 	
> 		Matěj
> 
> -- 
> Matej Cepl, cepl.m na neu.edu
> 138 Highland Ave. #10, Somerville, Ma 02143, (617) 623-1488

> # Samba config file created using SWAT
> # from rehor.surfbest.net (127.0.0.1)
> # Date: 2002/04/22 20:23:33
> 
> # Global parameters
> [global]
> 	client code page = 852
> 	workgroup = DOMA
> 	server string = Treba Matej
> 	encrypt passwords = Yes
> 	syslog = 0
> 	max log size = 1000
> 	socket options = IPTOS_LOWDELAY TCP_NODELAY SO_SNDBUF=4096 SO_RCVBUF=4096
> 	character set = ISO8859-2
> 	dns proxy = No
> 	invalid users = root
> 	printing = bsd

Pokud používáte LPRng, pak pro něj má Samba speciální systém.
Čili zde bych dal:

	printing = lprng

> 
> [homes]
> 	writeable = Yes
> 	create mask = 0700
> 	directory mask = 0700
> 	browseable = No
> 
> [HP]
> 	comment = HP DeskJet
> 	path = /var/spool/lpd/samba

zde bych důsledně oddělil adresáře. Čili:

	path = /var/spool/samba

> 	create mask = 0700
> 	hosts allow = 192.168. 127.
> 	printable = Yes
> 	print command = /usr/bin/lpr -b -r -P%p %s
> 	lpq command = /usr/bin/lpq -P%p
> 	lprm command = /usr/bin/lprm -P%p %j
> 	lppause command = /usr/sbin/lpc hold &p %j
> 	lpresume command = /usr/sbin/lpc release %p %j
> 	queuepause command = /usr/sbin/lpc -P%p stop
> 	queueresume command = /usr/sbin/lpc -P%p start

Tyto příkazy by snad měly fungovat...

Zdraví
Honza Marek
-- 
Ing. Jan Marek
University of South Bohemia
Academic Computer Centre
Phone: +420-38-7772080


Další informace o konferenci Linux