SAMBA II - drukowanie przez sambke.
Siedzac po kolejnej nie przespanej nocy... a dokoncze to co zaczalem... A wiec... samba daje bardzo wygodnie zainstalowac sie jako swoisty "print serwer" zainstalowany w srodku sieci, na ktorym trzymane sa kolejki wszystkich dostepnych w sieci drukarek, podlaczonych do koncowek Windows. Jest to wygodne ponieważ nie musisz przestawiac pani Marysi z ksiegowosci portu drukarki na jej NT tylko dlatego ze wlasnie trzeba bylo przeinstalowac system pani Zosi i zmieniles mu z jakis wzgledow nazwe, czy przypisales go do innej grupy roboczej a chcesz zeby dalej te same osoby kozystaly z drukarki podpietej do jej LPT. Wystarczy ze zmienisz to w jednym miejscu, w sambie a pozostale komputery poslusznie beda drukowaly jak by nie bylo zadnej zmiany. Pierwsze co trzebaby zrobic to przygotowac odpowiednie regulki do pliku /etc/smb.conf .
[global]
printcap name = /etc/printcap #
plik
w ktorym sa definicje drukarek
load printers = yes #
to zaladuje plik /etc/printcap z definicjami drukarek
#
opisuje drukarke ktora bedzie widziana jako
HP1100
[hp1100]
path
= /var/spool/samba/hp1100 #
sciezka gdzie bedzie spool drukarki
writeable = Yes
create mask = 0700
guest ok = Yes
printable = Yes
# konieczne !
print
command = lpr -r -h -P %p %s #
komenda drukwania bedzie
przesylana do lpr jako menadzera kolejkowania
printer
= hp #
"hp" to smbol ktory znajduje sie w /etc/printcap
jako opis drukarki
A teraz plik /etc/printcap
hp|lp0:\
:lp=/dev/null:\
:sd=/var/spool/samba/hp1100:\
# katalog spooli drukarki ten
sam co poprzednio !
:sh:\
:if=/usr/bin/smbprint:
# taki maly skrypcik ktory
przesyla wydruk na drukarke do innego komputera
A teraz /usr/bin/smbprint może ale nie musi wyglądać tak :
----------------------------------------------------------------
#!/bin/sh
eval acct_file=\${$#}
spool_dir=`dirname $acct_file`
config_file=$spool_dir/.config
# plik konfiguracyjny
eval `cat
$config_file`
# tu zapamietuje konfiguracje
(
echo "print -"
cat
) | /usr/bin/smbclient "\\\\$server\\$service"
$password -U $server -N -P # a tuuu laczy sie z serwisem
drukarki
(parametr -P) i wysyla do niego plik... i sie drukuje juz
----------------------------------------------------------------
plik konfiguracyjny .config znajduje sie dla
kazdej drukarki w jej katalogu gdzie jest miejsce dla spool'a
w tym przypadku wygladaloby to tak:
plik : /var/spool/samba/hp1100/.config
---------------------------------------
server="komputer_z_drukarka"
service="udostepniona_drukarka_nazwa"
-------------------------------------
Et voila... Ale jest jeszcze :
printer driver = HP LaserJet 1100
printer driver location = \\MACHINE\PRINTER$
które nieco potrafią
poprafić komfort instalacji
drukarki na nastepnej maszynie :)
A wiec pozdrawiam i do siego roku :)
[krzyzak]