내 ScanSnap IX500이 최근 작동을 멈췄습니다. 아마도 Debian jessie에서 Stretch로 업그레이드하는 중이었을 것입니다.
문서에 따르면http://www.sane-project.org/man/sane-fujitsu.5.html환경 변수를 설정 SANE_DEBUG_FUJITSU=5
한 다음 실행하면 다음과 같은 xsane
결과가 나타납니다.
fujitsu] sane_init: fujitsu backend 1.0.127, from sane-backends 1.0.25
[fujitsu] sane_get_devices: config option "buffer-size" (262144) is > 65536, warning!
[fujitsu] stat: return error 'Error during device I/O'
[fujitsu] WARNING: Brain-dead scanner. Hitting with stick
[fujitsu] stat: return error 'Error during device I/O'
[fujitsu] WARNING: Brain-dead scanner. Hitting with stick again
[fujitsu] stat: return error 'Error during device I/O'
[fujitsu] wait_scanner: error 'Error during device I/O'
[fujitsu] connect_fd: could not wait_scanner
그것은 lsusb
다음과 같이 표시됩니다
Bus 004 Device 002: ID 04c5:132b Fujitsu, Ltd
간헐적으로 나타나지만 scanimage -L
현재는 다음과 같이 표시됩니다.
SANE_DEBUG_FUJITSU=15 scanimage -L
[fujitsu] attach_one: start
[fujitsu] attach_one: looking for 'libusb:003:015'
[fujitsu] connect_fd: start
[fujitsu] connect_fd: opening USB device
[fujitsu] connect_fd: could not open device: 3
[fujitsu] connect_fd: finish
왜 작동하지 않나요? 어떻게 해결할 수 있나요?
참고: 스캐너는 USB 2 슬롯에 연결됩니다. 이전에는 USB 3 슬롯에 연결했습니다. 일부 보고에 따르면 USB 3이 문제라고 해서 USB 2 슬롯으로 전환해 보았으나 여전히 작동하지 않습니다.
예를 들어 버그 보고서를 참조하세요.https://bugzilla.redhat.com/show_bug.cgi?id=1297169 그리고 http://sane-devel.alioth.debian.narkive.com/kLQc0Aik/fujitsu-ix500-no-scanners-were-identified
그럼에도 불구하고 USB 장치가 USB 2 또는 USB 3 슬롯에 연결되어 있는지 여부에 관계없이 작동해야 합니다.
이 문제를 디버깅하는 데 도움을 준 Anthony(@derobert)에게 감사드립니다.
sane-backends
이것이 문제인 것 같습니다 . 다운그레이드하거나 업그레이드하면 문제가 사라질 것입니다. 스트레칭을 하고 있고 1.0.25-4.1
, 제시도 사용하고 있고 1.0.24-8+deb8u2
, 실험적입니다 1.0.27-1~experimental2
.
또한 플러그를 뽑았다가 다시 꽂으면 잠시 동안 디스플레이가 다시 나타나는 것 같습니다. 이는 문제가 USB에 있는 것이 아니라 sane-backends
USB 문제일 수 있음을 나타냅니다.
답변1
Raspbian(Debian 기반) Stretch에서 Buster로 마이그레이션하고 이전에 작동했던 scanbd 설정을 사용할 때도 이 문제가 발생했습니다.
편집: 누군가가 에 대한 내 답변을 편집하고 싶었지만 scandb
편집되었습니다.scanbd
.
지금까지 몇 가지 문제를 발견했습니다.
scanbm.socket
문제 중 하나는 "이미 사용 중인 포트" 오류와 관련된 것으로 보입니다. 이는 saned.socket
동일한 포트가 사용 중이기 때문인 것으로 보입니다. systemctl 을 사용하면 stop
문제 disable
가 해결되는 것 같습니다(서비스 파일은 실제로 동일함).
또 다른 문제는 권한 문제입니다. 장치를 찾을 수 없지만 scanimage -L
스캐너는 올바르게 감지됩니다 sudo scanimage -L
. sudo lsusb
follow 를 사용하면 ls -l /dev/bus/usb/BUSNUM/DEVNUM
스캐너가 의 소유자임을 알 수 있지만 root:saned
그룹 에 구성원이 없는 grep saned /etc/group
것으로 표시됩니다 . 그러나 사용자 를 포함하는 그룹이 saned
있습니다 . 이는 특정 사용자 및 그룹을 제거하기 위한 권한을 요청하는 파일의 옵션과 일치합니다(스캐너는 제안 사항 중 하나였습니다).scanner
saned
scanbd.conf
그룹을 소유하기 위해 일치하는 USB 장치의 권한을 변경하는 udev
서비스 파일을 찾았습니다 . 복사해서 대신 그룹을 사용하도록 수정했습니다 . 이 udev 규칙이 스트레치와 버스터 사이에 변경되었는지는 모르겠지만 이를 변경하고 재부팅하면 scanbd 사용 기능이 복원되는 것 같았습니다./lib/udev/rules.d/99-saned.rules
saned
/etc/udev/rules.d/99-saned.rules
scanner
saned
답변2
스트레치(9.8)에서 데비안 버스터/테스트로 업그레이드할 때 똑같은 증상과 똑같은 문제가 발생했습니다.
내가 우연히 만났어이 스레드, 이는 스캐너를 유지하는 scandb 데몬의 가능성을 언급합니다. 스레드에서 인용:
Found the culprit....
SANE DID work..... but I had scanbd installed too, so scanbd had the usb
connection with sane and kept the device locked.....
I disabled scanbd, as I remembered installing that and that it might
interfere with SANE... and so it did!
그러나 해당 게시물은 이 가설을 테스트할 방법을 제안하지 않습니다. ScanSnap에 해당하는 일부 장치를 사용하여 fuser
scandb가 실제로 이를 보유하고 있는지 확인하려고 잠시 시간을 보냈지만 어떤 장치여야 하는지 알 수 없었습니다. 그래서 마침내 나는 내가 사용하고 있던 것을 제거하기로 결정했습니다. scandb
내가 알 수 있는 한, 그래서 그것이 왜 설치되었는지조차 알 수 없었습니다. 마친 후
apt-get purge scandb
스캐너가 마술처럼 반응하기 시작합니다. 따라서 그것이 문제가 아니라면 우연의 일치입니다. 따라서 비슷한 문제가 있는 경우 시도해 볼 수도 있습니다.
제가 scandb를 스트레치로 설치한 것 같습니다. 4월 16일 Stretch에서 Breaker로 업그레이드하는 과정에서 다음과 같은 사실을 발견했습니다.term.log
Unpacking scanbd (1.5.1-4) over (1.4.4-1+b2) ...
그런데 지우면 해당 scanbd
행을 삭제해야 하는지 묻는 메시지가 나타납니다. 기본값은 "아니요"이므로 저는 그렇게 했습니다. 하지만 이 줄이 무엇을 위한 것인지 잘 모르겠습니다. 알고 계시다면 댓글을 달아주세요./etc/inetd.conf
sane-port
#:OTHER: Other services
sane-port stream tcp nowait saned /usr/sbin/scanbm scanbm
sane-port stream tcp nowait saned:saned /usr/sbin/saned saned
또한, 뭔가 잘못되었을 수 있다는 또 다른 신호는 scandb
이에 대한 뉴스입니다 journalctl
. journalctl
다시 3월 31일로 돌아가서 4월 15일 오후/저녁에 설치를 시작했습니다. 하지만 scanbd
in 에 대한 첫 번째 언급은 제가 작업을 마친 무렵 journalctl
인 4월 17일 이른 시간에 있었습니다 .apt-get upgrade
journalctl --unit=scanbd
Apr 17 00:52:18 orwell systemd[1]: Started Scanner button polling Service.
Apr 17 00:52:18 orwell scanbd[4942]: /usr/sbin/scanbd: dbus match type='signal',interface='org.freedesktop.Hal.Manager'
Apr 17 00:52:19 orwell scanbd[4942]: Created directory: /var/lib/snmp/mib_indexes
Apr 17 00:52:30 orwell scanbd[4942]: /usr/sbin/scanbd: no devices, not starting any polling thread
Apr 17 01:40:38 orwell scanbd[4942]: /usr/sbin/scanbd: dbus match type='signal',interface='org.freedesktop.Hal.Manager'
Apr 17 01:40:38 orwell scanbd[4942]: /usr/sbin/scanbd: no devices, not starting any polling thread
Apr 17 01:40:38 orwell systemd[1]: Stopping Scanner button polling Service...
Apr 17 01:40:39 orwell systemd[1]: scanbd.service: Succeeded.
Apr 17 01:40:39 orwell systemd[1]: Stopped Scanner button polling Service.
마지막으로 프로세스가 USB 스캐너를 많이 사용하는지 확인하는 방법을 아는 사람이 있습니까? 그렇다면 어떤 프로세스를 사용합니까? 나는 알고 싶다.