CUPSレポート「印刷データを書き込めません:破損したパイプ」


1

注意: 似たような質問 何年も前に投稿されました。それでも、長い答えで示されたデバッグ手順は役に立ちませんでした。そして最後に投稿された、おそらくそれに対する解決策は非常に直感的ではありません。だからここで私は、質問をもう一度投稿してください。

私のプリンターは接続されています socket://ip.of.printer:9100。プリンターのモデルはLaserJet P4015nです。私のコンピュータはArch Linuxを実行しています。カップ関連モジュールのバージョンは以下のとおりです。

cups-2.0.4-1-x86_64
cups-filters-1.0.71-1
cups-pk-helper-0.2.5-1
libcups-2.0.4-1
python-pycups-1.9.73-1

私のコンピューターの印刷システムは以前はうまく機能していました。しかし今日私が文書を印刷しようとすると、プリンタが応答しません。私のコンピューターで持っている最も古いバージョンにすべてのカップ関連パッケージをダウングレードすることは役に立ちません。プリンタドライバを再インストールすることもできません。

デバッグ時 # nc -vz ip.of.printer 9100 通常の接続を返す

...[ip.of.printer] 9100 (hp-pdl-datastr) open

確認中 /var/log/cups/error_log関連メッセージのみ

E [22/Aug/2015:01:15:33 +0800] [Job 35] Unable to write print data: Broken pipe

そしてプリンタ関連の結果 tcpdump 以下のように投稿されます(localhost名は Saturn、私はトレースしました Saturn.57142 それが原因で HP LaserJet P4015 ):

00:42:12.748387 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetRequest(28)  25.3.2.1.3.1
00:42:12.753755 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(45)  25.3.2.1.3.1="HP LaserJet P4015"
00:42:12.753904 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetNextRequest(27)  43.12.1.1.4
00:42:12.758850 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(34)  43.12.1.1.4.1.1="black"
00:42:12.758900 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetNextRequest(29)  43.12.1.1.4.1.1
00:42:12.763940 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(30)  43.12.1.1.5.1.1=8
00:42:12.764116 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetRequest(28)  25.3.5.1.2.1
00:42:12.771071 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(29)  25.3.5.1.2.1=00
00:42:12.771123 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetRequest(29)  43.10.2.1.4.1.1
00:42:12.775906 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(32)  43.10.2.1.4.1.1=51928

00:42:12.838656 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetNextRequest(27)  43.11.1.1.9
00:42:12.843572 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(31)  43.11.1.1.9.1.1=9120
00:42:12.843675 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetNextRequest(29)  43.11.1.1.9.1.1
00:42:12.848515 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(32)  43.11.1.1.9.1.2=173092
00:42:12.848630 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetNextRequest(29)  43.11.1.1.9.1.2
00:42:12.854099 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(30)  43.12.1.1.2.1.1=1
00:42:12.854138 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetRequest(28)  25.3.5.1.2.1
00:42:12.861080 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(29)  25.3.5.1.2.1=00


00:42:13.261306 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetNextRequest(27)  43.11.1.1.9
00:42:13.266306 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(31)  43.11.1.1.9.1.1=9120
00:42:13.266332 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetNextRequest(29)  43.11.1.1.9.1.1
00:42:13.271211 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(32)  43.11.1.1.9.1.2=173092
00:42:13.271254 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetNextRequest(29)  43.11.1.1.9.1.2
00:42:13.276577 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(30)  43.12.1.1.2.1.1=1
00:42:13.276675 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetRequest(28)  25.3.5.1.2.1
00:42:13.283540 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(29)  25.3.5.1.2.1=00
00:42:13.283623 IP Saturn.57142 > NPI7B3356.DynIP.ntu.edu.sg.snmp:  GetRequest(29)  43.10.2.1.4.1.1
00:42:13.288444 IP NPI7B3356.DynIP.ntu.edu.sg.snmp > Saturn.57142:  GetResponse(32)  43.10.2.1.4.1.1=51928

問題を解決する方法についての任意のアイデア?



iptableをアクティブにしたり、SElinuxを強制したりしていません。デバッグ手順の残りが行われ、結果が上に掲載されています。最後の解決策...私はその人が何を意味するのか理解できません。
Chong

1
私はあなたがすでにこれに答えたのを見ます、しかしあなたは試しましたか telnet [ip] 9100 それでもdisplay changeコマンドのようなものを実行して、それでもまだ接続が許可されるかどうかを確認しますか?
Cole Busby

@ColeBusby telnet [ip] 9100を試してみました。正常に接続した後、すぐに接続が「外部ホストによって閉じられました」。どういう意味ですか?
Chong

1
あなたがすでに見つけたことを正確に意味します、プリンタはポート9100での直接接続を許可せず、接続はプリンタによって閉じられました。
Cole Busby

回答:


1

ハードウェアの問題が実際には時々 - 単にハードウェアの問題...私の場合、それは私たちの学校が印刷ジョブの整理方法を変えたことが判明しました。彼らは直接印刷をブロックしました、おそらくファイアウォールポリシーによって。また、SAMBAプロトコルを使用してすべての印刷ジョブを中央サーバー経由でリダイレクトします。したがって、私はオフィスのプリンタにpingを実行できますが、印刷データをプリンタに送信することはできません。この問題は、ITスタッフに連絡し、変更に応じてコンピューターを再設定した後に解決しました。

あなたが同様の問題に遭遇し、そしてあなた自身の側でそれの原因を理解することができないならば。あなたはおそらくあなたの会社/組織のITスタッフに連絡するべきです。たぶん彼らはあなたに知らせることなく単にいくつかの設定を変更しました。


@ColeBusbyのおかげで、問題が実際にポート9100を介してプリンタに直接接続することに対する会社/組織の制限によるものであるかどうかをチェックする1つの方法は使用することです。

telnet [ip.of.the.printer] 9100

あなたの端末で。出力が

Trying 172.21.48.223...
Connected to 172.21.48.223.
Escape character is '^]'.

そしてすぐに続いて     接続は外部ホストによって閉じられました。

それからそれはあなたが首尾よくプリンターにアクセスし、まだプリンターが9100の港を通したあなたのアクセスを拒絶したことは明らかである。このような場合は、ITスタッフに、ポリシーが変更されていないかどうか、また新しい印刷システムを使用するように設定する方法を教えないように依頼してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.