Spausdinimas per CUPS iš MS Windows sistemų

7 gruodžio, 2008 – 16:56

Spausdintuvas Jau kelis metus mano namuose spausdinama ne prijungiant spausdintuvą prie reikiamo kompiuterio, o per serverį. Kalbu apie paprastą kompiuterį naudojamą kaip serverį, o ne vieną iš specialių tik spausdinimui skirtų serverių, kurių vien tik kaina kaip vidutinio rašalinio spausdintuvo. Mielai nusipirkčiau vieną jų, bet kadangi ir taip yra serveris visą laiką įjungtas, tai kam to reikia? Jo reikėtų nebent norint spausdintuvą ištempti į kitą kambarį, kuriame nebūtų UTP kabelio, bet tada reikėtų ir spausdinimo serverį pirkti veikiantį bevieliu ryšiu. Taigi, darau išvadą, jog šiuo metu pirkti spausdinimo serverio tikrai neapsimoka.
Viskas būtų tikrai puiku jeigu ne tai, jog namie naudojamos skirtingos operacinės sistemos. Serveryje – Gentoo, nešiojamaje kompiuteryje – Windows XP, staliniame – Gentoo ir Windows Vista. Šią problemą jau buvau išsprendęs ir viskas gaudavosi labai gražiai: spaudžiu „Start“, „Run…“, atsidarau „\\sun“ ir du kartus spusteliu ant spausdintuvo ikonos. Rezultatas: Windows automatiškai prisijungia ir įdiegia spausdintuvą ir nieko neklausia apie jokias tvarkykles, nes jas pasiima Samba pagalba. Tačiau tokiai sistemai pasidaryti reikia šiek tiek pastangų, o ir Samba gali ne visada būti reikalinga, išskyrus spausdinimą.
Kad ir kaip gražiai atrodytų toks variantas, buvau priverstas jo atsisakyti, kai po maždaug pusmečio naudojimo atsisakė dirbti tvarkyklių padavimas. Tikrai apmaudu tokio patogaus varianto atsisakyti, tačiau problemos išspręsti iki šiol nepavyko, todėl nusprendžiau spjauti į Samba+CUPS ir naudoti tik CUPS spausdintuvą prie Windows sistemų prijungiant be jokių Samba.

Kam to reikia?
Jūs užtruksite žymiai mažiau laiko konfigūruodami Samba. Taip pat nereikės vargintis su tvarkyklėmis (nesvarbu ar jūs kliento kompiuteryje sudiegsite iš CD ar per Samba) ir galėsite per serverį valdyti kokiais spausdintuvais gali naudotis, kokiais ne ir pan. be Samba.
Pagrindinis pliusas – nereikalinga Samba.

Kaip nustatyti CUPS serverį?
Tai gana paprasta dalis. Tiesiog įdiekite CUPS serverį ir jį paleiskite. Tada prisijunkite per naršyklę prie http://localhost:631/ ir pereikite į „Administration“ skiltį.
„Administration“ skiltyje pridėkite spausdintuvus ir sukurkite klasę (iš angl. k. „class“), į kurią įtraukite reikiamus spausdintuvus.
Klasė – tai grupė spausdintuvų. Kursime klasę, nes grupėmis lengviau kontroliuoti kuriuos spausdintuvus galima naudoti kuriems vartotojams. Žymiai sunkiau būtų nustatinėti leidimus kiekvienam spausdintuvui atskirai. Mūsų pavyzdyje klasė pavadinta „spausk“.
Dabar reikia sureguliuoti leidimus. Su super vartotojo (pvz., root) teisėmis atidarykite redagavimui /etc/cups/cupsd.conf failą ir jame nustatykite (paieškokite tokių eilučių ir pakeiskite jas į reikiamas, o jeigu jų nerasite, prirašykite naujas):

ServerName sun
Listen *:631

Žinoma, nepamirškite pakeisti „sun“ į savo serverio pavadinimą (toliau visur rašysiu „sun“ vietoje serverio pavadinimo).
Su eilute „Listen“ jūs nurodote kokiem IP adresam leisti jungtis ir kokiu prievadu.

Susiraskite faile „<Location />“ eilutę ir ją ištrinkite nuo „<Location />“ iki „</Location>“ eilutės imtinai.

Dabar prirašykite vieną iš šių kodo variantų, vietoje to, kurį ką tik ištrynėte:

<Location />
AuthType None
Order Deny,Allow
Deny From None
Allow From All
</Location>

# leis spausdinti ir jungtis prie CUPS sistemos (jungtis prie CUPS sistemos - atsidaryti naršyklėje „http://sun:631“) bet kam

<Location />
AuthType None
Order Deny,Allow
Deny From All
Allow From 192.168.2.0/24
</Location>

# leis spausdinti ir jungtis prie CUPS sistemos (jungtis prie CUPS sistemos - atsidaryti naršyklėje „http://sun:631“) visiem, kurie jungiasi per 192.168.2.0-192.168.2.254 IP adresus

<Location />
AuthType None
Order Deny,Allow
Deny From All
Allow From 192.168.0.0/16
</Location>

# leis spausdinti ir jungtis prie CUPS sistemos (jungtis prie CUPS sistemos - atsidaryti naršyklėje „http://sun:631“) visiem, kurie jungiasi per 192.168.0.0-192.168.254.254 IP adresus

<Location />
AuthType None
Order Deny,Allow
Deny From All
Allow From 192.168.2.1
</Location>

# leis spausdinti ir jungtis prie CUPS sistemos (jungtis prie CUPS sistemos - atsidaryti naršyklėje „http://sun:631“) visiem, kurie jungiasi per 192.168.2.1 IP adresą
Sakydamas „jungiasi per adresą“ turiu omenyje, jog serveris kompiuterį mato kaip , bet ne tai, jog įtraukę maršrutizatoriaus IP adresą jūs leisite visam tinklui jungtis prie serverio.

Jeigu norite prijungti prie serverio spausdintuvų iš kitų CUPS sistemų, pridėkite tokią eilutę:
BrowsePoll <serverio_hostname_arba_ip_adresas>:<prievadas>

Rekomenduojame uždrausti jungtis prie http://sun:631/admin administravimo srities. Taip padidinsite savo serverio saugumą.
<Location /admin>
Encryption Required
Order Deny,Allow
Deny From All
Allow From <ip>
</Location>

# nepamirškite <ip> pakeisti į IP adresą/IP adresų sritį, kuriai leisite jungtis prie administravimo srities.

Analogišku būdu (tik pakeisdami „admin“ į „classes/<klasė>“ galite valdyti leidimus naudotis klase ar net spausdintuvu (vietoje „admin“ – „printers/<spausdintuvo_pavadinimas>“)).

Visa tai pabaigę, išsaugokite failą ir perkraukite CUPS. Galite spausdinti.

Kaip prijungti spausdintuvą prie Windows sistemos?
Atsidarykite „Control Panel“, „Printers“ arba „Printers and Faxes“ (priklausomai nuo sistemos). Spustelėkite „Add a printer“ ir taip iškviesite spausdintuvo pridėjimo vedlį. Spauskite „Next >“, pasirinkite „A network printer, or a printer attached to another computer“ (Windows Vista sistemose: spauskite „Add a network, wireless or Bluetooth printer“, „The printer that I want listed“) ir vėl spustelėkite „Next >“. Pasirinkite „Connect to a printer on the Internet or on home or office network“ (Windows Vista: „Select a shared printer by name“) ir URL laukelyje įveskite:
http://sun:631/classes/spausk
Nepamirškite pakeisti „spausk“ į savo sukurtą klasės pavadinimą ir „sun“ į CUPS serverio „hostname“ arba IP adresą.
Spustelėkime „Next >“ ir atsivėrusiame lange nurodykite tokias tvarkykles:
„Manufacturer“: „Generic“
„Printers“: visi jie veiks, tačiau geriausiai veikia „MS Publisher Imagesetter“
Patvirtiname pasirinkimą mygtuko „OK“ paspaudimu, pasirenkame ar norime, jog spausdintuvas būtų naudojamas kaip pagrindinis ir užbaigiame vedlio darbą „Next >“, „Finish“ mygtukų paspaudimais. Galime spausdinti.

Kaip spausdinti iš Linux sistemos?
/etc/cups/cupsd.conf faile prirašykite tokią eilutę:
BrowsePoll sun:631
Žinoma, galima ir prisijungiant per naršyklė prie serverio CUPS sąsajos ten pridėti IPP spausdintuvą (URL toks pat kaip Windows sitemoje naudojamas, tik vietoje HTTP naudokite IPP).
Išbandykite atspausdinti failą:
lpr failas.txt
Jeigu nesate nurodę numatytojo spausdintuvo, naudokite tokią komandą:
lpr -P spausdintuvas failas.txt

Kaip matome, esminis skirtumas tik Windows sistemom ir tikrai ganėtinai mažas spausdintuvo prijungime, bet didelis konfigūravime.

  1. 1 Trackback(s)

  2. Gru 3, 2012: Versme.net blog » Blog Archive » Instaliuojame SAMBA Gentoo sistemoje

Sorry, comments for this entry are closed at this time.