Jak wyłączyć automatyczną instalację zdalną drukarki?

59

W Raring, za każdym razem, gdy łączę się z siecią, Cups automatycznie instaluje wszystkie drukarki w sieci, niektóre więcej niż raz.

Ponadto od czasu do czasu podłączam drukarkę USB do laptopa. Mimo że drukarka jest już skonfigurowana, kolejna drukarka jest dodawana do listy.

Chcę wyłączyć tę funkcję i zezwalać tylko na ręczną instalację drukarek. Jak mam to zrobić?

Do zrobienia
źródło
Czy znalazłeś odpowiedź? Mam podobne problemy w dniu 14.04 i odpowiedzi tutaj nie zadziałały. Moje pytanie jest na askubuntu.com/questions/477082/…
Xu Wang
Nie, nie chciałem wyłączać demona avahi i nie jestem już podłączony do tej samej sieci. Nie ma drukarek sieciowych, w których teraz jestem.
To Do

Odpowiedzi:

62

Właśnie odkryłem, być może optymalne, rozwiązanie tego bałaganu. Istnieje usługa o nazwie „przeglądanie filiżanek”, która najwyraźniej jest odpowiedzialna za wyjście z sieci i znalezienie wszystkich drukarek, które może zlokalizować i zainstalować dla ciebie (gee - dzięki - NIE). Ponieważ jest to zadanie Upstart / Systemd, możesz zatrzymać usługę za pomocą:

Dla wersji Ubuntu 15.04+ (przy użyciu systemd)

sudo systemctl stop cups-browsed

Śledzony przez:

sudo systemctl disable cups-browsed

Możesz nadal uruchamiać / zatrzymywać usługę ręcznie, jeśli chcesz:

sudo systemctl start cups-browsed
sudo systemctl stop cups-browsed

Dla wersji Ubuntu wcześniejszych niż 15.04 (przy użyciu upstart)

sudo service cups-browsed stop

Co więcej, możesz uniemożliwić ponowne uruchomienie usługi, dodając prosty plik tekstowy /etc/initzawierający pojedyncze słowo manual. Plik musi mieć nazwę cups-browsed.override

Więc po prostu uruchom gedit z

gksudo gedit /etc/init/cups-browsed.override

wstaw manualpierwszy i jedyny wiersz i zapisz plik.

Przy następnym ponownym uruchomieniu usługa nie zostanie ponownie uruchomiona. Nie musisz jednak ponownie uruchamiać komputera, jeśli usługa została już zatrzymana. Po umieszczeniu tego pliku w / etc / init, usługę można uruchomić tylko ręcznie (jeśli i kiedy potrzebujesz / chcesz) za pomocą:

sudo service cups-browsed start
-or-
sudo service cups-browsed stop`

Przetestowałem to podczas jednego restartu. Drukowanie nadal działa dobrze i do tej pory nie uruchamiam kilkuset drukarek po ponownym uruchomieniu. Pojawią się tylko te, które zainstalowałem ręcznie.

Steve Besch
źródło
25
Ubuntu 15.04 i nowsze (przeszli na systemd):sudo systemctl disable cups-browsed
Hitechcomputergeek
Głosowałbym za tobą +100, gdybym mógł. To naprawiło zawieszenie się mojego 16.04.
Marmur Organiczny
Możesz także używać przyjaznych programów ncurses do konfigurowania usług, takich jak rcconfclub sysv-rc-conf.
Pablo A
Nie możesz sudo systemctl mask cups-browsedteraz?
carestad
2
To nie działa dla 18.04
eetsurt
27

W /etc/cups/cups-browsed.conf, ustaw dyrektywę:

BrowseProtocols none

Następnie uruchom service cups-browsed restarti service cups restart. Drukarki nie powinny być widoczne, z wyjątkiem tych, które sam dodałeś.

Maciej Woloszyn
źródło
To najprostsze rozwiązanie dla 15.10.
Mustafa
1: służy do udostępniania drukarek urządzenia w sieci, a nie do pokazywania drukarek sieciowych.
Alex R
Prawidłowo, tylko krok 2 jest konieczny i jest bardziej poprawny niż hack w obecnie ocenianej odpowiedzi. Popraw swoją odpowiedź, aby uniknąć dodawania zamieszania do i tak mylącej odpowiedzi!
kiko
W mojej sieci była jedna konkretna drukarka, która ciągle się dodawała po usunięciu. Ustawiłem tę opcję, uruchomiłem ponownie i to rozwiązało problem. Korzystam z Debiana 9. Dzięki
jbrock
1
to rozwiązanie działa na 18.04
eetsurt
9

Jak wspomniano wcześniej, odbywa się to teraz w bibliotekach pucharów po stronie klienta (tj. Libcups.so, do których łączą się aplikacje GNOME i KDE), a nie w serwerze cupd. Dlatego zmiana ustawień „Przeglądaj” na serwerze pucharów nie będzie działać.

$ ldd /usr/lib/x86_64-linux-gnu/libcups.so.2
...
libavahi-common.so.3 => /usr/lib/x86_64-linux-gnu/libavahi-common.so.3
libavahi-client.so.3 => /usr/lib/x86_64-linux-gnu/libavahi-client.so.3
...

IE to zachowanie (pokazywania zdalnych drukarek w oknie dialogowym Drukuj) ma miejsce nawet po wyłączeniu lokalnego serwera cup. Możesz go wyłączyć, wyłączając avahiusługę, ale spowoduje to wyłączenie wszystkich funkcji związanych z zeroconf / mdns.

Istnieje jednak przynajmniej sposób na wyłączenie większości funkcji avahi (w tym dodanie zdalnych drukarek do klientów CUPS) przy jednoczesnym zachowaniu funkcji DNS (np. Podczas wyszukiwania foo.localnazw hostów w stylu):

edytuj /etc/avahi/avahi-daemon.conf iw [server]sekcji dodaj, enable-dbus=noa następnie uruchom ponownie usługę demona avahi.

John McP
źródło
Jeśli połączenie przewodowe nie jest połączone w sieć z innymi komputerami, może nie korzystać z demona avahi działającego przez cały czas. Jeśli nie jest używany, można go odinstalować.
noobninja,
Spośród wszystkich odpowiedzi na stronie jest to jedyna, która pomogła mi rozwiązać: Jak pozbyć się drukarki duchów w Gnome?
Stephen Ostermiller,
Dlaczego enable-dbus=nouniemożliwia wykrycie drukarek avahi i jakie zmiany w konfiguracji wpłyną na inne funkcje avahi?
gene_wood
1
Dokonałem tej zmiany i rzeczywiście uniemożliwiło to pojawienie się automatycznie wykrywanych drukarek na liście drukarek, jednak moim celem było szybsze wyświetlenie okna dialogowego drukarki (zwykle zajmuje to od 5 do 10 sekund). Ta zmiana spowodowała, że ​​pojawienie się okna dialogowego drukarki trwa dłużej (wystarczająco długo, aby Ubuntu przyciemniło okno dialogowe, myśląc, że nie reaguje). Hmm
gene_wood
1
Pracował dla mnie. Ale mam ten sam problem co gen_wood. Załadowanie znacznie skróconej listy drukarek zajmuje około 5 sekund.
Hoseung Choi
7

Aby go wyłączyć, po prostu otwórz terminal Ctrl+ Alt+ Ti wpisz

 sudo cupsctl --no-remote-printers

lub edytować

 /etc/cups/cupsd.conf

i nastaw

Browsing Off

To rozwiązanie znaleziono tutaj

Niektóre nowsze Ubuntus (15.04 i nowsze) mogą potrzebować tego polecenia:

sudo cupsctl --no-share-printers
SimplySimon
źródło
5
Nadal mam ten problem, chociaż mój cupdd.conf zawiera już „Przeglądanie wyłączone”. Uruchomienie cupsctl prowadzi do następującego błędu:cupsctl: Unknown option "--no-remote-printers" Usage: ...
Catalin Hritcu
Zapomniałem wspomnieć, że jestem na Ubuntu 13.10
Catalin Hritcu
1
@CatalinHritcu, co powiesz na ustawienie BrowseLocalProtocols none?
user.dz
dotyczy to współdzielenia lokalnych maszyn, a nie dodawania zdalnych drukarek.
Alex R
6

Biblioteki klienta pucharów otrzymują teraz także listę drukarek sieciowych od Avahi (która implementuje protokół znany jako zerooconf lub Bonjour lub mdns lub dns-sd). W starszych wersjach pucharów było to wykonywane tylko przez serwer pucharów.

Możesz zobaczyć, co jest nadawane w sieci za pomocą polecenia powłoki, takiego jak avahi-browse -a | grep Printer

Możesz wyłączyć avahi za pomocą sudo service avahi-daemon stop, ale to zatrzyma wszystkie ustawienia oparte na zeroconf, nie tylko drukarki.

John McP
źródło
1

Zatrzymanie go jest dość proste.

  1. Usuń niechciane drukarki. Następnie:

    sudo nano /etc/cups/cups-browsed.conf
    
  2. Zmień tę linię: BrowseRemoteProtocols dnssd cups(lub whaterver jest po nim), aby nikt tak to brzmi: BrowseRemoteProtocols none.

  3. Następnie zapisz plik i uruchom ponownie.

Rozwiązałem problem dla mnie.

Bas Heijermans
źródło
Wydaje się, że jest to duplikat odpowiedzi z 20 marca 2014 r. I 5 grudnia 2014 r.
Charles Green
0

Próbować:

  1. Otwórz http://localhost:631/admin/→ Edytuj plik konfiguracyjny lub Edytuj/etc/cups/cupsd.conf

  2. Zmiana:

    # Show shared printers on the local network.
    Browsing Off
    BrowseLocalProtocols none
    

Odniesienie: cupsd.conf: BrowseLocalProtocols

user.dz
źródło
1
Niestety nie powstrzymało to dodawania zdalnych drukarek.
azimut
0

Znalazłem rozwiązanie, jeśli wyłączysz bonjour w HP (prawdopodobnie także w innych drukarkach), wykrywanie tajemniczych drukarek należy do przeszłości.

Bas Heijermans
źródło