ガレージをぐるぐる回していると、古代のマトリックスプリンターであるEpsonLX-1050を見つけました。 Ubuntuは問題なく認識し、CUPS経由で数ページ印刷することができました。
さて、どういうわけか、このプリンタを1994年に設計された方法、つまりパラレルポートに直接書き込むために使用したいと思います。 USB3Gモデムを操作するために機能する最も単純なアプローチを試しました。
echo "Y helo thar" > /dev/lp0
エラーが発生しました:
bash: /dev/lp0: Access denied
このコマンドをSudoで試しましたが、成功しませんでした。また、ファイルをLPT1にコピーするDOSアプローチをミラーリングしようとしました。
cp /etc/hosts /dev/lp0
再び成功しませんでした。
このアプローチを機能させるために私が試みることができる提案はありますか?
私はそれを理解したようです。愚かな私。 lpadminの使用例をグーグルで検索しているときに、次のリンクにたどり着きました: http://ubuntuforums.org/showthread.php?t=1437325
Dev/lp0のパーミッションは次のとおりです。
c---rw---- 1 root lp 6, 0 2011-06-26 22:47 /dev/lp0
私の知る限り、グループlpにはlpユーザーしかいません。演奏した後
Sudo chmod 666 /dev/lp0
次のコマンドが意図したとおりに機能し始め、プリンターが記号を用紙に出力できるようにしました。
echo "Y helo thar" > /dev/lp0
まあ、それは印刷デーモン以外の誰かが誤ってLPTポートに書き込んだことに対する素晴らしい絶対確実だと思いますが、それでも私には意味がありません、なぜそれはルートに対して無効になっているのですか?
おそらく、lpデーモン(印刷スプーラー)は/ dev/lpの独占的な所有権を持っています。スプーラをシャットダウンします(lpadminおよび/ usr/bin/disableを確認してください)。