Skip to content

NAS - Cups & Sane

Linux
  • Mal wieder mit einem alten Thema beschäftigen. Cups - Raspberry als Druckdaemon

    Eigentlich unnötig bei mir zu Hause, aber ab und zu kann man das doch gebrauchen. Und da ich ja mit dem NAS ein Gerät hier rumstehen habe, was sich fast nur langweilt, kann man dem ja ein paar Aufgaben übertragen. Ich habe eine S/W Multifunktionsdrucker von Samsung Typ SCX-3205 hier stehen.

    Der Druckdaemon CUPS ist schon installiert, damit wir Zugriff aufs Webinterface bekommen muss man in der Konfig-Datei was einstellen.

    nano /etc/cups/cupsd.conf
    

    Inhalt der Datei

    <Location />
     # Allow remote administration...
     Allow 192.168.3.213
     Order allow,deny
    </Location>
    
    <Location /admin>
     # Allow remote administration...
     Allow 192.168.3.213
     Order allow,deny
    </Location>
    

    Um den Remote-Zugriff zu ermöglichen, fügt man in der Konsole folgendes ein.

    cupsctl --remote-admin
    

    Danach solltet ihr das Webinterface mittels

    https://192.168.X.XXX:631
    

    erreichen.

    Wenn man nach Userdaten gefragt wird, gibt man den Rootaccount des NAS an.

    Nun wird der Drucker hinzugefügt, ich verweise noch mal auf den Artikel Cups - Raspberry als Druckdaemon, dort habe ich das schon mal erklärt. Was dort aber fehlt ist, was macht man wenn der Drucker nicht in der Auswahlliste erscheint? Dann braucht man den Linuxtreiber für das entsprechende Modell. Bei meinem Modell kein Problem, kann ich die Datei doch einfach runterladen. Die Datei muss dann ausgepackt werden.

    tar zxvf uld_v1.00.36_00.91.tar.gz
    

    Dann in den Ordner uld wechseln

    cd uld
    

    Dann den Treiber installieren.

    ./install.sh
    

    Danach ein paar Eingaben machen und der Treiber ist installiert. Nun kann man das richtige Druckermodell auswählen. Erledigt.

    Tipp

    Damit das bei mir alles richtig funktionierte, habe ich die Rechner einmal komplett neugestartet.

    Auf dem Client taucht jetzt der freigegebene Drucker automatisch auf, diesen auswählen und als Standard markieren. Testseite drucken und fertig.

    Da mein Drucker auch scannen kann, kam ich auf die Idee das auch mal auszuprobieren. Ergebnis, kein Scanner gefunden 😞 Google brachte mich dann relativ schnell ans Ziel. Dafür gibt es unter Linux das Programm Sane. Sane ist auf dem NAS schon installiert. Für die entsprechende Konfiguration verweise ich mal auf

    https://wiki.debian.org/SaneOverNetwork
    

    Einstellungen wie in der Anleitung vorgenommen, wollte aber nicht. Der Tipp weiter oben, hat auch hier geholfen 😉

    Wichtig. Auf dem NAS

    nano /etc/sane.d/saned.conf
    

    Inhalt

    ## Access list
    # A list of host names, IP addresses or IP subnets (CIDR notation) that
    # are permitted to use local SANE devices. IPv6 addresses must be enclosed
    # in brackets, and should always be specified in their compressed form.
    #
    # The hostname matching is not case-sensitive.
    
    #scan-client.somedomain.firm
    192.168.3.1/24
    #[2001:db8:185e::42:12]
    #[2001:db8:185e::42:12]/64
    

    Die Rechner/Netzwerke freigeben, die Scannen dürfen. Danach Sane durchstarten.

     /etc/init.d/saned restart
    

    Eine sehr nette Anleitung mit ein paar weiterführenden Tipps findet man auf folgender Seite
    http://mein.homelinux.com/wiki/dienste/sane

    Client-Konfiguration

    Auf dem Client muss in der Datei /etc/sane.d/net.conf das Ziel angegeben werden.

    nano /etc/sane.d/net.conf
    

    Der Inhalt des Files sieht wie folgt aus:

    # This is the net backend config file.
    
    ## net backend options
    # Timeout for the initial connection to saned. This will prevent the backend
    # from blocking for several minutes trying to connect to an unresponsive
    # saned host (network outage, host down, ...). Value in seconds.
    # connect_timeout = 60
    
    ## saned hosts
    # Each line names a host to attach to.
    # If you list "localhost" then your backends can be accessed either
    # directly or through the net backend. Going through the net backend
    # may be necessary to access devices that need special privileges.
    # localhost
    192.168.3.xxx #IP-Adresse NAS
    

    Danach sucht der Client den Scanner auch an der richtigen Adresse!

    Fazit

    Mein nicht netzwerkfähiger Drucker hängt nun mittels USB am NAS und stellt seine Dienste mittels CUPS und SANE im lokalen Netzwerk zur Verfügung. Recht praktisch wenn man gelegentlich was vom Notebook ausdrucken oder scannen möchte. Da das NAS hier sowieso 24/7 unter Dampf ist, bot sich das an es so einzurichten.

  • Raspberry Pi5 - Netzteil

    RaspberryPi
    1
    0 Stimmen
    1 Beiträge
    168 Aufrufe
    Niemand hat geantwortet
  • 0 Stimmen
    1 Beiträge
    532 Aufrufe
    Niemand hat geantwortet
  • ASRock N100M

    Linux
    9
    0 Stimmen
    9 Beiträge
    1k Aufrufe
    FrankMF

    Angekommen 🙂 Jetzt noch den Umzug vorbereiten und dann kann es losgehen. Aktuell ist es aber zu warm zum Basteln..

    20230711_164434_ergebnis.jpg

  • Redis - Datenbanken löschen

    Redis
    1
    0 Stimmen
    1 Beiträge
    149 Aufrufe
    Niemand hat geantwortet
  • 0 Stimmen
    17 Beiträge
    1k Aufrufe
    FrankMF

    Durch diesen Beitrag ist mir mal wieder eingefallen, das wir das erneut testen könnten 😉

    Also die aktuellen Daten von Debian gezogen. Das Image gebaut, könnt ihr alles hier im ersten Beitrag nachlesen. Da die eingebaute Netzwerkschnittstelle nicht erkannt wurde, habe ich mal wieder den USB-to-LAN Adapter eingesetzt.

    Bus 005 Device 002: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet

    Die Installation wollte ich auf einem NVMe Riegel installieren.

    Die Debian Installation durchgezogen und nach erfolgreicher Installation neugestartet. Und siehe da, ohne das man alles möglich ändern musste, bootete die NVMe SSD 🤓

    Eingesetzter uboot -> 2020.01-ayufan-2013......

    Die nicht erkannte LAN-Schnittstelle müsste an nicht freien Treibern liegen, hatte ich da irgendwo kurz gelesen. Beim Schreiben dieses Satzes kam die Nacht und ich konnte noch mal drüber schlafen. Heute Morgen, beim ersten Kaffee, dann noch mal logischer an die Sache ran gegangen.

    Wir schauen uns mal die wichtigsten Dinge an.

    root@debian:~# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether 62:03:b0:d6:dc:b3 brd ff:ff:ff:ff:ff:ff 3: enx000acd26e2c8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0a:cd:26:e2:c8 brd ff:ff:ff:ff:ff:ff inet 192.168.3.208/24 brd 192.168.3.255 scope global dynamic enx000acd26e2c8 valid_lft 42567sec preferred_lft 42567sec inet6 fd8a:6ff:2880:0:20a:cdff:fe26:e2c8/64 scope global dynamic mngtmpaddr valid_lft forever preferred_lft forever inet6 2a02:908:1260:13bc:20a:xxxx:xxxx:xxxx/64 scope global dynamic mngtmpaddr valid_lft 5426sec preferred_lft 1826sec inet6 fe80::20a:cdff:fe26:e2c8/64 scope link valid_lft forever preferred_lft forever

    Ok, er zeigt mir die Schnittstelle eth0 ja an, dann kann es an fehlenden Treibern ja nicht liegen. Lässt dann auf eine fehlerhafte Konfiguration schließen. Nächster Halt wäre dann /etc/network/interfaces

    Das trägt Debian ein

    # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug enx000acd26e2c8 iface enx000acd26e2c8 inet dhcp # This is an autoconfigured IPv6 interface iface enx000acd26e2c8 inet6 auto

    Gut, bei der Installation hat Debian ja nur die zusätzliche Netzwerkschnittstelle erkannt, folgerichtig ist die auch als primäre Schnittstelle eingetragen. Dann ändern wir das mal...

    # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface #allow-hotplug enx000acd26e2c8 allow-hotplug eth0 #iface enx000acd26e2c8 inet dhcp iface eth0 inet dhcp # This is an autoconfigured IPv6 interface #iface enx000acd26e2c8 inet6 auto iface eth0 inet6 auto

    Danach einmal alles neu starten bitte 😉

    systemctl status networking

    Da fehlte mir aber jetzt die IPv4 Adresse, so das ich einmal komplett neugestartet habe. Der Ordnung halber, so hätte man die IPv4 Adresse bekommen.

    dhclient eth0

    Nachdem Neustart kam dann das

    root@debian:/etc/network# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 62:03:b0:d6:dc:b3 brd ff:ff:ff:ff:ff:ff inet 192.168.3.172/24 brd 192.168.3.255 scope global dynamic eth0 valid_lft 42452sec preferred_lft 42452sec inet6 fd8a:6ff:2880:0:6003:b0ff:fed6:dcb3/64 scope global dynamic mngtmpaddr valid_lft forever preferred_lft forever inet6 2a02:908:1260:13bc:6003:xxxx:xxxx:xxxx/64 scope global dynamic mngtmpaddr valid_lft 5667sec preferred_lft 2067sec inet6 fe80::6003:b0ff:fed6:dcb3/64 scope link valid_lft forever preferred_lft forever 3: enx000acd26e2c8: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether 00:0a:cd:26:e2:c8 brd ff:ff:ff:ff:ff:ff

    Fertig, eth0 läuft. Nun kann man den zusätzlichen Adapter entfernen oder halt konfigurieren, wenn man ihn braucht.

    Warum der Debian Installer die eth0 nicht erkennt verstehe ich nicht, aber vielleicht wird das irgendwann auch noch gefixt. Jetzt habe ich erst mal einen Workaround um eine Installation auf den ROCKPro64 zu bekommen.

  • 0 Stimmen
    1 Beiträge
    224 Aufrufe
    Niemand hat geantwortet
  • 0 Stimmen
    1 Beiträge
    154 Aufrufe
    Niemand hat geantwortet
  • Linux Befehle - ls & tail

    Linux
    1
    0 Stimmen
    1 Beiträge
    330 Aufrufe
    Niemand hat geantwortet