関連トピック
私の質問は似ていますが、まったく同じではありません。SSHが壊れており、メッセージ認証コードが正しくありません。これに対する答えはありません。
仕事
あるLinuxから別のLinuxに大容量ファイルをコピーします。どちらも同じISP位置にあります。
設定
ソースとターゲットの両方:Ubuntu 16.04.3 LTS
両方のSSHバージョン:OpenSSH_7.2p2 Ubuntu-4ubuntu2.2、OpenSSL 1.0.2g 2016年3月1日
ソースマシンは1年間何の問題もなく使用されました。ターゲットコンピュータは、新しくプロビジョニングされた専用サーバー(1日)です。
scpコマンド:
scp -P [customport] /some/large/file user@targetmachine:/target/folder/
ファイルサイズは約20GBです。
問題の説明
通常、約3〜4%後に中断されます。最大速度は約112MB/sです。たとえば、scp -l 16384を使用して調整すると、約2MB / sであり、ダウンタイムははるかに遅いですが、比率は似ています。
中断は常にまったく同じように機能します。顧客は以下を得る。
Write failed: Broken pipe
lost connection
サーバーの/var/log/auth.logにこれがありますが、
Nov 24 13:04:54 Ubuntu-1604-xenial-64-minimal-no-hwe sshd[1900]: Corrupted MAC on input.
Nov 24 13:04:54 Ubuntu-1604-xenial-64-minimal-no-hwe sshd[1900]: fatal: ssh_dispatch_run_fatal: Connection from [client-ip] port 54050: message authentication code incorrect
調査
iptablesを有効または無効にしようとしましたが、変更はありません。
約10回の試行のうち1回は正常に完了し、次のファイルで再び中断されます。
ターゲットコンピュータを再起動した後は、より多くのバイトを書き込むことができるようです。
SSHには問題ありません。アイドルSSH接続を数時間開いたままにするか、top
コマンドの実行中に中断することなく接続を開いたままにすることができます。
質問
これはインターセプターです。まず、200GBのファイルをコピーすることは不可能に見えます。第二に、生産中のコンピュータにネットワークの問題が発生したくありません。
この問題をさらに詳しく調べるにはどうすればよいですか?
ネットワークカード/ハードウェアの問題である可能性があることを他の場所で読みました。交換品を入手するには、サプライヤーにこれをどのように証明する必要がありますか?
アップデート1
10分の結果はmtr
良く見えます。
└─(~)─(49 files, 12Gb)─> mtr -r -c 600 -rw [targetserver]
Start: Fri Nov 24 18:36:21 2017
HOST: Ubuntu-1404-trusty-64-minimal Loss% Snt Last Avg Best Wrst StDev
1.|-- static.XX.XX.XX.XX.clients.your-server.de 0.0% 600 0.5 0.3 0.2 24.5 1.3
2.|-- core24.fsn1.hetzner.com 0.0% 600 0.3 0.3 0.2 6.8 0.4
3.|-- core22.fsn1.hetzner.com 0.0% 600 0.4 0.4 0.3 9.7 0.8
4.|-- ex9k2.dc1.fsn1.hetzner.com 0.0% 600 0.4 0.5 0.3 6.8 0.8
5.|-- my.target.hostname 0.0% 600 0.4 0.3 0.3 0.4 0.0
┌(myuser@Ubuntu-1404-trusty-64-minimal)─(✓)─(06:46 PM Fri Nov 24)
その後、後で44%の失敗率と111MB /秒の速度で異なるscpである7.5GBを試しました。失敗はその前にしばらく休まず、すぐに再び訪れました。
冗長性について:常に「無効なソケットプロトコルタイプ」の代わりに「壊れたパイプ」が表示されます。 Macを使用せずにすべてのLinux(上記のバージョン)を使用してください。 rsyncを使用しません。私が知っているのは、ユーザーが実際の原因を特定できずに別のネットワークカードをサーバーに接続したことです。このオプション(リモートホスティングセンターの専用サーバー)はありません。
以下は、ネットワークカードへのlshw出力です。
myuser@Ubuntu-1604-xenial-64-minimal-no-hwe /home/myuser # lshw -class network
*-network:0 DISABLED
description: Ethernet interface
product: NetXtreme II BCM57810 10 Gigabit Ethernet
vendor: Broadcom Corporation
physical id: 0
bus info: pci@0000:61:00.0
logical name: eth0
version: 10
serial: e0:d5:5e:1e:73:18
capacity: 1Gbit/s
width: 64 bits
clock: 33MHz
capabilities: pm vpd msix pciexpress bus_master cap_list rom ethernet physical fibre 1000bt-fd
configuration: autonegotiation=off broadcast=yes driver=bnx2x driverversion=1.712.30-0 firmware=bc 7.14.2 latency=0 link=no multicast=yes port=fibre
resources: iomemory:14c0-14bf iomemory:14c0-14bf iomemory:14c0-14bf irq:81 memory:14c0b000000-14c0b7fffff memory:14c0a800000-14c0affffff memory:14c0b810000-14c0b81ffff memory:e5f80000-e5ffffff memory:14c0ba20000-14c0bc1ffff memory:14c0bca0000-14c0bd1ffff
*-network:1 DISABLED
description: Ethernet interface
product: NetXtreme II BCM57810 10 Gigabit Ethernet
vendor: Broadcom Corporation
physical id: 0.1
bus info: pci@0000:61:00.1
logical name: eth1
version: 10
serial: e0:d5:5e:1e:73:1a
capacity: 1Gbit/s
width: 64 bits
clock: 33MHz
capabilities: pm vpd msix pciexpress bus_master cap_list rom ethernet physical fibre 1000bt-fd
configuration: autonegotiation=off broadcast=yes driver=bnx2x driverversion=1.712.30-0 firmware=bc 7.14.2 latency=0 link=no multicast=yes port=fibre
resources: iomemory:14c0-14bf iomemory:14c0-14bf iomemory:14c0-14bf irq:102 memory:14c0a000000-14c0a7fffff memory:14c09800000-14c09ffffff memory:14c0b800000-14c0b80ffff memory:e5f00000-e5f7ffff memory:14c0b820000-14c0ba1ffff memory:14c0bc20000-14c0bc9ffff
*-network:0
description: Ethernet interface
product: I350 Gigabit Network Connection
vendor: Intel Corporation
physical id: 0
bus info: pci@0000:62:00.0
logical name: eth2
version: 01
serial: 6c:b3:11:23:32:18
size: 1Gbit/s
capacity: 1Gbit/s
width: 32 bits
clock: 33MHz
capabilities: pm msi msix pciexpress bus_master cap_list rom ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=igb driverversion=5.3.0-k duplex=full firmware=1.63, 0x80000cbb ip=94.130.51.145 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
resources: irq:71 memory:e5900000-e59fffff memory:e5a84000-e5a87fff memory:e5a00000-e5a7ffff memory:14c0bf60000-14c0bf7ffff memory:14c0bf40000-14c0bf5ffff
*-network:1 DISABLED
description: Ethernet interface
product: I350 Gigabit Network Connection
vendor: Intel Corporation
physical id: 0.1
bus info: pci@0000:62:00.1
logical name: eth3
version: 01
serial: 6c:b3:11:23:32:19
capacity: 1Gbit/s
width: 32 bits
clock: 33MHz
capabilities: pm msi msix pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=igb driverversion=5.3.0-k firmware=1.63, 0x80000cbb latency=0 link=no multicast=yes port=twisted pair
resources: irq:82 memory:e5800000-e58fffff memory:e5a80000-e5a83fff memory:14c0bf20000-14c0bf3ffff memory:14c0bf00000-14c0bf1ffff
*-network DISABLED
description: Ethernet interface
physical id: 1
logical name: virbr0-nic
serial: 52:54:00:80:b4:28
size: 10Mbit/s
capabilities: ethernet physical
configuration: autonegotiation=off broadcast=yes driver=tun driverversion=1.6 duplex=full link=no multicast=yes port=twisted pair speed=10Mbit/s
KVMがインストールされていることを思い出させます。
apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils
しかし、仮想マシンはまだ起動していません。
答え1
scp
またはrsync
+ /を使用してsamba
同様の問題が発生しましたcifs
。
クライアントにサーバーをインストールするときに書き込みキャッシュをバイパスして問題をrsync
解決しsamba
ました(参照:cifs
--cache=none
rsync 接続は切断され続けます。パイプが壊れています。)。この問題の根本原因の詳細な説明は、次の場所にあります。ローカルディスクからの読み込み中にLinuxがネットワークファイルシステムに書き込むようにします。。
scp
ディスクが動作し続ける前にページ・キャッシュがいっぱいになるのを防ぐために、転送速度を制限することが考えられる。例を参照してください。https://stackoverflow.com/questions/30020519/broken-pipe-error-on-scp。
答え2
これは「最小化」インストールです。 Ubuntuの「最小」バージョンは最初から動作する可能性が高いです。
次のコマンドは、失敗したno-hweバージョンにhweをインストールするために使用されます(したがって、完全な再インストールは不要です)。
apt-get install --install-recommends linux-generic-hwe-16.04
shutdown -r now
その後、すべてのscpコピーが中断することなく機能します。
PS、ターミナルの挨拶は引き続き表示されます。
"myuser@Ubuntu-1604-xenial-64-minimal-no-hwe"
今でもhweがついています。
この修正前の動作をもう一度明確にします。他の場所からこのコンピュータに移動するすべての大きなscpは中断されますが、このコンピュータから別の場所に移動するすべての大きなscpは成功します。
サーバー仕様はこんな感じhttps://www.hetzner.de/epyc-serverホストはマザーボード/ネットワークのモデル番号を指定しません。