スキャナーはsudoでのみ使用可能

スキャナーはsudoでのみ使用可能

を持っていますエプソン ET-2756プリンター。簡単に印刷できますが、なぜデビアン10私のコンピュータはスキャナー部分を検出できませんでした。

最終的に、その理由がわかりました。scanimageコマンド (およびepsonscan2プリンタ用に特別にインストールされたもの) は、 で実行された場合にのみスキャナを検出できるのですsudo

なぜだろう... 特に、この前提条件を削除したいのですが。スキャンを実行する
必要性を削除するにはどうすればよいでしょうか?sudo


cas が提案する経験は以下の通りです:

# I look already registered as a scanner group member
cat /etc/group | grep scanner
scanner:x:117:saned,lebihan

# But this command fails:
scanimage --format=png >/tmp/test.png
scanimage: no SANE devices found

# While this one succeeds:
sudo scanimage --format=png >/tmp/test.png

答え1

ユーザーをscannerグループに追加します。

sudo addgroup yourusername scanner

次回ログインすると、uid でスキャナーを使用できるようになります。

あるいは、libpam-systemdパッケージは、ユーザーがログインしたときに正しい権限が設定されていることを確認することもできます。もしそうするための適切なルールがありますudev。ただし、スキャナー グループに自分自身を追加する方が簡単です。

Debian Wiki の以下を参照してください。

答え2

多くのデバイス アクセスの問題は、グループ メンバーシップの変更によって解決できます。

sudo journalctl --followデバイスを接続するときにデバイス名を確認することができます。またはls -1 /dev >dev.before、デバイスを接続して 10 秒待ってから、ls -1 /dev >dev.after;diff dev.{before,after}再接続して を実行しますls -lrt /dev | tail

具体的には、ls -l グループ権限 (2 番目の「rwx」トリプレット) が「rw」(例:「-rw-rw----」) であることが示される場合、デバイスを所有するグループに自分自身を追加するとrwアクセスが許可されます。

方法は次のとおりです。

device="/dev/whatever"
sudo adduser $USER $(stat -c "%G" $device)

rwこれにより、デバイスを使用できるグループのメンバーになることができます。しかし、もう1つのステップがあります。

すべてのプロセスを新しいグループのメンバーにするには、ログアウトしてログインします。グループ メンバーシップは、同時に設定されますlogin

新しいグループに単一のプロセスを作成するには(ログアウト/ログイン前のテスト用):

newgrp $(stat -c "%G" $device)  

または、グループ名を入力するだけです。 を参照してくださいman newgrp

関連情報