Jak zapobiec powiadomieniom i ikonom, gdy telefon jest podłączony do USB?

10

Stan: dodatkowe powiadomienia i wyskakujące okienka po podłączeniu telefonu do złącza USB Warunki różnicowe: awaria zarządzania zasilaniem z USB, awaria zarządzania kartą sieciową.
Wsparcie: powiadomienia, wyskakujące okienka i ostrzeżenia dmesg pojawiają się głównie wtedy, gdy stan zasilania osiąga maksymalną wartość, ale staje się raczej stabilny, gdy procent stanu zasilania pozostaje stały.

Menedżer plików otwiera się, gdy mój telefon jest podłączony do mojego laptopa przez USB (Rysunek 1 i 2). W lewym pasku bocznym znajdują się również ikony wyskakujące (Rysunek 3). Podczas tetheringu są również włączane i wyłączane częste powiadomienia o połączeniach internetowych (Rysunek 4 i 5). Kabel złej jakości zwiększa częstotliwość tych uciążliwości. Wszystkie typy powiadomień mogą być wiele razy na minutę. Ich częstość wzrasta, gdy akumulator osiąga stan wysokiej mocy, ale pozostaje stabilny, gdy bateria jest w pełni naładowana.

  • Robię w propozycję gsettings set org.gnome.desktop.media-handling automount-open false , która rozwiązuje problem automount-open , jego stan dmesg | tail "http://paste.ubuntu.com/17376441/">tutaj .

Widzisz około 10-30 okien z błędem (rysunek 1 i 2) i ikona z prawej strony telefonu pojawia się w przód iw tył (rysunek 3), gdy tylko urządzenie jest podłączone do laptopa

  • Wykonujędrugąpropozycjęwjandreagsettingssetorg.gnome.desktop.media-handlingautomountfalse.JednakikonatelefonuSamsungzaczynawyskakowaćwpaskupolewejstronieponownie.Występujegłówniewtedy,gdymójlaptopjestwpełninaładowany,więcmożetostanowićproblemwzarządzaniuenergią.Standmesg|tailto tutaj (patrz także rysunek 3), który wystąpił po raz pierwszy i najczęściej, gdy mój laptop osiąga maksimum stan baterii.

Podzbiór drugiego dmesg tutaj

[    5.788819] wl: module license 'MIXED/Proprietary' taints kernel.
[    5.788820] Disabling lock debugging due to kernel taint
[    5.789154] input: HDA Intel PCH Headphone as /devices/pci0000:00/0000:00:1b.0/sound/card1/input8
[    5.797453] wl: module verification failed: signature and/or required key missing - tainting kernel
[    5.812002] input: HDA Intel HDMI HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:03.0/sound/card0/input9
[    5.812092] input: HDA Intel HDMI HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:03.0/sound/card0/input10
[    5.812165] input: HDA Intel HDMI HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:03.0/sound/card0/input11
[    5.981764] intel_rapl: Found RAPL domain package
[    5.981769] intel_rapl: Found RAPL domain core
[    5.981771] intel_rapl: Found RAPL domain uncore
[    5.981772] intel_rapl: Found RAPL domain dram
[    6.024117] wlan0: Broadcom BCM43a0 802.11 Hybrid Wireless Controller 6.30.223.248 (r487574)
[    6.030416] applesmc: key=561 fan=1 temp=33 index=33 acc=0 lux=2 kbd=1
[    6.050130] wl 0000:03:00.0 wlp3s0: renamed from wlan0
[    6.242168] Non-volatile memory driver v1.3
[    6.428191] IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready
[    6.862799] input: bcm5974 as /devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:1.2/input/input12
[    6.862926] usbcore: registered new interface driver bcm5974
[    7.053663] fuse init (API version 7.24)
[    7.329118] Bluetooth: Core ver 2.21
[    7.329540] NET: Registered protocol family 31
[    7.329543] Bluetooth: HCI device and connection manager initialized
[    7.329548] Bluetooth: HCI socket layer initialized
[    7.329551] Bluetooth: L2CAP socket layer initialized
[    7.329558] Bluetooth: SCO socket layer initialized
[    7.350445] usbcore: registered new interface driver btusb
[    7.355183] Bluetooth: hci0: BCM: chip id 73 build 0932
[    7.356184] Bluetooth: hci0: BCM: product 05ac:828f
[    7.372192] Bluetooth: hci0: BCM20702B0 Generic USB Class 1 @ 20 MHz
[    7.391321] usb 1-3.1: USB disconnect, device number 5
[    7.634631] usb 1-3.2: USB disconnect, device number 6
[    8.363517] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    8.363521] Bluetooth: BNEP filters: protocol multicast
[    8.363525] Bluetooth: BNEP socket layer initialized
[    8.377953] Bluetooth: RFCOMM TTY layer initialized
[    8.377960] Bluetooth: RFCOMM socket layer initialized
[    8.377965] Bluetooth: RFCOMM ver 1.11
[   78.943062] usb 1-1: USB disconnect, device number 2
[   79.308530] usb 1-1: new high-speed USB device number 8 using xhci_hcd
[   79.437071] usb 1-1: New USB device found, idVendor=04e8, idProduct=6863
[   79.437079] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   79.437083] usb 1-1: Product: SAMSUNG_Android
[   79.437086] usb 1-1: Manufacturer: SAMSUNG
[   79.437089] usb 1-1: SerialNumber: d068730a
[   79.978452] usbcore: registered new interface driver cdc_ether
[   79.981649] rndis_host 1-1:1.0 usb0: register 'rndis_host' at usb-0000:00:14.0-1, RNDIS device, 02:57:00:57:38:37
[   79.981726] usbcore: registered new interface driver rndis_host
[   79.983854] rndis_host 1-1:1.0 enp0s20u1: renamed from usb0
[   80.011403] IPv6: ADDRCONF(NETDEV_UP): enp0s20u1: link is not ready
[ 1290.235637] usb 1-1: USB disconnect, device number 8
[ 1290.235777] rndis_host 1-1:1.0 enp0s20u1: unregister 'rndis_host' usb-0000:00:14.0-1, RNDIS device
[ 1290.591107] usb 1-1: new high-speed USB device number 9 using xhci_hcd
[ 1290.719964] usb 1-1: New USB device found, idVendor=04e8, idProduct=6863
[ 1290.719973] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1290.719977] usb 1-1: Product: SAMSUNG_Android
[ 1290.719981] usb 1-1: Manufacturer: SAMSUNG
[ 1290.719984] usb 1-1: SerialNumber: d068730a
[ 1290.722251] rndis_host 1-1:1.0 usb0: register 'rndis_host' at usb-0000:00:14.0-1, RNDIS device, 02:57:00:57:38:37
[ 1291.255806] rndis_host 1-1:1.0 enp0s20u1: renamed from usb0
[ 1291.277892] IPv6: ADDRCONF(NETDEV_UP): enp0s20u1: link is not ready
[ 1870.316573] usb 1-1: USB disconnect, device number 9
[ 1870.316687] rndis_host 1-1:1.0 enp0s20u1: unregister 'rndis_host' usb-0000:00:14.0-1, RNDIS device
[ 1871.735777] usb 1-1: new high-speed USB device number 10 using xhci_hcd
[ 1871.865681] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 1871.865687] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1871.865690] usb 1-1: Product: SAMSUNG_Android
[ 1871.865692] usb 1-1: Manufacturer: SAMSUNG
[ 1871.865694] usb 1-1: SerialNumber: d068730a
[ 2265.887618] usb 1-1: USB disconnect, device number 10
[ 2268.395967] usb 1-1: new high-speed USB device number 11 using xhci_hcd
[ 2268.524992] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 2268.524998] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2268.525001] usb 1-1: Product: SAMSUNG_Android
[ 2268.525003] usb 1-1: Manufacturer: SAMSUNG
[ 2268.525005] usb 1-1: SerialNumber: d068730a
[ 2389.754208] usb 1-1: USB disconnect, device number 11
[ 2451.283233] usb 1-1: new high-speed USB device number 12 using xhci_hcd
[ 2451.412713] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 2451.412719] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2451.412722] usb 1-1: Product: SAMSUNG_Android
[ 2451.412725] usb 1-1: Manufacturer: SAMSUNG
[ 2451.412727] usb 1-1: SerialNumber: d068730a
[ 4253.278282] usb 1-1: USB disconnect, device number 12
[ 4254.096939] usb 1-1: new high-speed USB device number 13 using xhci_hcd
[ 4259.392860] usb 1-1: new high-speed USB device number 14 using xhci_hcd
[ 4259.522162] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 4259.522167] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4259.522170] usb 1-1: Product: SAMSUNG_Android
[ 4259.522173] usb 1-1: Manufacturer: SAMSUNG
[ 4259.522175] usb 1-1: SerialNumber: d068730a
[ 4259.731917] usb 1-1: USB disconnect, device number 14
[ 4260.068777] usb 1-1: new high-speed USB device number 15 using xhci_hcd
[ 4260.200384] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 4260.200389] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4260.200392] usb 1-1: Product: SAMSUNG_Android
[ 4260.200395] usb 1-1: Manufacturer: SAMSUNG
[ 4260.200397] usb 1-1: SerialNumber: d068730a
[ 4487.825779] usb 1-1: USB disconnect, device number 15
[ 4488.457511] usb 1-1: new high-speed USB device number 16 using xhci_hcd
[ 4488.643676] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 4488.643682] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4488.643685] usb 1-1: Product: SAMSUNG_Android
[ 4488.643687] usb 1-1: Manufacturer: SAMSUNG
[ 4488.643689] usb 1-1: SerialNumber: d068730a
[ 4507.592538] usb 1-1: USB disconnect, device number 16
[ 4507.929239] usb 1-1: new high-speed USB device number 17 using xhci_hcd
[ 4508.115547] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
[ 4508.115553] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4508.115556] usb 1-1: Product: SAMSUNG_Android
[ 4508.115558] usb 1-1: Manufacturer: SAMSUNG
[ 4508.115560] usb 1-1: SerialNumber: d068730a

Innepropozycje

  • Sneetsher.Działapierwszegodnia.Damciznać,jaktodziaławprzyszłymtygodniu.

    >sudo-i>sed's/LABEL="libmtp_usb_rules"/LABEL="libmtp_usb_rules"\n\n#Masi, ignore my phone\nATTR{idVendor}=="04e8", ATTR{idProduct}=="6863", GOTO="libmtp_rules_end"/g' /lib/udev/rules.d/69-libmtp.rules | sudo tee /etc/udev/rules.d/69-libmtp.rules \
    udevadm control --reload-rules
    
    # TODO for long time monitoring
    

Telefon: Samsung Galaxy S4 gt-i9506 z nieoficjalnym temasek ROM z CyanogenMod 13 z wystarczającymi łatami
Wersje Ubuntu: 16.04
Jądro Linux: 4.4 i 4.6 Opcje jądra Linux: wl
Bash: 4.3.42 (1) -release (x86_64-pc-linux-gnu)
Laptop: w połowie 2013 roku Macbook Air USB: dwa porty USB3 (do 5 Gb / s) ( tutaj oficjalne specyfikacje)
Sterowniki kart sieciowych: niewolne broadcom-sta-dkms (zobacz tutaj )
VPN w telefonie: NordVPN US udp server
VPN w laptopie, gdy połączenie Wi-Fi z firewallem routera: NordVPN EE udp server

  • Wsparcie 1: negatywna zmiana stanu zasilania (-1%) jest powiązana z powiadomieniami.
  • Wsparcie 2: niestabilne połączenie internetowe zużywa znaczną ilość energii (\ Delta P = 1%).
  • Wsparcie 3: chronione połączenie internetowe VPN znacznie zmniejsza liczbę powiadomień.
zadawane Léo Léopold Hertz 준영 14.07.2015, 08:03
źródło

6 odpowiedzi

3

dconf to miejsce do sprawdzenia w tej sytuacji.

  

dconf to niskopoziomowy system konfiguracji i zarządzania ustawieniami. Jego głównym celem jest dostarczenie backendu do GSettings i KSettings na platformach, które nie mają jeszcze systemów pamięci konfiguracji. To zależy od GLib. Jest częścią GNOME 3 i zastępuje GConf.   ~ Wikipedia

W tym celu musisz zainstalować edytor dconf w następujący sposób:

sudo apt-get update
sudo apt-get install dconf-tools

Aby otworzyć edytor dconf ,

Naciśnij Alt + F2

lub

przejdź do Aplikacja > Narzędzia systemowe > edytor dconf

Teraz w edytorze dconf, na pasku bocznym

org> > gnome > pulpit > obsługa multimediów

Odznacz opcję automount-open .

Poniżej przedstawiono zrzut ekranu edytora dconf w 16.04:

    
odpowiedział Dhaval Simaria 07.06.2016, 16:45
źródło
2

Wersja CLI odpowiedzi @ Dhaval-Simaria:

gsettings set org.gnome.desktop.media-handling automount-open false

Zwróć uwagę, że Ubuntu zawiera gsettings ; nie trzeba go instalować.

Edytuj, aby uzyskać zaktualizowane informacje: ponieważ komunikaty o błędach zgłaszają problem z zamontowaniem, spróbuj wyłączyć automount:

gsettings set org.gnome.desktop.media-handling automount false
    
odpowiedział wjandrea 08.06.2016, 00:03
źródło
1

Jeśli uruchamiasz Xubuntu, jest to naprawdę łatwe, ponieważ ma panel konfiguracji do wyboru zachowania automatycznego. Po prostu przejdź do Ustawienia > Sprzęt > Removable Drives and Media, a następnie odznacz odpowiednie opcje:

    
odpowiedział Alistair Buxton 08.06.2016, 20:21
źródło
1

Uwaga: Wszystkie poniższe polecenia wymagają mocy roota, więc najpierw przełącz się na powłokę główną, używając sudo -i lub sudo su . Jeśli chcesz uruchomić bezpośrednio z sudo <cmd> , zobacz Podczas korzystania sudo z przekierowaniem, otrzymuję "odmowę zgody" .

  • Ustaw regułę udev dla libmtpto zignoruj swój model telefonu:

    sed 's/LABEL="libmtp_usb_rules"/LABEL="libmtp_usb_rules"\n\n#Masi, ignore my phone\nATTR{idVendor}=="04e8", ATTR{idProduct}=="6863", GOTO="libmtp_rules_end"/g' /lib/udev/rules.d/69-libmtp.rules > /etc/udev/rules.d/69-libmtp.rules; \
    udevadm control --reload-rules
    

    Aby wycofać:

    rm /etc/udev/rules.d/69-libmtp.rules
    
  • Dla wszystkich węzłów USB

    echo "DRIVERS==\"usb\", RUN+=\"/bin/sh -c 'echo 1 > /sys%p/remove'\" > /etc/udev/rules.d/99-usb-fallen-leaves.rules; \
    udevadm control --reload-rules
    

    Aby wycofać:

    rm /etc/udev/rules.d/99-usb-fallen-leaves.rules
    

    + Reboot

  • Tutaj inna metoda, która nie wymaga ponownego uruchomienia.

    1. Wygeneruj wiązanie & amp; binduj skrypty za pomocą tego:

      Jako skrypt usb-ctrl-gen.sh

      #!/bin/sh
      
      c=$(pwd)
      
      for o in "unbind" "bind"
      do
      
        cd $c
      
        echo Generate usb-$o.sh... 
      
        echo "#!/bin/sh\n" > usb-$o.sh
        chmod +x usb-$o.sh
        for d in /sys/bus/pci/drivers/[uex]hci* ; do cd $d; find $d -type l -iname "0000*" -printf 'echo "%f" > ' -exec echo $d/$o \;;  done >> usb-$o.sh
      
      done
      
      echo Done
      

      Lub jedna linia:

      c=$(pwd); for o in "unbind" "bind"; do echo Generate usb-$o.sh...; echo "#\!/bin/sh\n" > usb-$o.sh; chmod +x usb-$o.sh; for d in /sys/bus/pci/drivers/[uex]hci*; do cd $d; find $d -type l -iname "0000*" -printf 'echo "%f" > ' -exec echo $d/$o \;;  done >> usb-$o.sh; cd $c; done; echo Done
      

      Przykład wyniku:

      usb-unbind.sh

      #!/bin/sh 
      
      echo "0000:00:1a.0" > /sys/bus/pci/drivers/ehci-pci/unbind
      echo "0000:00:1d.0" > /sys/bus/pci/drivers/ehci-pci/unbind
      echo "0000:00:14.0" > /sys/bus/pci/drivers/xhci_hcd/unbind
      

      usb-bind.sh

      #!/bin/sh
      
      echo "0000:00:1a.0" > /sys/bus/pci/drivers/ehci-pci/bind
      echo "0000:00:1d.0" > /sys/bus/pci/drivers/ehci-pci/bind
      echo "0000:00:14.0" > /sys/bus/pci/drivers/xhci_hcd/bind
      
    2. Dodaj usb-unbind.sh do /etc/profile , aby uruchomić przy starcie. Użyj usb-bind.sh, aby włączyć kontroler USB, gdy zajdzie taka potrzeba.

      echo $(pwd)/usb-unbind.sh > /etc/profile.d/usb-unbind-hook.sh
      

    Aby odegrać rolę:

    rm /etc/profile.d/usb-unbind-hook.sh
    

    Dokumentacja: Jak zresetować urządzenie USB z wiersza poleceń?

odpowiedział user.dz 14.06.2016, 15:39
źródło
1

Powinieneś zajrzeć do reguł udev. Dzięki nim możesz zablokować jedno urządzenie bez wpływu na żadne inne urządzenia USB. Możesz zdefiniować własne reguły udev, tworząc plik w /etc/udev/rules.d/ , np. /etc/udev/rules.d/51-block-phone-mount.rules

Teraz znajdź idVendor i idProduct urządzenia. Te są dobre w użyciu, ponieważ są w większości unikalne dla produktu, więc możesz ich użyć do zidentyfikowania urządzenia w regule udev.

Wyświetl urządzenia USB za pomocą lsusb i uzyskaj coś takiego:

Bus 002 Device 002: ID 8087:8002 Intel Corp.  
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub  
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub  
Bus 001 Device 002: ID 8087:800a Intel Corp.  
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub  
Bus 005 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub  
Bus 004 Device 002: ID 0424:2660 Standard Microsystems Corp.  
Bus 004 Device 003: ID 03f0:0024 Hewlett-Packard KU-0316 Keyboard  
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Odpowiednią częścią jest magistrala i urządzenie, np. Autobus 004 i urządzenie 003. Z sudo lsusb -vs 004:003 | grep -E 'idProduct|idVendor' otrzymasz niezbędne informacje, np .:

idVendor           0x03f0 Hewlett-Packard  
idProduct          0x0024 KU-0316 Keyboard

Oznacza to, że twój /etc/udev/rules.d/51-block-phone-mount.rules musiałby mieć wstawioną:

#Phone automount block  
SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="0024", ATTR{authorized}="0"

Możesz go wypróbować natychmiast, po prostu odkładając telefon i sprawdzając, czy działa.

    
odpowiedział Ziazis 08.06.2016, 11:05
źródło
0

Mam podobny problem z jednym plus jednym, który ma nieco wadliwe gniazdo usb, co powoduje, że uruchamia okno nautilus co 5 minut.

Najskuteczniejszym sposobem uniknięcia tego problemu było sprawienie, aby udev zignorował go całkowicie, dopasowując dostawcę usb i identyfikator modelu, a następnie ustawiając urządzenie w nieautoryzowanym trybie. W ten sposób zapobiegasz temu, aby to urządzenie uruchamiało coś bardziej zaawansowanego, na przykład automatyczne podłączanie, nie wpływając na nic innego.

jak zrobić czarną listę udev link

przewodnik dla telefonów Samsung link

    
odpowiedział Amias 07.06.2016, 17:35
źródło

Przeczytaj inne pytania na temat tagów