Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Serwer drukarki na terminalu z Linuxem

ziooober88 09 May 2015 21:04 1440 16
  • #1
    ziooober88
    Level 15  
    Witam, posiadam terminal HP t5720 z wgranym debianem. Podczas instalacji dałem aby się zainstalował serwer drukarki. Linux jest w wersji tekstowej bez grafiki. I teraz chciałem się dowiedzieć czy jest możliwość aby podłączyć drukarkę do terminala z linuxem i zrobić z niej drukarkę sieciową, która chodziłaby 24h? System na terminalu musi być taki jaki jest, nie ma możliwości zmiany. Czy istnieje możliwość skonfigurowanie takiego czegoś jeśli tak to jak to zrobić? Oczywiście drukarka drukowałaby dokumenty z innych komputerów które mają zainstalowanego windowsa.
  • #3
    dt1
    Admin of Computers group
    Da się zrobić bez Samby.

    http://sourceforge.net/projects/p910nd/ - to dość prosty, ale działający dobrze projekt. Sam go używam na swoim routerze z OpenWRT. Oprogramowanie łatwe w konfiguracji. Jako że nie ma spoolera (zadanie wydruku w niezmodyfikowanej formie wysyłane jest natychmiast do drukarki) polecam dla mało obciążonych drukarek (jeśli do drukarki non stop wysyłane jest sporo zadań wydruku przez wielu użytkowników - lepsza będzie opcja następna).

    https://www.cups.org/ - bardziej zaawansowany pakiet, bez problemu radzi sobie z większą ilością drukarek i sporym obciążeniem (postawiłem na tym oprogramowaniu serwer wydruku pracujący z 4 drukarkami etykiet Zebra, 4 drukarkami laserowymi A4 pracujący w sieci biurowej, w której 6 komputerów co chwilę wysyła zadania wydruku - około 100 zadań wydruku A4 i około 500-1000 wydrukowanych etykiet każdego dnia). Działa to bez problemu na Athlonie XP 1600+. Plusem tego rozwiązania jest możliwość łatwego zarządzania drukarkami oraz zadaniami wydruku przez WWW. Drukarki są dodane w trybie RAW (to znaczy Windowsowy sterownik na maszynie klienckiej odpowiada za przygotowanie zadania wydruku).
  • #4
    ziooober88
    Level 15  
    Kolego a czy byłbyś w stanie pomóc mi w skonfigurowaniu tego pierwszego projektu? Ściągnąłem ten plik i wrzuciłem go na terminala i na tym moja wiedza się kończy. Czy byłbyś w stanie pomóc mi to skonfigurować i uruchomić?
  • #5
    dt1
    Admin of Computers group
    Zakładam, że poza skopiowaniem tego już to skompilowałeś (make) i zainstalowałeś (make install). Domyślna konfiguracja zakłada, że użyta zostanie pierwsza drukarka USB znaleziona w systemie (/dev/usblp0). Program w trybie daemon uruchamia się poleceniem p910nd -d. Instalacja drukarki jest opisana tutaj: http://wiki.openwrt.org/doc/howto/p910nd.server#windows_7 - należy użyć sterownika dla swojego systemu operacyjnego.

    Jeśli coś nie działa - przestudiować man p910nd i błędy, które są wrzucane do sysloga.
  • #6
    ziooober88
    Level 15  
    skończyło się na skopiowaniu :) a dalej powalczymy, zaraz zobaczę gdzie nie będę wiedział co zrobić.

    Dodano po 11 [minuty]:

    A więc instaluję to w ten sposób:

    Quote:
    Tak więc wchodzisz do katalogu w którym został zapisany plik, najczęściej jest to katalog Pobrane, czyli:
    Kod:
    cd /home/nazwa_użytkownika/Pobrane

    a następnie wydajesz polecenie do rozpakowania pliku:
    Kod:
    tar -xvjf nazwa_pliku.tar.bz2
    gdzie nazwa_pliku.tar.bz2 to nazwa archiwum które pobrałeś.

    Teraz przejdź do folderu do którego wypakowałeś plik, najczęściej jest to, nazwa archiwum bez rozszerzenia tak więc:
    Kod:
    cd nazwa_pliku

    I kolejne polecenia:
    Kod:
    ./configure<-tutaj wywala błąd "Nie ma takiego pliku ani katalogu" co to znaczy?
    Polecenie to stworzy plik konfiguracyjny do instalacji, a także sprawdzi czy w systemie są wymagane biblioteki, jeśli nie to komunikat zwróci błędy.
    teraz polecenie:
    Kod:
    make
    To zaś posłuży za kompilację plików źródłowych
    Kod:
    make install
    Na koniec to pozwoli nam na instalację wcześniej skompilowanych plików.

    Jeśli
    Kod:
    ./configure
    nie zwróciło żadnego błędu to proces instalacji możesz zautomatyzować wpisując:
    Kod:
    make && make install

    Mogą występować okazyjne błędy, najczęściej spowodowane brakiem dodatkowych bibliotek. A i poproś administracje, aby przeniosła temat do odpowiedniego działu.
  • #8
    ziooober88
    Level 15  
    Kolego a więc zainstalowałem to i zabrałem się za konfigurację tego ale niestety na samym wejściu problemy.

    Quote:
    modify your /etc/config/firewall to accept packets on on TCP port 9100:

    #Allow attached network printer
    config 'rule'
    option 'src' 'lan'
    option 'proto' 'tcp'
    option 'dest_port' '9100'
    option 'target' 'ACCEPT'


    w debianie takiego katalogu nie ma


    Quote:
    USB port

    opkg update
    opkg install kmod-usb-printer

    tego polecenia nie idzie wykonać pod debianem i tutaj się zatrzymałem, jak to zainstalować?
  • #9
    dt1
    Admin of Computers group
    Zgaduję, że firewalla póki co wcale nie masz, więc po co go chcesz konfigurować? Konfiguracja dla OpenWRT jest zupełnie inna niż dla Twojego systemu. Również menedżer pakietów z OpenWRT nie jest Ci potrzebny do szczęścia, więc opkg nie będzie Ci działać.
  • #10
    ziooober88
    Level 15  
    Kolego, spróbowałem teraz odpalenia tego cups-a. Sambę już skonfigurowałem i zainstalowałem cups ale mam takie pytanie. Zainstalowałem tego cups i później go wywaliłem, przez apt-get remove. I dodatkowo wykasowałem pliki z /etc/cups - było tutaj 6 plików i teraz znowu zainstalowałem tego cups za pomocą apt-get install cups i teraz jest tylko 4 pliki bez pliku konfiguracyjnego. Czemu tych plików tam nie ma?

    Zainstalowałem sobie jakąś ściągniętą wersję tego cupsa i skonfigurowałem to według opisu na stronce:
    Link
    I przy próbie uruchomienia tego cups wywala mi taki bład:
    Quote:
    cups: unable to start scheduler.


    co może być powodem tego błędu?
  • #12
    ziooober88
    Level 15  
    Jeszcze raz wszystko usunąłem i zainstalowałem cupsa poleceniem:
    apt-get install cups i na końcu wyskoczyło coś takiego:
    Quote:
    Konfigurowanie pakietu cups (1.5.3-5+deb7u5) ...
    cp: nie można wykonać stat na `/etc/cups/cupsd.conf.default': Nie ma takiego pliku ani katalogu
    dpkg: błąd przetwarzania cups (--configure):
    podproces zainstalowany skrypt post-installation zwrócił kod błędu 1
    Konfigurowanie pakietu libgutenprint2 (5.2.9-1) ...
    Konfigurowanie pakietu smbclient (2:3.6.6-6+deb7u5) ...
    dpkg: problemy z zależnościami uniemożliwiają skonfigurowanie pakietu printer-driver-gutenprint:
    printer-driver-gutenprint zależy od cups (>= 1.3.0); jednakże:
    Pakiet cups nie jest jeszcze skonfigurowany.

    dpkg: błąd przetwarzania printer-driver-gutenprint (--configure):
    problemy z zależnościami - pozostawianie nieskonfigurowanego
    Wystąpiły błędy podczas przetwarzania:
    cups
    printer-driver-gutenprint
    E: Sub-process /usr/bin/dpkg returned an error code (1)
    root@debian:/#


    Nie ma nigdzie pliku konfiguracyjnego, a wiem że podczas pierwszej instalacji był. Teraz pytanie jak to doinstalować?

    Dodano po 45 [minuty]:

    Po długich próbach udało się uruchomić tego cups-a ale mam problem z dodaniem drukarki bo gdy wybiorę swój model drukarki i chcę dodać ją to wyskakuje komunikat:
    Quote:
    Nie można dodać drukarki:

    Zabronione


    Konfig cupsa wygląda tak:
    Spoiler:
    Quote:
    #
    # "$Id: cupsd.conf.in 7199 2008-01-08 00:16:30Z mike $"
    #
    # Sample configuration file for the Common UNIX Printing System (CUPS)
    # scheduler. See "man cupsd.conf" for a complete description of this
    # file.
    #

    # Log general information in error_log - change "info" to "debug" for
    # troubleshooting...
    LogLevel info

    # Administrator user group...
    SystemGroup lpadmin


    # Only listen for connections from the local machine.
    Listen 631
    Listen /var/run/cups/cups.sock

    # Show shared printers on the local network.
    Browsing On
    BrowseOrder allow,deny
    BrowseAllow all

    # Default authentication type, when authentication is required...
    DefaultAuthType Basic

    <Location />
    Order Deny,Allow
    Deny From All
    Allow From 192.168.1.*
    </Location>

    <Location /admin>
    Order allow,deny
    Allow all
    </Location>

    # Restrict access to configuration files...
    #<Location /admin/conf>
    #AuthType Default
    #Require user @SYSTEM
    #Order allow,deny
    #AuthType Basic
    #AuthClass System
    #Allow From 192.168.1.*
    #Deny From All
    #</Location>

    # Set the default printer/job policies...
    <Policy default>
    # Job-related operations must be done by the owner or an administrator...
    <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job>
    Require user @OWNER @SYSTEM
    Order deny,allow
    </Limit>

    # All administration operations require an administrator to authenticate...
    <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
    </Limit>

    # All printer operations require a printer operator to authenticate...
    <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After CUPS-Accept-Jobs CUPS-Reject-Jobs>
    AuthType Default
    Require user @SYSTEM
    Order deny,allow
    </Limit>

    # Only the owner or an administrator can cancel or authenticate a job...
    <Limit Cancel-Job CUPS-Authenticate-Job>
    Require user @OWNER @SYSTEM
    Order deny,allow
    </Limit>

    <Limit All>
    Order deny,allow
    </Limit>
    </Policy>

    #
    # End of "$Id: cupsd.conf.in 7199 2008-01-08 00:16:30Z mike $".
    #


    coś trzeba zmienić w tym konfigu?

    Dodano po 55 [minuty]:

    A w logach widać takie coś przy próbie dodania drukarki:

    Spoiler:
    Quote:
    I [11/May/2015:02:32:59 +0200] Saving job.cache...
    I [11/May/2015:02:32:59 +0200] Loaded MIME database from "/usr/share/cups/mime" and "/etc/cups": 39 types, 56 filters...
    I [11/May/2015:02:32:59 +0200] Loading job cache file "/var/cache/cups/job.cache"...
    I [11/May/2015:02:32:59 +0200] Full reload complete.
    I [11/May/2015:02:32:59 +0200] Listening to 0.0.0.0:631 on fd 6...
    I [11/May/2015:02:32:59 +0200] Listening to [v1.::]:631 on fd 8...
    I [11/May/2015:02:32:59 +0200] Resuming new connection processing...
    I [11/May/2015:02:33:02 +0200] Started "/usr/lib/cups/cgi-bin/admin.cgi" (pid=16494)
    I [11/May/2015:02:33:03 +0200] Started "/usr/lib/cups/cgi-bin/admin.cgi" (pid=16496)
    I [11/May/2015:02:33:03 +0200] Started "/usr/lib/cups/daemon/cups-deviced" (pid=16497)
    I [11/May/2015:02:33:14 +0200] Started "/usr/lib/cups/cgi-bin/admin.cgi" (pid=16529)
    I [11/May/2015:02:33:15 +0200] Started "/usr/lib/cups/cgi-bin/admin.cgi" (pid=16531)
    I [11/May/2015:02:33:15 +0200] Started "/usr/lib/cups/daemon/cups-driverd" (pid=16532)
    I [11/May/2015:02:33:16 +0200] [cups-driverd] Read "/var/cache/cups/ppds.dat", 1489 PPDs...
    I [11/May/2015:02:33:16 +0200] [cups-driverd] No new or changed PPDs...
    I [11/May/2015:02:33:50 +0200] Started "/usr/lib/cups/cgi-bin/admin.cgi" (pid=16587)
    E [11/May/2015:02:33:50 +0200] Returning HTTP Zabronione for CUPS-Add-Modify-Printer (ipp://localhost/printers/HP_Photosmart_C5200_series) from localhost
  • #14
    ziooober88
    Level 15  
    Nie pomaga, już to przerabiałem.
  • #15
    Arek15111
    Level 16  
    A należysz do grupy "ip" i "ipadmin" ?
  • #16
    piotr1859
    Level 2  
    Tradycyjnie odpalamy terminal:) i wpisujemy polecenie:
    -smbclient -L (numer IP) - gdzie oczywiście numerem IP jest numer spisany przez nas z WinXP.

    Po tej komendzie uzyskamy potrzebne nam informacje, czyli:

    nazwę komputera z Win XP
    wykaz peryferiów podłączonych do komputera z Win XP.
    Z wykazu urządzeń interesuje nas drukarka (Printer) a własciwie jej nazwa pokazana w kolumnie Sharename. U mnie drukarka wyświetlała się pod nazwą HP1020.
    Znając te parametry w pole po smb:// wbijamy:

    nazwę komputera/nazwę drukarki. Daje nam to adres URI wybranej drukarki, który u mnie wyglądał następująco:
    smb://STACJONARNY/HP1020
  • #17
    ziooober88
    Level 15  
    Wszystko udało się odpalić, problem był w tym że nie logowałem się jako root i dlatego tak się działo.

    Mam jeszcze pytanie, w jaki sposób można drukować za pomocą cupsa pliki w formacie pdf?