ian at excess dot org
2002.12.01
Verziótörténet | ||
---|---|---|
Verzió: 1.4 | 2004.01.05 | Átdolgozta: iw |
Szavak javítása. | ||
Verzió: 1.3 | 2003.11.18 | Átdolgozta: iw |
Az lpadmin -h helytelen használata törölve. | ||
Verzió: 1.2 | 2003.10.03 | Átdolgozta: iw |
Megjegyzés a woody-ról és a gs-esp-ről, ütközés a bash enable parancsával, javítás az XP/2000 kliensekhez. | ||
Verzió: 1.1 | 2003.06.26 | Átdolgozta: iw |
Hozzáadva a jelszó megadása megosztott windowsos nyomtatónál, javítások. | ||
Verzió: 1.0 | 2003.05.15 | Átdolgozta: tmm |
Első kiadás, az LDP átnézte. | ||
Verzió: 0.8 | 2003.04.11 | Átdolgozta: iw |
LaTeX-ről konvertálva. |
A Debian GNU/Linux (http://www.debian.org) az első önkéntesek által támogatott Linux disztribúció. Sajnos Debianban a nyomtatóbeállítás nem mindig egyszerű feladat. Nehéz találni olyan Windows és Linux közötti nyomtatómegosztást lépésenkét leíró dokumentumot, amelyben a legújabb programeszközöket használják fel. Ez a HOGYAN mindkét probléma megoldását célozza meg.
Ez a HOGYAN bemutatja, miként lehet beállítani Debian rendszerben a nyomtatást parancssoros eszközök segítségével. Kifejti, hogyan lehet Linuxból dokumentumokat küldeni windowsos nyomtatókra, és hogyan lehet linuxos nyomtatókat Windowszal felszerelt számítógépekkel megosztani. Néhány gyakori probléma megoldására is mutatunk példát.
Ezen dokumentum legfrissebb változata megtalálható a http://excess.org/docs/linux_windows_printing.html honlapon. Ezen dokumentumhoz kapcsolódó Docbook/XML és az EPS fájlok letölthetők a http://excess.org/docs/src/ webhelyről. Kérjük, hogy a dokumentummal kapcsolatos hibajelentéseket, javításokat és javaslatokat az ian@excess.org e-mail címre küldjétek.
A legfőbb komponensek, amiket használni fogunk:
Az Egységes UNIX Nyomtatási Rendszer (Common UNIX Printing System; http://www.cups.org) egy nyomtatási sorkezelő, valamint a nyomtatóhasználatot és adminisztrációt segítő programok gyűjteménye.
Samba
A Samba (http://www.samba.org) egy olyan program, amely a Windows fájl- és nyomtatómegosztási protokollok implementálásával lehetővé teszi a nem Windowst futtató számítógépek számára, hogy egy hálózaton windowsos gépként viselkedjenek.
Nyomtató eszközmeghajtók
A LinuxPrinting.org (http://www.linuxprinting.org) webhelyen a legtöbb nyomtatóhoz található eszközmeghajtó, itt egy adatbázisban tárolják a Linux alatt használható nyomtatók listáját. A Linux alatt használni kívánt nyomtatók minden típusához le kell tölteni egy eszközmeghajtót. Egy nyomtató eszközmeghajtó egy PPD fájlból és egy szűrő programból áll, PostScript nyomtatók esetén pedig csak egy PPD fájlból.
ESP Ghostscript ( http://www.cups.org/ghostscript.php)
Nem érhető el Debian GNU/Linux 3.0 (más néven woody) csomagként, használd a "gs" programot helyette.
GNU A2PS ( http://www.gnu.org/software/a2ps/)
A következő parancsok segítségével telepítheted ezeket a csomagokat:
apt-get update apt-get install cupsys cupsys-bsd cupsys-client foomatic-bin samba smbclient gs-esp a2ps |
Bizonyos nyomtatókhoz esetleg további csomagok is szükségesek. Például a HP InkJet nyomtatók helyes működéséhez a hpijs csomagot is telepítened kell.
/usr/sbin/lpadmin -p Laser -v parallel:/dev/lp0 -P /root/laser.ppd /usr/bin/enable Laser /usr/sbin/accept Laser /usr/sbin/lpadmin -d Laser |
A CUPS nyomtatási sorkezelő démon neve cupsd. Ez a dokumentumokat először PostScript formátumra, majd pedig a nyomtató saját formátumára konvertálja (1 Ábra). A PostScriptet nem ismerő nyomtatók egy raszteres vagy bittérképes dokumentum formátumot használnak. A raszteres formátum mérete az eredeti PostScript formátumúnál sokkal nagyobb lehet, és elküldése a nyomtatóhoz több időt vesz igénybe.
A szűrők (filters) olyan programok, amelyek a dokumentumokat egyik formátumról egy másikra konvertálják. A CUPS nyomtatási sorkezelő mindent megtesz, hogy az elküldött dokumentumok számára találjon egy megfelelő szűrőt. Ha nincs olyan szűrő telepítve, amellyel a dokumentumot konvertálni lehetne, egy ehhez hasonló hibaüzenettet kapsz: lpr: unable to print file: client-error-document-format-not-supported.
Sok alkalmazás nem tartalmaz szűrőket a saját dokumentum formátumaihoz. Ezekkel az alkalmazásokkal készített dokumentumok csak magából az alkalmazásból nyomtathatók ki, hacsak nem mented el a dokumentumot PostScript vagy más szabványos formátumba.
Az SMB és a CIFS, a Windows fájl- és nyomtatómegosztási protokollja. A Samba szervert használhatod arra, hogy ezekkel a protokollokkal kommunikálj a Windowst futtató számítógépekkel. A CUPS konfigurálása előtt meg kell győződnöd arról, hogy kapcsolódni tudsz a Samba SMB/CIFS kliensével, az smbclient programmal a windowsos számítógéphez (2 Ábra).
Íme egy példa windowsos számítógéppel való kapcsolat létrehozására:
/usr/bin/smbclient -L rice -U fred added interface ip=10.6.7.234 bcast=10.6.7.255 nmask=255.255.255.0 Got a positive name query response from 10.6.7.8 ( 10.6.7.8 ) Password: (not shown) Sharename Type Comment PRINTER$ Disk INKJET Printer STUFF Disk IPC$ IPC Remote Inter Process Communication |
A bemutatott parancs a "rice" nevű windowsos számítógép azon megosztott erőforrásainak listáját kéri le, melyekhez a "fred" nevű felhasználó hozzáférhet. Ez az "INKJET" elnevezésű nyomtatót jeleníti meg.
Ha a Windows névszolgáltatása nem érhető el, meg kell adnod a windowsos számítógép IP címét az -I kapcsoló segítségével:
/usr/bin/smbclient -I 10.6.7.8 -L rice -N |
További információkért az smbclient használatával kapcsolatban olvasd el a Samba dokumentációját.
ls -l /usr/lib/cups/backend/smb |
Ha ez a fájl nem létezik, hozd létre a következő paranccsal:
ln -s `which smbspool` /usr/lib/cups/backend/smb |
Egy példa a fent említett nyomtató beállítására:
/usr/sbin/lpadmin -p RicePrinter -v smb://fred:mypass@rice/INKJET -P /root/inkjet.ppd /usr/bin/enable RicePrinter /usr/sbin/accept RicePrinter /usr/sbin/lpadmin -d RicePrinter |
Az "lpadmin" parancs egy megosztott windowsos nyomtatót állít be a felhasználói név, jelszó, netbios név és nyomtató név paraméterként történő megadásával. A fent említett parancsok bővebb magyarázatát olvasd el a 2.3 fejezetben.
Most már készen áll a nyomtató a tesztelésre. Küldj egy fájlt a nyomtatóra az lp paranccsal, utána írva a fájl nevét, vagy nyomtass egy dokumentumot valamelyik alkalmazásból.
A Samba az nmbd és az smbd démonokat hasznája windowsos gépekkel való fájl és nyomtató megosztáshoz. Az nmbd windowsos névkiszolgálóként működik, üzenetszórással tájékoztatva a gép nevéről a helyi hálózat windowsos számítógépeit. Az smbd fájl és nyomtatási kéréseket fogad windowsos gépektől (3 Ábra).
Minden megosztott linuxos nyomtatóhoz le kell tölteni és telepíteni kell a windowsos nyomtató eszközmeghajtókat. A windowsos nyomtató eszközmeghajtókat a nyomtató gyártójának honlapján lehet megtalálni.
/usr/sbin/adduser --system --disabled-password smbprint |
[global] printcap name = cups printing = cups security = share [printers] browseable = yes printable = yes public = yes create mode = 0700 guest only = yes use client driver = yes guest account = smbprint path = /home/smbprint |
/etc/init.d/samba restart |
application/octet-stream application/vnd.cups-raw 0 - |
Az /etc/cups/mime.types fájl következő sorának elejéről szintén távolítsd el a megjegyzés karaktert:
application/octet-stream |
<Location /printers> AuthType None Order Deny,Allow Deny From None Allow From All </Location> |
Végül indítsd újra a CUPS-t a következő paranccsal:
/etc/init.d/cupsys restart |
A CUPS naplójának legfrissebb bejegyzéseit a következő paranccsal nézheted meg:
/usr/bin/tail /var/log/cups/error_log |
Ha a cli_connect() failed... üzenethez hasonlót látsz, akkor az smbspool nem tatálta meg azt windowsos számítógépet, amihez csatlakozni próbáltunk. Ellenőrizd, hogy jól írtad-e a windowsos számítógép nevét (host name). Ellenőrizd, hogy a windowsos számítógép be van-e kapcsolva, és hogy a hálózati kapcsolata működik-e. Bizonyosodj meg arról, hogy az smbclient segítségével tudsz csatlakozni hozzá a 3.1 fejezetben bemutatott módon.
Ha az SMB tree connect failed: ERRSRV - ERRinvnetname üzenethez hasonlót látsz, akkor az smbclient sikeresen kapcsolódott a windowsos számítógéphez, de nem tudta felvenni a kapcsolatot a kért nyomtatóval. Ellenőrizzük az smbclient segítségével a 3.1 fejezetben bemutatottak szerint, hogy helyesen írtad-e a megosztott nyomtató nevét.
Írd be a "LogLevel warn" sor helyett a "LogLevel debug" sort.
Mentsd el a konfigurációs fájlt és lépj ki a szövegszerkesztőből.
Indítsd újra a CUPS szervert a következő paranccsal:
/etc/init.d/cupsys restart |
A CUPS naplózását a következő paranccsal követheted nyomon:
/usr/bin/tail -f /var/log/cups/error_log |
Ha nem tudod meghatározni a hiba okát, a kapott hibaüzenetek kulcsszavaira az Interneten keress rá. Valószínű, hogy valaki már korábban megoldotta a problémát. Meg lehet próbálni a 2.2 fejezetben felsorolt csomagok legújabb verzióra történő frissítését is.
A magyar fordítást Mócza Zsolt készítette (2002.09.09). A lektorálást Daczi László végezte el (2003.09.15). Utoljára frissítve 2004.04.16-án. A dokumentum legfrissebb változata megtalálható a Magyar Linux Dokumentációs Projekt honlapján.