Opcje systemu &CUPS;, aktualnie niedostępne przez &kcontrol; W tym rozdziale znajdziesz kilka wskazówek dotyczących dalszych możliwości konfiguracji, które mogą być niedostępne dla systemu &CUPS; z interfejsu &GUI; programu &tdeprint;. Przegląd dostępnych możliwości Wszystkie najczęściej używane opcje i funkcje, których dostarcza system &CUPS;, są obsługiwane przez &tdeprint;. Zarządzanie drukarką: dodawanie, odłączanie, przenoszenie, modyfikowanie, konfigurowanie, testowanie, wyłączanie, włączanie... Zarządzanie trybem pracy: anulowanie, wstrzymywanie, przenoszenie, udostępnianie innej drukarki. Opcje drukowania: całkowita kontrola zapewniona przez &CUPS;. Gdzie znaleźć pomoc podczas pracy z &CUPS; Dużo informacji o pracy systemu &CUPS; jest dostępnych z interfejsu sieciowego, który zawsze jest obsługiwany przez &CUPS;. Działa on z każdą wyszukiwarką (nawet tekstową). Na początek przejdź do http://localhost:631/. Tam znajdziesz łącze do aktualnie dostępnej dokumentacji &CUPS; w formatach HTML i PDF. &CUPS; jest dostępny poprzez inne środki niż &tdeprint;: wiersz poleceń i wyszukiwarka to dwa bliźniacze interfejsy &CUPS;. Wiele narzędzi wiersza poleceń dokłada się do opcji kontroli, jakie masz, korzystając z systemu &CUPS;. Interfejs sieciowy to tylko jedna z dostępnych możliwości konfiguracji i sprawiwania kontroli. Dotyczy to również programu &tdeprint;. W miarę rozwoju &CUPS;, wiele nowych możliwości będzie najpierw dostępnych z wiersza poleceń. Aby nadążać za zmianami, sprawdzaj najnowsze wersje strony dokumentacji systemowej dla &CUPS;. W zależności od metody uaktualniania &CUPS;, plik konfiguracyjny mógł nie zostać zastąpiony nowym; tak więc demon &CUPS; może nie być poinformowanym przez stary plik konfiguracyjny o możliwości wykorzystania nowych właściwości. Kompletna lista dostępnych plików i stron dokumentacji systemowej, powinna zawsze znajdować się w Podręczniku Administratora Programu &CUPS; (http://localhost:631/sam.html#FILES. W pasku adresu &konqueror-dopelniacz; wpisz man:/lpadmin i man:/cupsd.conf, aby znaleźć najważniejsze polecenia i pliki konfiguracyjne. Wiesz już o miłej właściwości &konqueror-dopelniacz;, jaką jest pokazywanie stron dokumentacji systemowej &UNIX;, prawda? Przeczytaj je. Znajdziesz tam więcej interesujących porad i łączy do innych stron dokumentacji systemowych. Jak znaleźć pokrewne strony dokumentacji systemowej &CUPS; Tutaj pokazujemy, jak sprawdzić, które pokrewne strony dokumentacji &CUPS; znajdują sie w Twoim systemie: kurt@transmeta:~ > apropos cups cups-calibrate (8)- narzędzie ESP kalibrowania drukarki lpstat (1) - podaj informację o stanie drukowania cups-lpd (8) - przyjmuj zadania drukowania i informuj klientów lpd o statusie drukarki classes.conf (5) - plik konfiguracyjny klasy dla cups backend (1) - interfejsy cups do przesyłania danych filter (1) - filtry cups do konwertowania plików cups-polld (8) - tryb odpytywania o dostępne drukarki mime.types (5) - plik opisujacy pliki typu mime cupsd (8) - demon cups lpadmin (8) - konfiguracja klas i drukarek cups cupsd.conf (5) - plik konfiguracyjny serwera dla cups mime.convs (5) - plik konfiguracyjny plików typu mime printers.conf (5) - plik konfiguracji drukarki mime.convs (5) - plik konfiguracyjny plików typu mime cups-polld (8) - demon cups odpytujący drukarki lpstat (1) - podaje informację o stanie drukowania backend (1) - interfejs cups transmisji protokołu mime.types (5) - plik opisujący pliki typu mime cupsd (8) - demon cups lpadmin (8) - konfiguracja klas i drukarek cups printers.conf (5) - plik konfiguracyjny drukarki dla cups cupsd.conf (5) - plik konfiguracyjny serwera dla cups filter (1) - filtry cups do konwertowania plików Poza &tdeprint;: wskazówki & porady dotyczące wiersza poleceń &CUPS; Tutaj znajdziesz kilka przykładowych możliwości, jakie obecnie są dostępne tylko z wiersza poleceń. Udostępnianie lub blokowanie dostępu do drukarki określonym użytkownikom Instalując (lub modyfikując) drukarkę poprzez wiersz poleceń, możesz udostępnić, lub zakazać dostępu do tej drukarki określonym użytkownikom: lpadmin HeidelbergDigimaster9110 lpd:/10.160.16.99/mqueue allow:kurt,sylvi,hansjoerg /home/kurt/PPDs/DVHV.ppd zezwoli na korzystanie z tej (wierzcie mi: bardzo ładnej i bardzo profesjonalnej) drukarki tylko trzem wspomnianym użytkownikom i - jednocześnie - odmówi tego prawa wszystkim innym. Jeśli inny użytkownik zechce drukować na DigiMaster przez ten serwer &CUPS;, otrzyma wiadomość o błędzie client-error-not-possible. lpadmin HeidelbergDigimaster9110 lpd:/10.160.16.99/mqueue deny:tackat,boss,waba /home/kurt/PPDs/DVHV.ppd zablokuje możliwość korzystania z tej samej drukarki tym samy trzem wspomnianym użytkownikom, jednocześnie udostępniając ją wszystkim pozostałym. Jeśli zablokowany użytkownik zechce drukować na DigiMaster przez ten serwer &CUPS;, otrzyma wiadomość o błędzie client-error-not-possible. Jednocześnie możesz użyć tylko jednej z tych opcji; obecnie niedostępna jest podobna opcja dotycząca grup. Będzie ona jednak dodana w przyszłości. Nakładanie limitów na określone drukarki Czasami chcesz nałożyć limit dla konkretnych drukarek. Możesz określić górną granicę ilości stron, lub danych, jakie mogą być wydrukowane w konkretnym czasie przez konkretną drukarkę. Limity mogą być określone przez opcję podczas instalacji drukarki, komendą lpadmin, lub później, dla już zainstalowanej drukarki. Poniżej znajdziesz kilka wskazówek, których nie znajdziesz w oficjalnej dokumentacji &CUPS;: W systemie &CUPS; możesz określać limity stron i ilości danych dla poszczególnych drukarek. Limity są obliczane indywidualnie dla każdego użytkownika (tak więc pojedyncza seria limitów dotyczy wszystkich użytkowników konkretnej drukarki). Limity dotyczą także stron banerowych (jeśli używa się takich). To oznacza: możesz ograniczyć każdego użytkownika do drukowania 20 stron dziennie na drogiej drukarce, ale nie możesz nałożyć ograniczenia na każdego użytkownika, za wyjątkiem Kurt lub root. Masz do wykorzystania trzy opcje nakładania limitów: , i . określa przedział czasowy dla obliczania limitu (przedział jest określany w sekundach; tak więc dzień to 60x60x24=86.400, tydzień to 60x60x24x7=604,800, a miesiąc to 60x60x24x30=2.592.000 sekund.) Aby określić limity, okres czasu plus przynajmniej jeden limit zadań nie może być ustawiony na zero. Domyślna wartość 0 dla określa brak limitu. Domyślna wartość 0 dla określa brak limitu. Domyślna wartość 0 dla określa, że limity dotyczą wszystkich zadań, które były drukowane przez użytkownika i które wciąż są rozpoznawane przez system. Przykłady: Przypadek limitu podwójnego: okres czasu plus jeden lub obydwa limity dotyczące zadań lpadmin danka_infotec_4850 job-quota-period=604800 job-k-limit=1024 Ta komenda określa limit rozmiaru pliku na 1 MB (w sumie) dla każdego użytkownika drukarki danka_infotec_4850 w przeciągu tygodnia. lpadmin danka_infotec_4105 job-quota-period=604800 job-page-limit=100 Ta komenda nakłada limit 100 stron (w sumie) na każdego użytkownika drukarki danka_infotec_4105 w przeciągu tygodnia. lpadmin danka_infotec_P450 job-quota-period=604800 job-k-limit=1024 job-page-limit=100 Ta komenda określa złożony limit 1 MB (w sumie) i 100 stron (w sumie) dla każdego użytkownika drukarki danka_infotec_P450 w przeciągu tygodnia. Przykłady: Przypadek limitu pojedynczego: określony jest okres czasu lub limit dotyczący zadania lpadmin danka_infotec_P320 job-quota-period=604800 lpadmin danka_infotec_FullColor job-page-limit=100 lpadmin danka_infotec_HiSpeed job-k-limit=1024 Wiadomość o błędzie Kiedy użytkownik wyczerpie limit, podczas próby drukowania otrzyma wiadomość o błędzie client-error-not-possible. Instalacja drukarki typu <quote>raw</quote> Istnieją różne sposoby na zdefiniowanie drukarki typu raw. Jedną z wygodniejszych metod jest użycie komendy lpadmin. Jeśli nie skorzystasz z pliku &PPD; do obsługi tej drukarki, będzie ona urządzeniem typu raw: lpadmin Raw_Danka_infotec lpd://10.160.16.137/PORT1 Kolejki drukarek typu raw nie zmieniają pliku drukowania i nie przekształcają go w inny format pliku. Przydaje się to na przykład, kiedy drukujesz z systemu &Windows; via Samba przez serwer &CUPS; do drukarki PCL: w tym przypadku sterownik drukarki systemu &Windows; generuje gotowy format pliku drukowania dla drukarki docelowej i przepuszczanie go przez filtry &CUPS; wyrządziłoby tylko szkodę. W takich warunkach (jeśli chcesz upewnić się, że plik dotarł do drukarki nieprzefiltrowany przez &CUPS;) przydatne okazuje się polecenie lpadmin bez &PPD;. Rozwiązywanie problemów dotyczących &CUPS; i &tdeprint; Ta część Podręcznika &tdeprint; będzie odpowiedzią na problemy użytkowników. To tylko skromny początek. Wiadomość o błędzie Co znaczy client-error-bad-request? Użytkownik wysłał do systemu &CUPS; plik, którego serwer nie mógł przetworzyć. Taką wiadomość otrzymasz również, jeśli wysłałeś pusty plik. A client-error-not-possible? Użytkownik albo nie ma prawa dostępu do określonej drukarki, albo wykorzystał już swój limit (oparty na rozmiarze pliku lub ilości stron) Co z client-error-not-found? Użytkownik próbował dostać się do nieistniejącego źródła na serwerze &CUPS;, na przykład przez próbę druku nieistniejącego pliku, lub takiego, do którego nie ma prawa dostępu. Pytania i odpowiedzi Dlaczego nie mogę zrestartować zadań? Aby móc zrestartować ukończone zadania z interfejsu sieciowego, potrzebujesz odpowiednich ustawień w pliku /etc/cups/cupsd.conf: ustaw PreserveJobFiles True. Jak mogę pozbyć się długiej listy zakończonych zadań w interfejsie sieciowym? Do zrobienia Jak działa obliczanie stron? &CUPS; dokonuje obliczania stron dzięki przepuszczaniu każdego zadania przez filtr pstops. Między innymi przelicza on też strony. Dane wyjściowe z tego filtra mogą być doprowadzone do innych filtrów (jak pstoraster --> rastertopcl), lub wysłane bezpośrednio do drukarki (jeśli jest to drukarka &PostScript;owa). W każdym przypadku działa to dla drukarek sieciowych, równoległych, szeregowych i USB tak samo. Aby pstops działał, potrzebuje on DSC (Document Structuring Convention) zgodnego z &PostScript; (lub bliskiego odpowiednika) jako wejścia. Tak więc oblicza on strony podczas filtrowania na serwerze drukowania i zapisuje dane o każdej stronie (godzinę, użytkownika, ID zadania i nazwę, która drukarka, ile kopii jakich stron dokumentu, ile kilobajtów?) w pliku /var/log/cups/page_log. Przy okazji: na mojej osobistej liście życzeń jest przerobienie Webalizera tak, aby czytał i analizował page_log i dawał podobny wynik. Ktoś chętny? Nie daje on jednak poprawnych wyników w następujących przypadkach: Drukarka się zacina i być może dlatego odrzuca zadanie (przypadek z życia; albo może odrzuca zadanie z powodu problemu z formatem danych) Zadania drukowane jako raw zawsze są liczone jako jedna strona (i być może wielokrotne kopie). Dlatego obliczanie stron w &CUPS; jest tylko przybliżone (w wielu przypadkach doskonałe lub co najmniej dobre, ale czasami niewystarczające). Jedyne wiarygodne obliczanie wydruku jest dokonywane przez wewnętrzny licznik drukarki. Niektóre drukarki mogą być zdalnie zapytane o tą informację przez SNMP (Simple Network Management Protocol). To znaczy, że w większej sieci z wieloma różnymi drukarkami nie ma żadnego narzędzia, które dokładnie i niezawodnie obliczałoby strony! Dlaczego obliczanie stron nie działa pod klientem &Windows;? Zadania z systemu &Windows; prawie zawsze muszą być wysyłane jako raw. Dlaczego? Jeśli &CUPS; pracuje jako serwer drukowania dla klientów &Windows;, używając oryginalnych sterowników systemu &Windows; dla docelowego urządzenia drukującego, gwarantuje to poprawne formatowanie zadania; dlatego serwer nie powinien nic zmieniać i drukować w trybie raw. Dlatego też nie dochodzi do filtrowania danych (nie jest to nawet możliwe, ponieważ dane wejściowe nie są &PostScript;owe, jak oczekuje pstops), czyli nie ma miejsca liczenie stron, prócz domyślnego 1. Jak mogę znaleźć listę dostępnych opcji dla danej drukarki, lub pliku &PPD;? Zobacz stronę dokumentacji systemowej dla komendy lpoptions. Możesz przestudiować uaktywnione pole systemu &CUPS; pod kątem każdej opcji dla dostępnych drukarek. Nie musisz mieć lokalnie zainstalowanej drukarki. Dopóki drukarka jest dostępna lokalnie (przez opcję wyszukiwania drukarki systemu &CUPS;), będzie ona również pracowała jako sieciowa. Aby zapytać o opcje drukarki, wpisanie lpoptions HitachiDDP70MicroPress poda długą listę wszystkich dostępnych opcji, odczytanych z pliku &PPD; dla danej drukarki Hitachi (w moim przypadku zainstalowanej na serwerze sieciowym transmeta). Serwer sieciowy Transmeta i jego demon &CUPS;, podobnie jak demon &CUPS; na komputerze lokalnym, musi być uruchomiony, aby operacja zakończyła się sukcesem. Jak mam czytać wykaz otrzymany przez komendę lpoptions? Wiesz, że legalnym działaniem producentów drukarek &PostScript;owych jest określanie własnych, wewnętrznych nazw i procedur nawet dla standardowych opcji &PostScript;owych. Dopóki sterownik jest w stanie uzyskać opcje od &PPD; i przekazać je w zrozumiały sposób użytkownikowi, wszystko jest w porządku. Ale co Ty zrobisz, jeśli chcesz użyć jakiejś mało znanej opcji drukarki w wierszu poleceń? Jak znajdziesz jej dokładną składnię? Zobaczmy to na przykładzie. Spójrzmy na drukarkę Hitachi's DDP70 i na to, jak wdraża drukowanie obustronne. Jak byś powiedział, jak drukować dwustronnie? duplex czy Duplex? A może jeszcze inaczej?. lpoptions transmeta Hitachi_DDP70_ClusterPrintingSystem | grep uplex To prowadzi do wyniku TR-Duplex/Duplex: False *True Zinterpretujmy to tak: Nazwa badanej opcji to ; Po ukośniku widzisz tłumaczenie opcji, jakie powinno być pokazane w &GUI;, lub w interfejsie sieciowym (Duplex); Opcja może przyjąć jedną z dwóch wartości False lub True; Obecne ustawienie True jest rozpoznane przez zaznaczenie gwiazdką *. Aby zmienić obecne ustawienie domyślne (duplex) i przejść do trybu drukowania jednostronnego (simplex), musisz użyć następującej komendy: lpr Hitachi_DDP70_ClusterPrintingSystem TR-Duplex=False /path/to/your/printjob Jak mogę otrzymać ładnie sformatowany wykaz dostępnych opcji dla danej drukarki, lub &PPD;? Użyj komendy lphelp, która może być zainstalowana lokalnie w systemie. Nie ma jeszcze strony dokumentacji systemowej dla lphelp. lphelp infotecP450 Ta komenda podaje listę dostępnych opcji dla danej drukarki. Wykaz jest ładnie sformatowany, wyjaśnia każdą dostępną opcję i jak jej używać. Możesz od razu zapytać o opcje różnych drukarek: lphelp infotec7410color DANKA_fullcolor_D2000 HP_ColorLaserJet8550 Działa to również z plikami &PPD; files. Określ tylko ścieżkę do &PPD;: lphelp /home/kurt/PPDs/HP-ColorLaserJet8550.ppd Rozwiązywanie problemów Żaden system nie jest idealny. Tutaj znajdziesz kilka pułapek, w które można wpaść. Moja drukarka, nazywająca się 3-lp-duplex zachowuje się dziwnie. W czym problem? Nazwy drukarek używanych w systemie &CUPS; powinny rozpoczynać się literą i mogą zawierać do 128 liter lub liczb. Używanie myślników może powodować problemy. Jak już jesteśmy przy nazwach: nazwy drukarek w &CUPS; nie uwzględniają wielkości liter. Tak więc drukarka nazwana Best_of_Danka będzie tą samą drukarka co best_of_danka, lub BEST_OF_DANKA. (Takie są wymagania &IPP;, z którymi &CUPS; jest całkowicie zgodny). Dlaczego otrzymuję wiadomość Unable to connect to SAMBA host: Success od drukarki współdzielonej w systemie &Windows;, z którą łączę się poprzez Sambę? Czy masz prawidłowe ustawienia na komputerze sieciowym z systemem &Windows;? Czy masz udostępnioną drukarkę współdzieloną w systemie &Windows;? Moje pliki dla drukarki lp czasem tajemniczo znikają, a dwa dni później otrzymuję wiadomość, że zostały wydrukowane na drukarce 3 piętra poniżej mojego biura. O co chodzi? Wierz mi, jest bardzo mało prawdopodobne, że Twoja drukarka jest jedyną o nazwie lp. Być może &CUPS; zabawia się z Tobą. Jeśli masz aktywne ustawienie ImplicitClasses On, &CUPS; próbuje upchnąć wszystkie drukarki, które widzi w sieci do klasy nazw lp. Wszystkie zadania przeznaczone dla lp są wysyłane do tej klasy i drukuje je pierwsze dostępne urządzenie. Zastosuj się do rady: wybieraj niepowtarzalną nazwę dla każdej drukarki sieciowej! (Pamiętaj, że drukarka na Twoim porcie równoległym dla reszty świata jest również drukarką sieciową, jeśli nie zadbasz o odpowiednie ustawienia).