スキャナーはsudoでのみ機能します。

スキャナーはsudoでのみ機能します。

エプソンET-2756印刷機。簡単に印刷できましたが、その理由を見つけるのに長い時間がかかりました。Debian 10マイコンピュータがスキャナ部分を検出できません。

結局私は理由を見つけました。scanimageepsonscan2プリンタ用に特別にインストールされている)コマンドは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しかし、もう一つのステップがあります。

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

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

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

またはグループ名を入力してください。望むよりman newgrp

関連情報