Linux Mint - ausgehend vom Scanner an PC scannen
Karl Heinz
- hardware
- linux
Hallo,
auf Linux Mint nutze ich den HP Office Jet 8620 Pro. Der Drucker funktioniert tadellos ohne das ich etwas installieren musste. Der Scanner funktioniert ebenfalls tadellos ohne das ich etwas installieren musste. Als Scan-Software nutze ich das vorinstallierte „Simple Scan“. Nun möchte ich gerne, wie vom Windows System gewohnt, ausgehend vom Scanner den Scanvorgang starten. Der Scanner hat einen Touchscreen, auf einem Windows PC muss ich einfach den Rechner, den Datentyp usw. per Touchscreen am Scanner wählen und kann so komfortabel ausgehend vom Scanner scannen.
Kann ich Linux Mint auch so einrichten oder geht das nicht?
Falls ja, wie gehe ich hier vor?
Moin!
auf Linux Mint nutze ich den HP Office Jet 8620 Pro. … Der Scanner hat einen Touchscreen, auf einem Windows PC muss ich einfach den Rechner, den Datentyp usw. per Touchscreen am Scanner wählen und kann so komfortabel ausgehend vom Scanner scannen.
Kann ich Linux Mint auch so einrichten oder geht das nicht?
Mangels Gerät kann ich das nicht beurteilen. Aber ich kann Dich fragen, ob Du die hplib installiert hat.
Falls ja, wie gehe ich hier vor?
~> sudo apt-get update
…
~> sudo apt-get upgrade
…
~> sudo apt-get install hplib hplib-gui hplib-doc hplib-data libsane-hpaio
Fall noch nicht geschehen installiere dann auch noch Samba, konfiguriere erst eine Freigabe unter Linux (vergiss nicht, einen Samba-Benutzer für den Drucker einzurichten (oder bei geringen Sicherheitsanforderungen eine Gast-Freigabe zu machen) und diese dann auf dem Drucker als solche, auf welcher er die Scans ablegt.
Alternativ kannst Du auch im Drucker nachschauen, ob dieser eventuell FTP unterützt. Dann nicht etwa Samba, sondern einen FTP-Server installieren und konfigurieren. Mein Kandidat hierfür ist vsftp.
Jörg Reinholz
Hallo Jörg,
danke für Deine ausführliche Rückmeldung. Für mich als Linux Neuling ein ganze Menge Neues. Deshalb hierzu einige Rückfragen, es wäre prima wenn du mir nochmal helfen würdest!
Mangels Gerät kann ich das nicht beurteilen. Aber ich kann Dich fragen, ob Du die hplib installiert hast.
Hplib habe ich nicht installiert. Weiß gar nicht was das ist. Sind das die offiziellen HP-Druckertreiber für mein Gerät?
Woher weißt du denn, dass ich diese benötige bzw. wie hast du in Google gesucht um auf die von Dir verlinkte Seite zu gelangen? Ich möchte den Hintergrund besser verstehen um zukünftig eigenständig ähnliche Probleme lösen zu können.
Falls ja, wie gehe ich hier vor?
~> sudo apt-get update
…
~> sudo apt-get upgrade
…
~> sudo apt-get install hplib hplib-gui hplib-doc hplib-data libsane-hpaio
Bezogen auf die Shell bin ich noch ein Neuling. Was du mit dem „apt-get install“ machst ist mir klar, warum allerdings „apt-get update“ und „apt-get upgrade“ vorher ausgeführt werden müssen ist mir nicht klar, obwohl ich mir folgenden Artikel angeschaut habe: https://wiki.ubuntuusers.de/apt/apt-get?redirect=no
Falls noch nicht geschehen installiere dann auch noch Samba, konfiguriere erst eine Freigabe unter Linux (vergiss nicht, einen Samba-Benutzer für den Drucker einzurichten (oder bei geringen Sicherheitsanforderungen eine Gast-Freigabe zu machen) und diese dann auf dem Drucker als solche, auf welcher er die Scans ablegt.
Samba habe ich bisher nie gehört. Ich habe mich deshalb ein bisschen eingelesen. Wenn ich das richtig verstanden habe, dann ist Samba ein Programm das sowohl als Client als auch als Server betrieben werden kann. In beiden Varianten dient es dazu Daten zwischen verschiedenen Systemen (Computer, Drucker usw.) auszutauschen, wobei ein besonderes Augenmerk auf Daten von verschiedenen Betriebssystemen (z.B. Windows und Linux) gelegt wird. Habe ich das so richtig verstanden?
Warum brauche ich denn Samba für mein Vorhaben? Kann ich nicht einfach einen Ordner im Linux System freigeben auf den der Drucker dann seine Scans ablegen kann? Das wäre doch viel einfacher oder nicht?
Ich habe drei Rechner im LAN. Auf alle drei Rechner soll das Scannen ausgehend vom Scanner möglich sein. Ist dann der Scanner der Samba Client und muss auf den drei Rechnern jeweils der Samba-Server installiert werden?
Auf dem Scanner kann ich doch keine Software installieren, so wie ich das verstanden habe wäre der Scanner aber der Samba-Client. Wie soll ich auf dem Scanner die Samba-Client Software installieren?
Alternativ kannst Du auch im Drucker nachschauen, ob dieser eventuell FTP unterstützt. Dann nicht etwa Samba, sondern einen FTP-Server installieren und konfigurieren. Mein Kandidat hierfür ist vsftp.
Wie finde ich denn heraus ob mein Drucker FTP unterstützt?
Angenommen mein Drucker unterstützt FTP. Welche der von Dir genannten Lösungen wäre denn dann zu bevorzugen und warum? Die Samba Lösung oder die FTP-Lösung?
Den Midnight Commander habe ich mir installiert. Wo ist denn eigentlich der Vorteil des Midnight Commanders? Ich dachte entweder nutzt man die Shell oder einen Dateimanager in der Desktop-Umgebung (z.B. Nautilus). Der Midnight Commander ist doch eigentlich nichts anderes als Nautilus nur halt für die Shell. Warum den Midnight Commander und nicht Nautilus benutzen?
Moin,
Hplib habe ich nicht installiert.
sicher? Bei meinen Mint-Installationen war das ganze hplip-Zeugs immer schon in der Standardinstallation "auf Verdacht" mit installiert, und ich hab das immer nachträglich wieder entfernt, weil ich keinen HP-Drucker habe.
Weiß gar nicht was das ist. Sind das die offiziellen HP-Druckertreiber für mein Gerät?
Ja, das ist das Open-Source-Treiberpaket für die meisten HP-Drucker und -Scanner.
Woher weißt du denn, dass ich diese benötige bzw. wie hast du in Google gesucht um auf die von Dir verlinkte Seite zu gelangen? Ich möchte den Hintergrund besser verstehen um zukünftig eigenständig ähnliche Probleme lösen zu können.
Ich denke, da ist eine gewisse Portion Erfahrung dabei. Ich wüsste keinen Weg, wie ein Laie durch pures logisches Vorgehen darauf kommen sollte. Btw, die Webseite, die Jörg gefunden hat (wenn man weiß, dass man nach hplip suchen muss, ist das natürlich trivial) mag informativ sein; installieren würde ich das Paket an deiner Stelle lieber aus den eigenen Paketquellen von Mint, so wie Jörg es weiter unten andeutet. Alternativ (vielleicht für Neulinge angenehmer) auch über das GUI-Frontend der Paketverwaltung Synaptic.
~> sudo apt-get update … ~> sudo apt-get upgrade … ~> sudo apt-get install hplib hplib-gui hplib-doc hplib-data libsane-hpaio
Übrigens: Jörg hat sich hier vertan (aber wenigstens konsequent), die Paketnamen lauten alle auf hplip, nicht hplib.
Bezogen auf die Shell bin ich noch ein Neuling. Was du mit dem „apt-get install“ machst ist mir klar, warum allerdings „apt-get update“ und „apt-get upgrade“ vorher ausgeführt werden müssen ist mir nicht klar
Das ist auch im Regelfall nicht nötig. Damit wird die interne Liste der verfügbaren Pakete auf den aktuellen Stand gebracht (apt-get update) bzw. verfügbare Updates installiert (apt-get upgrade). Ubuntu und seine Verwandten, also auch Mint, haben aber in der Standardinstallation alle einen Update-Manager laufen, der genau das im Hintergrund periodisch selbständig macht. Deshalb: Normalerweise nicht nötig-
Falls noch nicht geschehen installiere dann auch noch Samba, konfiguriere erst eine Freigabe unter Linux (vergiss nicht, einen Samba-Benutzer für den Drucker einzurichten (oder bei geringen Sicherheitsanforderungen eine Gast-Freigabe zu machen) und diese dann auf dem Drucker als solche, auf welcher er die Scans ablegt.
Samba habe ich bisher nie gehört. Ich habe mich deshalb ein bisschen eingelesen. Wenn ich das richtig verstanden habe, dann ist Samba ein Programm das sowohl als Client als auch als Server betrieben werden kann. In beiden Varianten dient es dazu Daten zwischen verschiedenen Systemen (Computer, Drucker usw.) auszutauschen, wobei ein besonderes Augenmerk auf Daten von verschiedenen Betriebssystemen (z.B. Windows und Linux) gelegt wird. Habe ich das so richtig verstanden?
Im Prinzip ja. Samba macht im Grunde das, was in Windows als "Datei- und Druckerfreigabe" bekannt ist. Der Samba-Client (der meist auch schon per Default installiert ist) sorgt dafür, dass man auf Netzwerkfreigaben (Verzeichnisse und Drucker) anderer Rechner zugreifen kann, der Samba-Server ist das Gegenstück dazu und dient dazu, Netzwerkfreigaben bereitzustellen. Windows-PCs können auf Samba-Freigaben zugreifen; Linux kann über den Samba-Client auf Windows-Freigaben zugreifen.
Warum brauche ich denn Samba für mein Vorhaben? Kann ich nicht einfach einen Ordner im Linux System freigeben auf den der Drucker dann seine Scans ablegen kann? Das wäre doch viel einfacher oder nicht?
Genau dafür brauchst du Samba.
Ich habe drei Rechner im LAN. Auf alle drei Rechner soll das Scannen ausgehend vom Scanner möglich sein. Ist dann der Scanner der Samba Client und muss auf den drei Rechnern jeweils der Samba-Server installiert werden?
Genaau!
Auf dem Scanner kann ich doch keine Software installieren, so wie ich das verstanden habe wäre der Scanner aber der Samba-Client. Wie soll ich auf dem Scanner die Samba-Client Software installieren?
Gar nicht. Der Scanner hat diese Funktion (bzw. diese Netzwerkprotokolle) schon integriert.
Alternativ kannst Du auch im Drucker nachschauen, ob dieser eventuell FTP unterstützt. Dann nicht etwa Samba, sondern einen FTP-Server installieren und konfigurieren. Mein Kandidat hierfür ist vsftp.
Wie finde ich denn heraus ob mein Drucker FTP unterstützt?
Technische Daten im Handbuch?
Angenommen mein Drucker unterstützt FTP. Welche der von Dir genannten Lösungen wäre denn dann zu bevorzugen und warum? Die Samba Lösung oder die FTP-Lösung?
Ich halte Samba für praktischer, zumal ich sowohl den Samba-Client als auch den Server sowieso auf allen Rechnern hätte, damit die untereinander auch auf Freigaben zugreifen können.
Den Midnight Commander habe ich mir installiert. Wo ist denn eigentlich der Vorteil des Midnight Commanders? Ich dachte entweder nutzt man die Shell oder einen Dateimanager in der Desktop-Umgebung (z.B. Nautilus).
Geschmackssache.
Der Midnight Commander ist doch eigentlich nichts anderes als Nautilus nur halt für die Shell. Warum den Midnight Commander und nicht Nautilus benutzen?
Wie gesagt: Geschmackssache. Der mc hat halt den Vorteil, dass er als Konsolen-Anwendung auch dann noch einsetzbar ist, wenn man keine graphische Oberfläche hat, aber dennoch nicht ausschließlich mit der Kommandozeile agieren möchte.
So long,
Martin
Hallo Martin,
und schonwieder tausend Folgefragen :-)...
sicher? Bei meinen Mint-Installationen war das ganze hplip-Zeugs immer schon in der Standardinstallation "auf Verdacht" mit installiert, und ich hab das immer nachträglich wieder entfernt, weil ich keinen HP-Drucker habe.
Wie kann ich denn bei Mint bzw. Cinnamon schauen welche Pakete installiert sind? Bei Windows gibt es ja eine Möglichkeit sich alle Programme anzuschauen die installiert sind. Geht das bei Linux auch?
Alternativ (vielleicht für Neulinge angenehmer) auch über das GUI-Frontend der Paketverwaltung Synaptic.
Was ist eigentlich der Unterschied zwischen der Anwendungsverwaltung und Synaptic?
Das ist auch im Regelfall nicht nötig. Damit wird die interne Liste der verfügbaren Pakete auf den aktuellen Stand gebracht (apt-get update)
Ich dachte das macht das Linux System von Zeit zu Zeit automatisch?
bzw. verfügbare Updates installiert (apt-get upgrade). Ubuntu und seine Verwandten, also auch Mint, haben aber in der Standardinstallation alle einen Update-Manager laufen, der genau das im Hintergrund periodisch selbständig macht. Deshalb: Normalerweise nicht nötig-
Ah, ich glaub ich weiß was du meinst. In dem Handbuch für Mint Einsteiger (von der Mint Webseite) wird u.a. auch empfohlen Pakete von nicht Mint Quellen auf automatische Updates zustellen. Meinst du das?
Im Prinzip ja. Samba macht im Grunde das, was in Windows als "Datei- und Druckerfreigabe" bekannt ist. Der Samba-Client (der meist auch schon per Default installiert ist) sorgt dafür, dass man auf Netzwerkfreigaben (Verzeichnisse und Drucker) anderer Rechner zugreifen kann, der Samba-Server ist das Gegenstück dazu und dient dazu, Netzwerkfreigaben bereitzustellen. Windows-PCs können auf Samba-Freigaben zugreifen; Linux kann über den Samba-Client auf Windows-Freigaben zugreifen.
Ist nur der Client oder auch der Server per Default installiert. Hier dann wieder die Frage wie ich herausfinden kann welche Pakete auf dem PC installiert sind?
Ich habe drei Rechner im LAN. Auf alle drei Rechner soll das Scannen ausgehend vom Scanner möglich sein. Ist dann der Scanner der Samba Client und muss auf den drei Rechnern jeweils der Samba-Server installiert werden?
Genaau!
Demnach einfach einen Ordner "scans" auf den Rechner im Verzeichnis ~/ ertellen und Freigeben?
Geht das einfach per Rechtsklick auf den Ordner?
Der Rechner ist ja der Samba Server, ist der auch schon per default vorinstalliert oder muss ich den manuell installieren?
Auf dem Scanner kann ich doch keine Software installieren, so wie ich das verstanden habe wäre der Scanner aber der Samba-Client. Wie soll ich auf dem Scanner die Samba-Client Software installieren?
Gar nicht. Der Scanner hat diese Funktion (bzw. diese Netzwerkprotokolle) schon integriert.
Ah OK, und wie erscheinen dann die Rechner auf die ich scannen möchte im Display des Scanners? Von alleine geht das sicherlich nicht ich muss doch da am Scanner irgendwas einstellen oder?
Alternativ kannst Du auch im Drucker nachschauen, ob dieser eventuell FTP unterstützt. Dann nicht etwa Samba, sondern einen FTP-Server installieren und konfigurieren. Mein Kandidat hierfür ist vsftp.
Ich halte Samba für praktischer, zumal ich sowohl den Samba-Client als auch den Server sowieso auf allen Rechnern hätte, damit die untereinander auch auf Freigaben zugreifen können.
Ich werde es wohl per Samba probieren, weil mich das brennend interessiert :-).
Wie gesagt: Geschmackssache. Der mc hat halt den Vorteil, dass er als Konsolen-Anwendung auch dann noch einsetzbar ist, wenn man keine graphische Oberfläche hat, aber dennoch nicht ausschließlich mit der Kommandozeile agieren möchte.
Aus welchem Grund sollte man auf eine GUI verzichten?
Moin!
Wie kann ich denn bei Mint bzw. Cinnamon schauen welche Pakete installiert sind? Bei Windows gibt es ja eine Möglichkeit sich alle Programme anzuschauen die installiert sind. Geht das bei Linux auch?
~> dpkg --get-selections | grep -v deinstall | less
wenn Du nach samba suchen willst:
~> dpkg --get-selections | grep samba
oder: synaptic
Was ist eigentlich der Unterschied zwischen der Anwendungsverwaltung und Synaptic?
Das weiß der Martin. Falls der die "Anwendungsverwaltung" nicht ignoriert und Synaptic benutzt hat.
Ich dachte das macht das Linux System von Zeit zu Zeit automatisch?
Nicht wenn es abgestellt ist, z.B. weil der Rechner am Mobilnetz hängt und megabyteweise Downloads die "Flatrate" binnen 1 Tags ausschöpfen... Bei Laptops die man via USB-Thetering oder mobilen WLAN oder direkt via Mobilfunk an Netz bringt wird man das also abschalten. Möglicherweise wurde das schon beim Setup "abbestellt".
Ist nur der Client oder auch der Server per Default installiert. Hier dann wieder die Frage wie ich herausfinden kann welche Pakete auf dem PC installiert sind?
Wenn /etc/samba/smb.conf existiert und Du nicht erinnern kannst, apt-get remove samba gemacht zu haben, vor allem aber, wenn der Rechner in der Netzwerkumgebung erscheint läuft bereits samba.
Ich habe drei Rechner im LAN. Auf alle drei Rechner ... Demnach einfach einen Ordner "scans" auf den Rechner im Verzeichnis ~/ ertellen und Freigeben?
Geht das einfach per Rechtsklick auf den Ordner?
Hängt vom Dateimanager ab ...
Der Rechner ist ja der Samba Server, ist der auch schon per default vorinstalliert oder muss ich den manuell installieren?
Doppelte Frage. s. oben.
Ah OK, und wie erscheinen dann die Rechner auf die ich scannen möchte im Display des Scanners? Von alleine geht das sicherlich nicht ich muss doch da am Scanner irgendwas einstellen oder?
Womöglich. Das können wir aber nicht wissen, weil Du auf dem Handbuch sitzt und es selbst nicht liest.
Aus welchem Grund sollte man auf eine GUI verzichten?
Weil die GUI oft die Benutzung der eigentlichen Software auf die Möglichkeiten der GUI einschränkt.
Jörg Reinholz
Hi,
Was ist eigentlich der Unterschied zwischen der Anwendungsverwaltung und Synaptic?
Das weiß der Martin. Falls der die "Anwendungsverwaltung" nicht ignoriert und Synaptic benutzt hat.
das weiß er, obwohl der die "Anwendungsverwaltung" ignoriert und Synaptic benutzt hat.
Wobei ich mal davon ausgehe, dass mit Anwendungsverwaltung das Software Center gemeint ist (ich nutze hier die englischsprachige Variante). Das ist nur eine Auswahl der häufigsten, typischen Installationen. Sie bietet daher nur eine recht grobe Auswahl, keine gezielte Auswahl von einzelnen Paketen. Und sie hatte früher mal das Problem, dass sie beim Deinstallieren von Software nicht alle Abhängigkeiten berücksichtigt hat und daher gelegentlich andere Pakete, die die gleichen Bibliotheken brauchen, funktionsunfähig zurückgelassen hat. Ob das immer noch so ist, weiß ich nicht.
Ich dachte das macht das Linux System von Zeit zu Zeit automatisch?
Das apt-get update? Ja, normalerweise schon. Aber:
Nicht wenn es abgestellt ist, z.B. weil der Rechner am Mobilnetz hängt und megabyteweise Downloads die "Flatrate" binnen 1 Tags ausschöpfen... Bei Laptops die man via USB-Thetering oder mobilen WLAN oder direkt via Mobilfunk an Netz bringt wird man das also abschalten. Möglicherweise wurde das schon beim Setup "abbestellt".
Ist nur der Client oder auch der Server per Default installiert. Hier dann wieder die Frage wie ich herausfinden kann welche Pakete auf dem PC installiert sind?
Wenn /etc/samba/smb.conf existiert und Du nicht erinnern kannst, apt-get remove samba gemacht zu haben, vor allem aber, wenn der Rechner in der Netzwerkumgebung erscheint läuft bereits samba.
ACK. Zum Default-Installationsumfang gehört der Samba-Server aber nicht.
Aus welchem Grund sollte man auf eine GUI verzichten?
Weil die GUI oft die Benutzung der eigentlichen Software auf die Möglichkeiten der GUI einschränkt.
Anderer Grund: Weil der X-Server und/oder Grafikkartentreiber mal nicht funktioniert. Oder weil man nur per ssh einen Shell-Zugang zum fraglichen Rechner hat.
So long,
Martin
Moin!
Bezogen auf die Shell bin ich noch ein Neuling. Was du mit dem „apt-get install“ machst ist mir klar, warum allerdings „apt-get update“ und „apt-get upgrade“ vorher ausgeführt werden müssen ist mir nicht klar, obwohl ich mir folgenden Artikel angeschaut habe:
apt-get update: holt die Beschreibung der im Repostority abgelegten Programmpakete (und Updates)
apt-get upgrade: Macht ein Update der installierten Programme (und Dateien)
Beides zu machen ist eine gute Idee, wenn Du Software installierst, denn die Softwarepakte haben Abhängigkeiten. Gerade im Hinblick auch Deine Frage wäre es wahrscheinlich, dass Da was installiert wird, das auch die aktualisierte Version einer anderen Software verlangt - was dann zu Rückfragen führt, die ich vermeiden wollte. Das ist der Fall, den Martin als den Rest vom "eigentlich" gelassen hat.
Warum brauche ich denn Samba für mein Vorhaben? Kann ich nicht einfach einen Ordner im Linux System freigeben auf den der Drucker dann seine Scans ablegen kann? Das wäre doch viel einfacher oder nicht?
Mit Samba macht man zunächst mal (smb-)Freigaben für Windows-Rechner. Ich denke, der Drucker kann genau damit (und eventuell FTP) gut umgehen.
Ich kenne Dein System nicht. Kann sein, dass Samba bereits installiert ist und dass Du irgendein (grafisches) Tool hast, mit welchem dann die Freigaben vermittels Mausklickerei eingerichtet werden. Sowas haben viele Desktop-Linuxe. Aber eben nicht jedes. Deshalb gehe ich immer den nur scheinbar mühseligen "Fußweg" und mache das, was a) mit jedem Linux klappt und b) mir die Möglichkeit bietet, die Kontrolle auch über "versteckte" Eigenschaften zu haben.
Samba brauchst Du, weil der Drucker die gescannte(n) Datei(en) ja irgendwo ablegen soll. Hat er dafür keinen eigenen Speicher (z.B. USB-Stick) und dann keinen eigenen Server (HP würde wohl Samba benutzen...) muss das was sein, was Windows-Clients auch erreichen können: Also FTP oder eben Windows-Freigaben, die als "smb" ("Server Message Block"-Protokoll, inzwischen rotzfrech von Microsoft "cifs - common internet file system" genannt...)
Ach so: Wie ich samba einrichten würde:
~> sudo -s
## Holt Root (Admin)-Rechte
#> mkdir /var/lib/scanner/
#> mkdir /var/lib/scanner/HP_Office_Jet_8620_Pro
## legt Verzeichnis(se) an, Grund: es könnte mehr als einen Scanner geben
#> useradd -M -N -g scanner -d /var/lib/scanner/HP_Office_Jet_8620_Pro -s /usr/sbin/nologin /HP_Office_Jet_8620_Pro
## [ab useradd eine Zeile] legt einen Benutzer "HP_Office_Jet_8620_Pro"
## für den Drucker an
## Gruppe: scanner
## Home-Dir: /var/lib/scanner/HP_Office_Jet_8620_Pro
## Kann sich nicht anmelden
#> smbpasswd -a HP_Office_Jet_8620_Pro
## gibt ihm ein Passwort für samba (zweimal eingeben, gut merken)
## Achtung: Der Benutzer bekommt kein(!) unix-Passwort, soll und kann sich nicht lokal anmelden.
## Das wird auch durch das /usr/sbin/nologin als Shell so festgelegt.
#> chown root:scanner /var/lib/scanner
#> chmod 750 /var/lib/scanner
## gibt der Gruppe scanner das Recht, das Verzeichnis zu lesen und zu betreten
#> chown HP_Office_Jet_8620_Pro:scanner /var/lib/scanner/HP_Office_Jet_8620_Pro
#> chmod 770 /var/lib/scanner/HP_Office_Jet_8620_Pro
## gibt dem Scanner und der Gruppe scanner volle Rechte am Verzeichnis
##(Lesen des Inhalts, Hinzufügen von Dateien, Löschen)
#> exit ## Niemals eine root-shell stehen lassen! Das ist auch Schutz vor eigener Dummheit!
Hinweis: "~>" Prompt für normalen benutzer
Hinweis: "#>" Prompt für root
Hinweis: "##" Kommentar
dann in /etc/samba/smb.conf folgenden Eintrag anlegen:
[HP_Office_Jet_8620_Pro]
comment = "HP Office Jet 8620 Pro - Scanner"
path = /var/lib/scanner/HP_Office_Jet_8620_Pro
browseable = yes
writable = yes
guest ok = no
directory mask = 0770 # Falls der Drucker Unterverzeichnisse anlegen möchte
create mask = 0660 # Nur der Drucker selbst und die Benutzer der Gruppe scanner
# dürfen an den Dateien fummeln oder diese auch nur lesen.
Danach, im Terminal:
~> sudo service smbd reload # samba soll seine Konfiguration einlesen
Der Ordner sollte jetzt als Freigabe in der Netzwerkumgebung auftauchen - falls Dein Dateimanager das kann. Probehalber als Benutzer HP_Office_Jet_8620_Pro mit dem Passwort anmelden. Wenn das klappt, den Drucker ebenfalls so konfigurieren.
Angenommen mein Drucker unterstützt FTP. Welche der von Dir genannten Lösungen wäre denn dann zu bevorzugen und warum? Die Samba Lösung oder die FTP-Lösung?
FTP wäre schneller - aber der Datentransport unverschlüsselt. Auf Windows-Rechnern kann der Zugriff ungewohnt sein. Auf ganz alten Windows-Rechnern ist zusätzliche Software notwendig - allerdings (und ab hier hat das mit Deiner Frage gar nichts mehr zu tun *) würde ich unter Windows ohnehin winscp installieren um Zugriff auf Linux/Unix-Systeme mit openssh zu haben (dann aber mit scp bzw. sftp).
*) Ich glaube nicht, dass der Drucker ssh/scp/sftp unterstützt, das wäre auch entweder sehr unbequem (Jedes Mal Passwort eingaben) oder sehr aufwendig und dann doch unsicher (Passwort oder Schlüssel ungesichert auf dem Drucker speichern... und Zugriff auf das komplette Dateisystem mit allen Rechten des Benutzers möglich, was viel zu viel sein kann.)
Jörg Reinholz
Hallo,
Ich kenne Dein System nicht. Kann sein, dass Samba bereits installiert ist und dass Du irgendein (grafisches) Tool hast, mit welchem dann die Freigaben vermittels Mausklickerei eingerichtet werden.
aber ich kenne Linux Mint, da ich es selbst seit Jahren nutze. Der Samba-Client ist in der Default-Installation bereits dabei, der Samba-Server nicht. Von einem GUI dazu ist mir nichts bekannt, aber IIRC hat Ubuntu sowas.
Deshalb gehe ich immer den nur scheinbar mühseligen "Fußweg" und mache das, was a) mit jedem Linux klappt und b) mir die Möglichkeit bietet, die Kontrolle auch über "versteckte" Eigenschaften zu haben.
Halte ich auch für eine gute Strategie.
Bei deinem Beispiel für die Konfiguration hast du aber IMO einen wichtigen Punkt nicht bedacht: Das Verzeichnis, in dem die Scans abgelegt werden, soll ja auch für den normalen, interaktiven Nutzer zugänglich sein, vorzugsweise mit Vollzugriff (rwx). Dazu könnte man entweder die Rechte an diesem Verzeichnis abweichend von deinem Beispiel uf 0777 setzen (Vollzugriff für alle), oder den/die lokalen Benutzer noch der Gruppe scanner hinzufügen - wobei ich die zweite Methode für schlauer halte.
~> sudo service smbd reload # samba soll seine Konfiguration einlesen
Gut gedacht, aber nicht erforderlich. Samba liest und interpretiert seine Konfigurationsdatei automatisch bei jedem Zugriff neu.
Die Samba Lösung oder die FTP-Lösung?
FTP wäre schneller
Hä? Warum das?
Selbst wenn das so wäre (und mir ist schleierhaft, warum das so sein sollte), ist auch Samba so schnell, dass andere Faktoren das Limit setzen würden, am wahrscheinlichsten die Bandbreite des Netzwerks.
So long,
Martin
Moin!
oder den/die lokalen Benutzer noch der Gruppe scanner hinzufügen - wobei ich die zweite Methode für schlauer halte.
Ups. So hatte ich mir das auch gedacht. Bei meinem USB-Scanner geht es auch nicht anders.
~> sudo service smbd reload # samba soll seine Konfiguration einlesen
Gut gedacht, aber nicht erforderlich. Samba liest und interpretiert seine Konfigurationsdatei automatisch bei jedem Zugriff neu.
Das werde ich gleich mal testen … (Minuten später: Tatsächlich!)
FTP wäre schneller
Hä? Warum das?
So oder so: weniger Overhead. (keine Transportverschlüsselung, keine Beachtung eines zweiten, umfangreichen Rechtesystems …
Einige Quellen sprechen von teils erheblichen Performanceproblemen bei samba. Insbesondere von einer recht hohen CPU-Last. Andererseits sollte das bei den Transportmengen (nur ein paar MB und gerade keine CD/DVD-Images) nicht so gravierend sein.
Test:
Samba: 1.2 MiB/s
SSH: 1.1 MiB/s
FTP: 1,3 MiB/s
Das ist auch mit 100 MBit/s (mehr kann der Raspi nicht) viel zu wenig. Irgendwie hat das Netz vom raspi ein Problem (mtr sagt aber, alle Datenpakete kommen an, ein versuch auf dem Raspi mit ssh localhost brachte deutlich mehr Durchsatz, weshalb ich die Platte (ext4) und usb ausschließen kann). Fazit: Ich brauch was besseres zum Messen.
Jörg Reinholz
Hallo,
~> sudo service smbd reload # samba soll seine Konfiguration einlesen
Gut gedacht, aber nicht erforderlich. Samba liest und interpretiert seine Konfigurationsdatei automatisch bei jedem Zugriff neu.
Das werde ich gleich mal testen … (Minuten später: Tatsächlich!)
ich weiß es aus der Samba-Doku. :-)
FTP wäre schneller
Hä? Warum das?
So oder so: weniger Overhead. (keine Transportverschlüsselung, keine Beachtung eines zweiten, umfangreichen Rechtesystems …
Naja, okay. Ob das tatsächlich spürbar ist? Denn soweit ich weiß, werden bei Samba bzw. im Windows-Netzwerk auch nur die Anmeldedaten verschlüsselt übertragen, aber nicht die Nutzdaten.
Test:
Samba: 1.2 MiB/s
SSH: 1.1 MiB/s
FTP: 1,3 MiB/s
Huch. Warum sind die Zahlen so niedrig? Ich erreiche mit Samba über 100Mbit-Ethernet das theoretische Maximum von etwas mehr als 10MB/s, auch mit'm Raspi liege ich in der Größenordnung (noch das alte Modell mit der 700MHz-CPU), bei einem Gigabit-Ethernet von PC zu PC sogar 60..80MB/s. Den Vergleich mit anderen Protokollen habe ich aber noch nie gemacht.
Das ist auch mit 100 MBit/s (mehr kann der Raspi nicht) viel zu wenig. Irgendwie hat das Netz vom raspi ein Problem
Offensichtlich. Das ist deutlich zu wenig.
So long,
Martin
Moin!
Das ist auch mit 100 MBit/s (mehr kann der Raspi nicht) viel zu wenig. Irgendwie hat das Netz vom raspi ein Problem
Offensichtlich. Das ist deutlich zu wenig.
Behoben. Es lag wohl am Tuning. Nachdem ich die Einträge in der config.txt rausgenommen habe rennt das Netz wieder. Scheinbar waren sich der Prozessor und der Netzwerkchip bei der Frequenz von 1,1 Gigaherz nicht "grün".
Ich hab aber noch was anderes getan.
Jörg Reinholz
Moin!
So. Neue Zahlen:
Wie gesagt: Ein Raspi, der nur 100 MBit kann.
Jörg Reinholz
Hallo Jörg,
danke für die tolle Anleitung, da hab ich was zu tun zumal ich das ja alles im Detail verstehen möchte. Ich geb Dir in den nächsten Tagen auf jedenfall Rückmeldung.
Danke nochmal :-).
sudo -s
Bei mir sieht die Shell irgendwie anders aus. Statt „~>“ seht bei mir „karlheinz@desktop ~ $“. Warum sieht die Shell hier bei mir anders aus als bei Dir?
Nachdem ich mir durch „sudo –s“ die Root-Rechte geholt habe sieht meine Shell ebenfalls anders auf als Deine. Statt „#>“ steht bei mir „desktop ~ #“. Warum sieht die Shell hier bei mir anders aus als bei Dir?
mkdir /var/lib/scanner/ mkdir /var/lib/scanner/HP_Office_Jet_8620_Pro
Warum erstellst du das Verzeichnis „scanner“ im Verzeichnis „/var/lib“? Hat das einen bestimmten Grund?
useradd -M -N -g scanner -d /var/lib/scanner/HP_Office_Jet_8620_Pro -s /usr/sbin/nologin /HP_Office_Jet_8620_Pro
Warum verwendest du useradd und nicht addsuser? Die Ubuntu-Dokumentation sagt man sollte auf Sicherheitsgründen besser adduser verwenden.
Ziemlich kompliziert diese Zeile für einen Anfänger. Hab Sie für mich mal etwas übersichtlicher dargestellt.
useradd
-M kein Homeverzeichnis erstellen
-N keine Gruppe mit Nutzernamen aber fügt -g Gruppe hinzu
-g scanner Name der Gruppe des Nutzers
-d /var/lib/scanner/HP_Office_Jet_8620_Pro Heimatverzeichnis der Nutzers
-s /usr/sbin/nologin Standardshell (kann sich nicht anmelden)
/HP_Office_Jet_8620_Pro Benutzername
Mit –M sorgst du dafür das kein Homeverzeichnis erzeugt wird, mit –d sagst du dann das doch ein Homeverzeichnis erzeugt werden soll, ziemlich verwirrend für mich als Einsteiger
mit –N sagst du das keine Gruppe die genauso wie der Nutzername heißt erstellt werden soll, stattdessen fügst du den neuen Nutzer der Gruppe hinzu die bei –g (das ist dann die Gruppe scanner) angegeben ist. Bedeutet das ohne die Option –N würde der neue Nutzer zum einen der Gruppe scanner und zum anderen der Gruppe die genauso wie der Nutzer heißt hinzugefügt werden?
Laut MAN-Page kann ich mit –s ja die Standard-Shell festlegen. Das heißt wenn der Nutzer keine Möglichkeit haben soll sich per Shell anzumelden muss ich dieses /usr/sbin/nologin angeben oder?
Warum verwendest du beim Benutzernamen „/HP_Office_Jet_8620_Pro Benutzername“ und nicht „HP_Office_Jet_8620_Pro Benutzername“ ohne den führenden „/“?
Wenn ich diese Zeile fertig vor mir sehen ist sie „relativ“ intuitiv. Wie in Gottes Namen schaffst du es sowas einfach so runter zu tippen. Reine Erfahrung? Bei den zig Optionen vergisst man doch fast immer die Hälfte?
smbpasswd -a HP_Office_Jet_8620_Pro
soweit verstanden
chown root:scanner /var/lib/scanner
Wenn ich das richtig verstanden haben wird wir auf einen Schlag sowohl der Benutzer als auch die Gruppe des Verzeichnisses /var/lib/scanner geändert. Konkrete bedeutet das das der neue Besitzer des Verzeichnisses /var/lib/scanner nun root ist und das die neue Gruppe des Verzeichnisse /var/lib/scanner nun scanner ist. Hab ich das so richtig verstanden?
chmod 750 /var/lib/scanner
Der Besitzer der Verzeichnisses darf alles (repräsentiert durch die 7), die Gruppe des Verzeichnisses (scanner) darf lesen und ausführen (repräsentiert durch die 5), der Rest darf nichts (repräsentiert durch die 0). Habe ich das so richtig erklärt?
chown HP_Office_Jet_8620_Pro:scanner /var/lib/scanner/HP_Office_Jet_8620_Pro
Hier verstehe ich nicht was diese Zeile soll. Mit „chown root:scanner /var/lib/scanner“ wurden doch Bereits die Nutzer und die Gruppe des übergeordneten Verzeichnisses geändert. Warum dann nochmal für das Verzeichnis darunter und dann och mit anderen Besitzern und Gruppen ändern
chmod 770 /var/lib/scanner/HP_Office_Jet_8620_Pro
Du Schreibst „dem Scanner UND der Gruppe scanner“, was mit der Gruppe scanner gemeint ist kann ich nachvollziehen, diese haben wir ja oben angelegt, was du mit „dem Scanner“ meinst weiß ich allerdings nicht. Eine Benutzer, das Gerät selbst oder, oder, oder?
Alles in allem finde ich die Kommandos ziemlich kompliziert. Ich hätte hier die Hälfte vergessen.
Angenommen ich habe das Verzeichnis über Samba so freigegeben wie von Dir beschrieben, hätte ich dann nicht vorher den Samba-Server auf dem PC installieren müssen? Per Default ist doch nur der Samba-Client bei Mint installiert.
Angenommen das neue Verzeichnis existiert und ist korrekt per Samba freigegeben. Nun stehe ich vor dem Drucker und möchte in diese Verzeichnis scannen. Der Drucker entdeckt das freigegebene Verzeichnis doch nicht von alleine. In der Drucker Doku finde ich dazu auch nichts, die bezieht sich nur auf Windows. Deshalb die Frage. Was muss ich tun, damit das freigegebene Samba-Verzeichnis auf den Display des Druckers erscheint?
Hallo
Bei mir sieht die Shell irgendwie anders aus. Statt „~>“ seht bei mir „karlheinz@desktop ~ $“. Warum sieht die Shell hier bei mir anders aus als bei Dir?
Er benutzt eine andere Linux-Distribution (Debian, wenn ich nicht irre).
Nachdem ich mir durch „sudo –s“ die Root-Rechte geholt habe sieht meine Shell ebenfalls anders auf als Deine. Statt „#>“ steht bei mir „desktop ~ #“. Warum sieht die Shell hier bei mir anders aus als bei Dir?
Er benutzt immer noch eine andere Linux-Distribution.
merke dir einfach, dass, wenn „$“ zu sehen ist, eine Session des angemeldeten Benutzers läuft und wenn es „#“ ist, eine Root-Session läuft.
Tschö, Auge
Hallo,
Bei mir sieht die Shell irgendwie anders aus. Statt „~>“ seht bei mir „karlheinz@desktop ~ $“.
ja, das ist die Standardeinstellung.
Warum sieht die Shell hier bei mir anders aus als bei Dir?
Weil Jörg sich das abweichend vom Standard so eingestellt hat, warum auch immer.
Nachdem ich mir durch „sudo –s“ die Root-Rechte geholt habe sieht meine Shell ebenfalls anders auf als Deine. Statt „#>“ steht bei mir „desktop ~ #“. Warum sieht die Shell hier bei mir anders aus als bei Dir?
Auch das ist normal. Der Standard-Prompt endet auf '$' für einen normalen Nutzer, und auf '#' für root.
useradd -M -N -g scanner -d /var/lib/scanner/HP_Office_Jet_8620_Pro -s /usr/sbin/nologin /HP_Office_Jet_8620_Pro
Ziemlich kompliziert diese Zeile für einen Anfänger. Hab Sie für mich mal etwas übersichtlicher dargestellt.
useradd -M kein Homeverzeichnis erstellen -N keine Gruppe mit Nutzernamen aber fügt -g Gruppe hinzu -g scanner Name der Gruppe des Nutzers -d /var/lib/scanner/HP_Office_Jet_8620_Pro Heimatverzeichnis der Nutzers -s /usr/sbin/nologin Standardshell (kann sich nicht anmelden) /HP_Office_Jet_8620_Pro Benutzername
Korrekt so. Ja klar, in der Kommandozeile muss halt alles schon in eine Zeile. Darunter leidet manchmal die Übersichtlichkeit etwas.
Mit –M sorgst du dafür das kein Homeverzeichnis erzeugt wird, mit –d sagst du dann das doch ein Homeverzeichnis erzeugt werden soll, ziemlich verwirrend für mich als Einsteiger
Stimmt auch nicht ganz. Mit -M erreicht man in der Tat, dass kein home-Verzeichnis in /home angelegt wird. Mit -d gibt man stattdessen ein anderes, bereits existierendes an.
mit –N sagst du das keine Gruppe die genauso wie der Nutzername heißt erstellt werden soll, stattdessen fügst du den neuen Nutzer der Gruppe hinzu die bei –g (das ist dann die Gruppe scanner) angegeben ist. Bedeutet das ohne die Option –N würde der neue Nutzer zum einen der Gruppe scanner und zum anderen der Gruppe die genauso wie der Nutzer heißt hinzugefügt werden?
Korrekt.
Laut MAN-Page kann ich mit –s ja die Standard-Shell festlegen. Das heißt wenn der Nutzer keine Möglichkeit haben soll sich per Shell anzumelden muss ich dieses /usr/sbin/nologin angeben oder?
Ja, das ist der übliche Eintrag für nicht-interaktive User.
Warum verwendest du beim Benutzernamen „/HP_Office_Jet_8620_Pro Benutzername“ und nicht „HP_Office_Jet_8620_Pro Benutzername“ ohne den führenden „/“?
Oh. Gut beobachtet. Das soll uns Jörg bitte selbst erklären. Ich vermute auch, dass das ein Tippfehler ist.
Wenn ich diese Zeile fertig vor mir sehen ist sie „relativ“ intuitiv. Wie in Gottes Namen schaffst du es sowas einfach so runter zu tippen. Reine Erfahrung? Bei den zig Optionen vergisst man doch fast immer die Hälfte?
Wenn ich mir nicht sicher bin, rufe ich das Kommande meist erstmal nur mit dem Schalter --help auf. Fast alle Kommandozeilentools geben dann eine kurze Zusammenfassung der Syntax, der verfügbaren Switches und ihrer Bedeutung aus. Oft ist es tatsächlich so, dass man sich diffus erinnert, "Mann, da war irgendwas, wie ging das noch?", und dann genügt die Kurzreferenz.
chown root:scanner /var/lib/scanner
Wenn ich das richtig verstanden haben wird wir auf einen Schlag sowohl der Benutzer als auch die Gruppe des Verzeichnisses /var/lib/scanner geändert. Konkrete bedeutet das das der neue Besitzer des Verzeichnisses /var/lib/scanner nun root ist und das die neue Gruppe des Verzeichnisse /var/lib/scanner nun scanner ist. Hab ich das so richtig verstanden?
Ja.
chmod 750 /var/lib/scanner
Der Besitzer der Verzeichnisses darf alles (repräsentiert durch die 7), die Gruppe des Verzeichnisses (scanner) darf lesen und ausführen (repräsentiert durch die 5), der Rest darf nichts (repräsentiert durch die 0). Habe ich das so richtig erklärt?
Ja.
chown HP_Office_Jet_8620_Pro:scanner /var/lib/scanner/HP_Office_Jet_8620_Pro
Hier verstehe ich nicht was diese Zeile soll. Mit „chown root:scanner /var/lib/scanner“ wurden doch Bereits die Nutzer und die Gruppe des übergeordneten Verzeichnisses geändert. Warum dann nochmal für das Verzeichnis darunter und dann och mit anderen Besitzern und Gruppen ändern
Das übergeordnete Verzeichnis /var/lib/scanner wird dem root-Benutzer "geschenkt", da es in diesem Beispiel als Container für mehrere denkbare Scanner herhalten soll. Der Scanner-Nutzer selbst soll aber nur Rechte an "seinem" eigenen Verzeichnis haben.
chmod 770 /var/lib/scanner/HP_Office_Jet_8620_Pro
Du Schreibst „dem Scanner UND der Gruppe scanner“, was mit der Gruppe scanner gemeint ist kann ich nachvollziehen, diese haben wir ja oben angelegt, was du mit „dem Scanner“ meinst weiß ich allerdings nicht. Eine Benutzer, das Gerät selbst oder, oder, oder?
Der individuelle Benutzer HP_Office_Jet_8620_Pro, den wir im ersten Schritt mit useradd angelegt haben.
Angenommen ich habe das Verzeichnis über Samba so freigegeben wie von Dir beschrieben, hätte ich dann nicht vorher den Samba-Server auf dem PC installieren müssen?
Selbstverständlich. Ich dachte, das hätten wir schon geklärt.
Angenommen das neue Verzeichnis existiert und ist korrekt per Samba freigegeben. Nun stehe ich vor dem Drucker und möchte in diese Verzeichnis scannen. Der Drucker entdeckt das freigegebene Verzeichnis doch nicht von alleine. In der Drucker Doku finde ich dazu auch nichts, die bezieht sich nur auf Windows.
Das macht nichts. Denn "von außen", also von der Netzwerkseite her, sieht ein Samba-Server genauso aus wie ein Windows-PC mit Verzeichnisfreigaben. Das ist Absicht, Samba tut quasi so, als wäre er ein Windows-Server. Wenn du am Drucker/Scanner stehst, kannst du also tatsächlich so tun, als wäre der Rechner, auf dem das gescannte Dokument landen soll, ein Windows-PC.
So long,
Martin