Druckerinstallation mit CUPS

Sonic_Traveler

Well-Known Member
Guten Abend

Kann mir jemand erklären wie ich meinen Printer unter FreeBSD zum laufen bzw drucken bringe ? Es handelt sich dabei um einen HP Deskjet 3816.
Soll ich dafür CUPS benutzen oder apsfilter ?
Ich hab natürlich das Handbook schon überflogen, wurde aber nicht gerade schlau daraus.

Sonic Traveler
 
Hi,

ich würde Cups und u.U. die foomatic-Filter installieren. Das skript cups.sh.sample in /usr/local/etc/rc.d in cups.sh umbennen, damit cups immer automatisch startet. Mit dem Browser 127.0.0.1:631 öffnen und mit der grafischen Oberfläche den Drucker einrichten. Sollte dein Drucker nicht standardmässig unterstützt werden, dann surfe mal auf http://www.linuxprinting.org und besorg dir dort die ppd-Datei für deinen Drucker.
 
Original geschrieben von binaerspuele
Hi,

ich würde Cups und u.U. die foomatic-Filter installieren. Das skript cups.sh.sample in /usr/local/etc/rc.d in cups.sh umbennen, damit cups immer automatisch startet. Mit dem Browser 127.0.0.1:631 öffnen und mit der grafischen Oberfläche den Drucker einrichten. Sollte dein Drucker nicht standardmässig unterstützt werden, dann surfe mal auf http://www.linuxprinting.org und besorg dir dort die ppd-Datei für deinen Drucker.

Danke Binaerspuele.
Die cups.sh.sample hab ich umbenannt.
Was ich das aber mit dem Browser soll (127.0.0.1:631) ist mir noch nicht ganz klar.
Ist das eine Installationsmaske ? Auf jeden Fall weiss ich nicht genau, welche Druckerklasse ich erstellen muss etc. ... und wieso läuft das ganze über einen Browser ? Gibt es kein Installationsprogramm oder etwas ähnliches ?

Greetings
 
Wenn du die Adresse eingeben kannst, dann ist cups bereits installiert. Unter KDE kann man auch noch CUPS grafisch konfigurieren mit dem Kontrollzentrum. Ich kenne sonst kein eigenständiges GUI für cups. Ansonsten müsstest du über die Kommandozeile gehen.
Du musst auch keine Druckerklasse erstellen. Das ist eher was für Büros. Einfach über "manage printers" einen Drucker hinzufügen.
 

Was ich das aber mit dem Browser soll (127.0.0.1:631) ist mir noch nicht ganz klar.
[/B]


Nun bin ich auch am einrichten von cups (mach das zum ersten mal)
Da ich kein X installiert habe möchte ich von einem anderen Rechner aus http://192.168.1.1:631 machen.
Dumm nur das mir hier der Zugriff verweigert wird.
Wie erlaube ich den Zugriff oder wie mache ich das ganze per Hand.

danke für eure Hilfe
 
die frage ist sicher etwas doooof, oder einfach nur unklar formuliert??
Aber für einen Tip wäre ich trotzdem dankbar
 
Hi karme,

such doch mal in /usr/local/etc/cups nach cupsd.conf. Dort sollte sich was zu finden, Schlüsselwort allow. Einfach dann die IP des Rechners eintragen, mit dem du configurieren willst.
 
Original geschrieben von Alexco
Hi karme,

such doch mal in /usr/local/etc/cups nach cupsd.conf. Dort sollte sich was zu finden, Schlüsselwort allow. Einfach dann die IP des Rechners eintragen, mit dem du configurieren willst.
 
Bei mir sieht das so aus in der cupsd.conf:

<Location />
Order Deny,Allow
Allow From All
#Allow From 127.0.0.1
</Location>

## Anonymous access (default)
AuthType None

<Location /admin>

AuthType Basic
AuthClass System

## Restrict access to local domain
Order Deny,Allow
Deny From All
Allow From 127.0.0.1 #<--- da die IP-Adresse für die Maschine mit GUI einsetzen (oder lynx benutzen)

#Encryption Required
</Location>
 
Original geschrieben von Alexco
Hi karme,

such doch mal in /usr/local/etc/cups nach cupsd.conf. Dort sollte sich was zu finden, Schlüsselwort allow. Einfach dann die IP des Rechners eintragen, mit dem du configurieren willst.
Ja, unter der Rubrik admin kann man da Einträge machen, geht bei mir aber nicht ?


@ antic_eye
Erst dachte ich: Spaßvogel der, aber man kann tatsächlich damit arbeiten.

@ all
Leider bekomme ich die Einrichtung des Druckers damit nicht richtig hin.
Bei einem Testdruck, bekomme ich auf der ersten Seite in 5 versetzten Zeilen etwas
angezeigt, wobei die 5. Zeile schon abgechnitten ist und nicht mehr auf das Paper passt.
Danach laufen noch 5-7 Seiten leer durch, wobei ich fasst glaube, das dort jeweils
weitere 5 Zeilen draufgehören, diese aber nicht mehr im sichbaren Bereich sind.

Wenn ich dann von der Befehlszeile ein lpr aufrufe, bekomme ich zur Antwort:
lpr: lp: unknown printer

Muss ich den Drucker jetzt noch irgendwo sonst einbinden (unter localhost:631 ist er da)
Liegt das sonst ein Fehler vor???

Ach ja, ich konnte auch die ppt-Datei nicht auswählen, die ich bei linuxprinting besorgt hatte.
Greift der cups dort automatisch hin???

Habe das Ganze mit verschieden Einstellungen versucht,
das Ergebnis ist immer dasselbe - oder geht gar nicht.

Hier noch die derzeitigen Einstellungen:
OfficeJet-635 Local Raw Printer
Description:
Location: Buero
Printer State: idle, accepting jobs.
"Ready to print."
Device URI: /dev/lpt0


Gerade stelle ich fest, das, wenn ich dann auf "Do Administration Tasks" gehe
und dann auf "Manage available Printers" - ist kein Printer eingetragen

Es kommt aber auch keine Abfrage zum speichern

Blickt da irgendjemand durch??
 
was ich noch vergass, wenn ich auf configure printer gehe bekomme ich:
client-error-not-possible

Also muß etwas schon ganz schön falsch sein.
Unter Model kann ich lediglich 3 Drucker auswählen.
Wie kann ich nur deas richtige ppt-file auswählen???

Ahhh, jetzt kommt eine super Testseite - habe jetzt den HP DeskJet Series CUPS v1.1 ausgewählt.
Diese Einstellung hatte ich zwar vorhin schonmal. Naja hauptsache es geht!

Aber vonder Befehlszeile bekomme ich immer noch:
lpr: lp: unknown printer

Wie funktioniert das nur?
 
Schau mal in Dein /etc/printcap file.
Dort findest Du den von cups generierten Drucker-Eintrag. Wenn Du dann
lpr -P DRUCKERNAME
benutzt funktioniert es sicherlich.

Gruß,

Ice
 
Tja, da hats Dich voll erwischt.

cupsd.conf:
Was genau geht denn bei Dir nicht, wenn Du in der cupsd.conf editierst?

lp:
Cups benötigt seine eigenen lp Tools, diese sollten in /usr/local/bin rumliegen. Da BSD seine Tools in /bin rumliegen läßt, starten halt bei einfacher Eingabe von z.B. lpstat eben dieses und nicht das von Cups. Dies läßt sich durch einfügen von ein paar Variablen in der /etc/make.conf steuern, siehe dazu einfach mal ins Makefile im cups port-dir. Oder kopiere die cups lp-tools nach /bin und *rette* vorher die Alten!! Wenn Du dies machst, werden jedoch bei einem Systemupdate die cups-tools wieder überschrieben.

Drucker:
Wenn Dein Drucker als "raw" eingebunden wurde, werden die zu druckenden Seiten nicht für Deinen Drucker übersetzt, sonder direkt im Rohformat an diesen gesendet.
Die Weboberfläche von Cups ist in sofern shei*e, als das Du keine PPDs damit einfügen kannst. Dazu musst Du leider die entsprechenden Cups-Befehle benutzen. Wenn Du eine PPD von linuxprinting.org benutzt, solltest Du sicherstellen, daß auch foomatic bei Dir funktioniert (wenn dies eine foomatic PPD ist). Es sollte aber auf linuxprinting.org beschrieben sein, wie man die PPD Datei unter Cups einbindet.
Ich sitze hier grad an meinem Apple, von daher kann ich Dir das ao aus dem Kopf nicht sagen....

Gruß,
Alex
 
Danke Ice,

in meiner printcap steht:
# This file was automatically generated by cupsd(8) from the
# /usr/local/etc/cups/printers.conf file. All changes to this file
# will be lost.
OfficeJet-635|:rm=vinesmb.vineyard:rp=OfficeJet-635:

und wenn ich
lpr -p OfficeJet-635
bekomme ich weiterhin einen unbekannten printer
 
Original geschrieben von karme
was ich noch vergass, wenn ich auf configure printer gehe bekomme ich:
client-error-not-possible

Klappt das jetzt?? Wenn nicht, ich hatte dies auch schon mal, und da stellte sich heraus, daß das admin Tool beim Aufrufen im Hintergrund einen Seg-Fault erzeugte. Da musste ich dann cups neucompilieren, mit etwas weniger agressiven Optimierungen :-((.

Gruß,
Alex
 
Ansonsten hier noch ein par Sachen, die Du Dir mal anschauen solltest.
Wenn Du cups aus den Ports installiert hast, sollte das auch cups-lpr installiert haben. Also mach mal
Code:
pkg_info|grep cups
Das ergibt bei mir:
Code:
cups-1.1.20.0       The Common UNIX Printing System: Metaport to install comple
cups-base-1.1.20.0  The Common UNIX Printing System: headers, libs, & daemons
cups-lpr-1.1.20.0   The CUPS BSD and system V compatibility binaries (lp* comma
cups-pstoraster-7.07_1 GNU Postscript interpreter for CUPS printing to non-PS prin
Wenn cups-lpr installiert ist, kannst Du Deinen Drucker auch auf der Konsole einrichten. Benutze dazu einfach "lpradmin".
Details zu den Parametern findest Du wie immer in "man lpradmin"

Wenn es dann immernoch nicht geht, würde ich an Deiner Stelle versuchen von einem sauber installierten Cups zu starten. Also nochmal deinstallieren, neu installieren und dann Schritt für Schritt vorgehen.
 
Vielen Dank erstmal für die schnellen Antworten

@ Ice
Dann versuch mal mit nem GROßEN P
mit großem P gehts natürlich (verkriech).
Zumindest insoweit das der Printer nicht mehr unbekannt ist.
Nach einem:
lpr -P OfficeJet-635 /etc/passwd
kommt:
lpr: Unable to connect to /var/run/printer: No such file or directory
lpr: Check to see if the master 'lpd' process is running.
jobs queued, but cannot start daemon.

dachte ich mir, ok, machst ein
mkdir oder touch /var/run/printer
aber da kommt dann:
lpr: Unable to connect to /var/run/printer: Socket operation on non-socket
lpr: Check to see if the master 'lpd' process is running.
jobs queued, but cannot start daemon.
raus

Muss wohl an den bsd und cups Druckbefehlen liegen, bin da noch dran.

pkg_info|grep cups
Ja, das ist alles da - bei mir kommt dasselbe raus

@ Alexco
wir hatten wohl zeitgleich geschrieben
Also, wie gesagt, die Testseite geht, alles andere noch nicht.

Ahh, wenn ich
/usr/local/bin/lpr -P OfficeJet-635 /etc/passwd
eingebe, dann geht es.

Wie kann ich das jetzt regeln ohne die befehle nach /bin zu kopieren.
Muss ich dazu das cups nochmal reinstallieren mit den besagten Änderungen
in der /etc/make.conf - ich hoffe nicht.

Wegen der cupsd.conf melde ich mich nochmal.
Mit dem raw - hat sich geklärt, nehme jetzt den besagten
"HP DeskJet Series CUPS v1.1" und das geht erstmal.
Wenn da keine Fehler mit auftreten lasse ich das erstmal so.

client-error-not-possible
das lag bei mir wohl an der falschen Konfiguration,
nun kann ich auch den Drucker konfigurieren (A4).

Letztendlich soll der Drucker dann für Samba bereitgestellt werden

Vielen Dank erstmal
 
Schön das es jetzt geht. Und ja, Du musst diese Änderungen durchführen und neu kompilieren. Du kannst alternativ die Änderungen auch eintrage, und die BSD Befehle einfach aus /bin rauskopieren. Beim nächsten Kernelbuild bzw Cups build wird dann alles richtig gemacht. Solange werden halt die Befehle aus /usr/local/bin benutzt, was ja nicht wirklich schlimm ist.

Gruß,
Alex
 
Die BSD-Orginal Druckbefehle liegen unter /usr/bin nicht unter /bin und ein lpstat gibt es dort auch nicht.

Ist das alles richtig so??
 
Alexco schrieb
BSD Befehle einfach aus /bin rauskopieren
Die BSD-lpr Binaries liegen aber in /usr/bin....
Ich hab links von /usr/local/bin/lp* nach /usr/bin gesetzt und in die /etc/make.conf NO_LPR= true geschrieben. Damit werden bei einem installworld die links nicht wieder überschrieben (da der lpr nicht gebaut wird).
Code:
# ls -l /usr/bin/ | grep lp
-r-xr-xr-x   1 root  wheel      2590 20 Mai  2003 lp
lrwxr-xr-x   1 root  wheel        18 31 Mai  2003 lpq -> /usr/local/bin/lpq
-r-sr-sr-x   1 root  daemon    25344 20 Mai  2003 lpq.bak
lrwxr-xr-x   1 root  wheel        18 31 Mai  2003 lpr -> /usr/local/bin/lpr
-r-sr-sr-x   1 root  daemon    29216 20 Mai  2003 lpr.bak
lrwxr-xr-x   1 root  wheel        19 31 Mai  2003 lprm -> /usr/local/bin/lprm
-r-sr-sr-x   1 root  daemon    24108 20 Mai  2003 lprm.bak
 
Habe außer lpstat jetzt erstmal alles nach /usr/bin kopiert (die orginalen gesichert)
Und es geht von der K-Zeile. :D

Nun muß es nur noch für Samba gehen.
Da sollte eigentlich alles eingerichten sein, hier der druckerrelevante teil:
[printers]
comment = All Printers
path = /usr/spool/samba
write list = root
printable = Yes
browseable = No
Wenn ich von Windows aus drucken will erhalte ich folgendes:
Drucken am Beginn des Dokuments fehlgeschlagen ;'(
 
@tulkas:
Richtig,sorry. Wie gesagt, ich sitzt hier grad an meinem Apple, da hab ich sowas nicht. :-)). Das Dumme an Unixen ist halt, wenn man einmal etwas eingerichtet hat, braucht man es so schnell nicht wieder, da vergißt man schon mal was.
 
Zurück
Oben