電話がUSBに接続されているときに通知とアイコンポップアップを防ぐにはどうすればよいですか?


12

状態:電話がUSBに接続されているときの無関係な通知とポップアップ。
異なる条件:USBによる電源管理の失敗、ネットワークカード管理の失敗。
サポート:通知、ポップアップ、dmesg警告は、主に電源状態が最大高に達したときに発生しますが、電源状態のパーセンテージが一定に保たれるとかなり安定します。

電話機をUSB経由でラップトップに接続していると、ファイルマネージャーが開いたままになります(図1および2)。左側のバーにもポップアップアイコンがあります(図3)。また、テザリング時にインターネット接続の通知が頻繁にオン/オフになります(図4および5)。品質の悪いケーブルは、それらの煩わしさの頻度を高めます。すべてのタイプの通知は、1分あたり何回も可能です。バッテリーが高電力状態に達すると、そのレートは増加しますが、バッテリーが完全に充電されているときは安定しています。

  • ここで問題、その状態を解決するwjandreaの提案 を行いますgsettings set org.gnome.desktop.media-handling automount-open falseautomount-opendmesg | tail

デバイスをラップトップに接続したままにしておくと、エラーのウィンドウが約10〜30回(図1および2)、携帯電話の右側のアイコンが前後にポップ(図3)します。

ここに画像の説明を入力してください

ここに画像の説明を入力してください

ここに画像の説明を入力してください

  • wjandreaの2番目の提案を行いgsettings set org.gnome.desktop.media-handling automount falseます。ただし、サムスンの電話のアイコンが左側のバーに何度もポップアップし始めます。これは主に、私のラップトップが完全に充電されているときに発生するため、電源管理の問題になる可能性があります。そのdmesg | tail状態はここにあり(図3も参照)、これは初めて発生し、ほとんどの場合、私のラップトップがほぼ最大のバッテリー状態に達したときに発生しました。

ここに2番目のdmesgのサブセット

[    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

ここに画像の説明を入力してください

ここに画像の説明を入力してください

その他の提案

  • スニーカー。初日は動作します。来週の仕組みをお知らせします。

    > 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
    

電話:Samsung Galaxy S4 gt-i9506、Temasekの非公式ROM、CyanogenMod 13、十分なパッチを適用済み
Ubuntuバージョン:16.04
Linuxカーネル:4.4および4.6
Linuxカーネルオプション:wl
Bash:4.3.42(1)-release(x86_64-pc-linux- gnu)
ラップトップ:2013年中頃Macbook Air
USB:2つのUSB3ポート(最大5 Gbps)(ここでは公式の仕様)
ネットワークカードドライバー:non-free broadcom-sta-dkmsここを参照)
電話のVPN:NordVPN US udpサーバー
VPNルーターとファイアウォールでWi-Fi接続しているときのラップトップ:NordVPN EE udpサーバー

  • サポート1:電源状態のマイナスの変化(-1%)は通知に関連付けられています。
  • サポート2:不安定なインターネット接続はかなりの電力を使用します(\ Delta P = 1%)。
  • サポート3:VPNで保護されたインターネット接続により、通知の量が大幅に減少します。

3
システム設定->詳細->リムーバブルメディアを実行しNever prompt or start programs on media insertion、「ファイル'気質ケーブルで開く?多くのパーティションに分割されたUSBまたは外付けHDを挿入して複数のファイルインスタンスを一度に開くと嫌になるので、これは私が通常行うことです。
pHeLiOn 2016年

@pHeLiOnはい、それはwjandreaの答えと同じものだと思います。
レオ・レオポルド・ヘルツ준 영

@Masiこれは別のdconf設定ですが、をorg.gnome.desktop.media-handling autorun-neverオーバーライドするため、同じことを行いますorg.gnome.desktop.media-handling automount-open
wjandrea 2016年

@ Masi、USB3ポートしかありませんか?
user.dz 2016年

1
@Sneetsherはい:Two USB 3 ports (up to 5 Gbps)。ここでスペックsupport.apple.com/kb/SP678?locale=en_US
レオ・レオポルド・ヘルツ준 영

回答:


3

dconfは、この状況でチェックする場所です。

dconfは、低レベルの構成システムおよび設定管理です。その主な目的は、まだ構成ストレージシステムがないプラットフォームでGSettingsおよびKSettingsへのバックエンドを提供することです。GLibに依存します。これはGNOME 3の一部であり、GConfの後継です。〜ウィキペディア

このためには、次のようにdconfエディターをインストールする必要があります。

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

dconfエディタを開くには、

Alt + F2を押す

または

[アプリケーション]> [システムツール]> [dconfエディター]に移動します

サイドバーのdconfエディター

org> gnome>デスクトップ>メディア処理

automount-openオプションのチェックを外します。

以下は、16.04でのdconf-editorのスクリーンショットです。

16.04のdconf-editor


1
これには、ubuntuがファイルシステムを自動マウントしないという副作用があります。つまり、彼らが言うようにナットをクラックするための大槌
Amias

1
@Masiあなたが探しているコマンドはですgsettings set org.gnome.desktop.media-handling automount-open false。私のdconfの経験では、コロンはキーボードオプションの場合と同様に、マッピングを示します。
wjandrea 2016年

1
@amiaschanner試してみたところ、実際には自動マウントされません。無効になっているのは、ドライブの自動オープンです。
wjandrea 2016年

@Masi 16.04 でdconf-editorのスクリーンショットを添付しました。これは14.04と同様に機能します。
Dhaval Simaria 2016年

2

@ Dhaval-Simariaの回答のCLIバージョン:

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

Ubuntuにはが付属していることに注意してくださいgsettings。インストールする必要はありません。


更新された情報の編集:エラーメッセージはマウントの失敗を報告しているため、自動マウントを無効にしてみてください:

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

4
dconf-editorはのグラフィカルなフロントエンドですgsettings。あなたはそれを必要としませんが、それはしばしば役に立ちます。
wjandrea 2016年

@wjandreaは、ソリューションの反対側(おそらくより簡単)を示してくれて感謝しています。
Dhaval Simaria 2016年

1
@Masiああ、あなたの最初の質問はあまり明確ではなかったので、あなたが言及した通知はポップアップnautilusウィンドウであると思いました。新しい情報を説明するために自分の回答を編集しました。
wjandrea 2016年

これらのコマンドはどちらも十分ではありません。ノートパソコンを10時間使用した後、左側のバーのアイコンが何度も表示されるようになりました。
レオ・レオポルド・ヘルツ준 영

@Masiなぜコメントを削除し続けるのですか?これを行うと、将来の読者がこのスレッドを読みにくくなります。
wjandrea 2016年

1

Xubuntuを実行する場合、自動マウントの動作を選択するための構成パネルがあるため、これは非常に簡単です。[設定]> [ハードウェア]> [リムーバブルドライブとメディア]に移動し、関連するオプションのチェックを外します。

ここに画像の説明を入力してください


1

注:以下のすべてのコマンドにはルート権限が必要なので、最初にsudo -iまたはを使用してルートシェルに切り替えsudo suます。で直接実行したい場合は、リダイレクトでsudoを使用するとsudo <cmd>「アクセスが拒否されました」を参照してください。

  • libmtpのudevルールを設定して、電話モデルを無視します。

    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
    

    ロールバックするには:

    rm /etc/udev/rules.d/69-libmtp.rules
    
  • すべての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
    

    ロールバックするには:

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

    +再起動

  • ここで再起動を必要としない別の方法。

    1. これを使用して、バインド解除およびバインドスクリプトを生成します。

      スクリプトとして 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
      

      または1行:

      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
      

      出力例:

      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. /etc/profileブート時に実行するためにusb-unbind.shを追加します。必要に応じてusb-bind.shを使用してUSBコントローラーを有効にします。

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

    ロールバックするには:

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

    参照: コマンドラインからUSBデバイスをリセットするにはどうすればよいですか?


1
すべての電話とすべてのUSBデバイスを無視するルールを作成するにはどうすればよいですか?必要なときにラップトップで明示的に開始したいだけです。何もないほうがいいです。私はそれらの多くと他の多くのデバイスも持っているので、1つだけの電話を持ちたくありません。これは1つのデバイスだけではありません。
レオ・レオポルド・ヘルツ준 영

1
@Masi回答を更新します。
user.dz 2016年

1

udevルールを調べる必要があります。それらを使用すると、他のUSBデバイスに影響を与えることなく1つのデバイスをブロックできます。あなたには、ファイルを作成することで、独自のudevルールを定義することができます/etc/udev/rules.d/例えば、 /etc/udev/rules.d/51-block-phone-mount.rules

次に、デバイスのidVendorとidProductを見つけます。これらはほとんどが製品に固有であるため、使用に適しています。これらを使用して、udevルールでデバイスを識別できます。

使用しているUSBデバイスを一覧表示して、lsusb次のようなものを取得します。

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

関連する部分は、バスとデバイスです。たとえば、バス004とデバイス003 sudo lsusb -vs 004:003 | grep -E 'idProduct|idVendor'です。必要な情報は、たとえば次のようになります。

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

つまり/etc/udev/rules.d/51-block-phone-mount.rules、次のコードを挿入する必要があります。

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

スマートフォンを再接続して機能するかどうかを確認するだけで、すぐに試すことができます。


0

私は、少し疑わしいUSBソケットがある1プラス1で同様の問題があります。これにより、5分ごとにノーチラスウィンドウが起動します。

これを防ぐために私が見つけた最も効果的な方法は、USBベンダーとモデルIDを照合してudevに完全に無視させ、デバイスを無許可モードに設定することでした。このようにして、他に影響を与えることなく、このデバイスが自動マウントなどの上流で何かをトリガーすることを明確に防ぎます。

udevブラックリストの作成方法 https://projectgus.com/2014/09/blacklisting-a-single-usb-device-from-linux/

サムスン電話のガイド http://blog.vacs.fr/vacs/blogs/post.html?post=2010/12/24/How-to-repair-the-USB-not-detected-problem-on-Android -サムスン電話


1
リンクのみの回答ではなく、回答の概要を教えてください。私はあなたの答えが設定media-handlingからそうでないまで実際にどのように異なるか理解していませんautomount-open。リンクには電話側のソリューションがあるようです。私の問題には2つの問題がある可能性があります。私は使用を行うサムスンの携帯電話(ギャラクシーS4 GT-i9506)、
レオ・レオポルド・ヘルツ준 영
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.