스캔은 "sudo"(우분투)에서만 작동합니다


15

단순 스캔을 사용하여 스캔을 시도하면 UI에라고 말합니다 Failed to scan -- Unable to connect to scanner. 커맨드 라인에서 실행하면 다음과 같은 결과가 나타납니다.

joel@home:/usr/bin$ simple-scan -d
** (simple-scan:6554): DEBUG: Starting Simple Scan 2.32.0.1, PID=6554
** (simple-scan:6554): DEBUG: Restoring window to 600x400 pixels
** (simple-scan:6554): DEBUG: sane_init () -> SANE_STATUS_GOOD
** (simple-scan:6554): DEBUG: SANE version 1.0.22
** (simple-scan:6554): DEBUG: Requesting redetection of scan devices
** (simple-scan:6554): DEBUG: Processing request
** (simple-scan:6554): DEBUG: Requesting scan at 300 dpi from device '(null)'
** (simple-scan:6554): DEBUG: scanner_scan ("(null)", 300, SCAN_SINGLE)
** (simple-scan:6554): DEBUG: sane_get_devices () -> SANE_STATUS_GOOD
** (simple-scan:6554): DEBUG: Device: name="brother2:bus4;dev1" vendor="Brother" model="MFC-210C" type="USB scanner"
** (simple-scan:6554): DEBUG: Processing request
** (simple-scan:6554): DEBUG: sane_open ("brother2:bus4;dev1") -> SANE_STATUS_IO_ERROR

** (simple-scan:6554): WARNING **: Unable to get open device: Error during device I/O

참고로, 나는 이미 완료했습니다 :

joel@home:~$ sudo chmod a+rwx /dev/bus/usb
joel@home:~$ sudo chmod a+rwx /dev/bus/usb/*

내가 아래에서 실행하면 sudo:

joel@home:~$ sudo simple-scan

효과가있다.

sudo없이 단순 스캔을 작동 시키려면 어떻게해야합니까?

답변:


7

기회는 점이다 saned당신이 연결할 수 있다고 생각하지 않습니다. 자세한 내용은 Ubuntu 스캔 방법 의 권한 문제 섹션을 참조하십시오.


2
모든 사용자 계정이 스캐너 그룹에 추가되지 않은 것 같습니다. 내가 사용 sudo adduser username scanner후 로그 오프와 OS에 의해 발견되는 그룹 구성원에 대해 다시 백업해야합니다.
— KayEss

나를 위해 일하지 않았다. 나는 그것을하는 유일한 방법은 간단한 스캔이 아닌 sudo와 텍스트 버전을 사용하는 것임을 기억합니다. 계속 지켜 볼 것
— Dennis

KayEss의 제안 ( "sudo adduser username scanner")이 Raspbian 설치에 효과적이었습니다.
— smashuu

5

비슷한 문제가 발생했습니다 (Ubuntu 11.04-Natty Narwhal) : 루트로 스캔하면 정상적으로 작동하고 사용자로 스캔하면 안됩니다. scanimage -L및 sane-find-scanner일반 사용자로 실행할 경우에도 발견하고 올바르게 스캐너를 확인했다. `루트 및 일반 사용자로서의 단순 스캔 -d는 그룹 권한 누락, 파일 누락 또는 드라이버 측면에서 유용한 것을 나타내지 않았습니다.

결국 이 링크는 저에게 효과적 이었습니다 .

해결책은 다음 파일을 편집하는 것입니다.

  • /lib/udev/rules.d/40-libsane.rules
  • /etc/udev/rules.d/55-libsane.rules

두 가지를 모두 편집해야하는지 확실하지 않으면 설명 된대로 모든 변경 사항을 적용했습니다. 매우 중요 : 편집 후 REBOOT.


2

다음을 편집하십시오.

/etc/default/saned

그리고 다음을 변경하십시오.

RUN_AS_USER=saned

에

RUN_AS_USER=root

다시 시작하고 다시 테스트하십시오 – 작동해야합니다.


2
보안 관점에서 이것이 바람직한 해결책이 아니라는 것이 있습니다.
— Kazark

1

이 줄을 /etc/rc.local(전에 exit 0) 추가하여 해결했습니다 .

chmod -R a+w /dev/bus/usb

다음 두 파일을 편집 / 만들기 :

/etc/xinetd.d/saned:

service saned 
{
socket_type = stream
server = /usr/sbin/saned
protocol = tcp
user = root
group = root
wait = no
disable = no
}

/etc/default/saned:

# Defaults for the saned initscript, from sane-utils

# Set to yes to start saned
RUN=yes

# Set to the user saned should run as
RUN_AS_USER=root

그런 다음 재부팅합니다.

작동하지만 여전히이 문제를 해결하는보다 안전한 방법을 원합니다.


1

sudo adduser YOURNONROOTUSERNAME lp

스캐너가 lp 그룹에 속하는지 확인하려면 :

sudo sane-find-scanner

libusb에서 USB 스캐너 (공급 업체 = 0x04f9, 제품 = 0x02a5)를 찾았습니다 : 001 : 002

ls -al / dev / bus / usb / 001/002

crw-rw-r-- 1 루트 lp 189, 11 월 24 일 12:43 / dev / bus / usb / 001 / 002


0

나는 똑같은 문제를 겪었고이 작업은 저에게 간단합니다. 스캐너 문제를 해결하기 위해 Brother 웹 사이트에서 실제로 복사했습니다.

  1. 열기 /lib/udev/rules.d/40-libsane.rules파일.

  2. 장치 목록 끝에 다음 두 줄을 추가하십시오. (행 전 # The following rule will disable ...) :

    # Brother scanners

    ATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes"


0

lp 그룹에 사용자 이름을 추가 한 다음 재부팅 (또는 sudo ldconfig)해야합니다. 모든 것이 작동해야합니다.

lsusb프린터 / 스캐너의 USB 버스 번호 (광산은 005였습니다)를 가져 와서 루트 가 소유자이고 lp 가 그룹이고 읽기 및 쓰기 권한이있는 그룹 ll /dev/bus/usb/005을 볼 수 있기 때문에 이것은 나를 위해 일했습니다 .


어떻게 지내 add your username to the lp group ?

0

또한 Epson EcoTank 2500에서도 동일한 문제가 발생했습니다. 터미널에 들어가서로 제품 ID를 찾았습니다 lsusb. EcoTank 2500의 경우 1105입니다.

그때

Open /lib/udev/rules.d/40-libsane.rules file.

그런 다음 gedit를 사용하여 해당 제품 ID를 검색하여 찾을 수 없었습니다. 그래서 바닥에 추가했습니다 (공간을 남겨두고 CAPS로 작성하여 변경 한 것이 나임을 알았습니다!)

# MY EPSON ECOTANK ET-2500

ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="1105", ENV{libsane_matched}="yes"

그런 다음 40-iscan.rules에서 동일한 작업을 수행했습니다 (동일한 폴더에 있음). 마지막으로 재부팅했습니다. 저기 프레스토 .... 아! 여기에 내 작업이 완료되었습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.