sane-find-scanner(1)
π NAME π
sane-find-scanner β bestie, this is the lil detective that goes and finds your SCSI and USB scanners and figures out which device files they're living in π΅οΈβοΈβ¨
πΈ SYNOPSIS πΈ
sane-find-scanner [-?|-h|--help] [-v] [-q] [-p] [-f] [-F filename]
[devname]
π DESCRIPTION π
Okay so sane-find-scanner is a command-line tool that hunts down SCSI and USB scanners and works out what their UNIX device files are. Its whole main character goal? Making sure your scanners can actually get detected by SANE backends. No cap.
For SCSI scanners, it checks the default generic SCSI device files (like /dev/sg0) and /dev/scanner. The test is done by sending a SCSI inquiry command and looking for a device type of "scanner" or "processor" β and yes, some old HP scanners apparently be sending "processor" instead π (it's giving vintage). So sane-find-scanner will find any SCSI scanner connected to those default device files even if it isn't supported by any SANE backend. Iconic behavior honestly.
For USB scanners, it tests the USB kernel scanner device files first β think /dev/usb/scanner0, /dev/usb/scanner, and /dev/usbscanner. The files get opened and the vendor and device ids are determined, if the operating system supports this feature. Quick heads up: currently USB scanners are only found this way if they're supported by the Linux scanner module or the FreeBSD or OpenBSD uscanner driver.
After that test, sane-find-scanner tries to scan for USB devices found by the USB library libusb (if it's available). Now, there's no special USB class for scanners, so the heuristics used to tell scanners apart from other USB devices are lowkey not perfect π. It also tries to figure out the type of USB chip used in the scanner β and if it detects it, that gets printed after the vendor and product ids. And bestie? sane-find-scanner will even find USB scanners that aren't supported by any SANE backend. Ate. π
Also real talk:sane-find-scannerwon't find most parallel port scanners, or scanners connected to proprietary ports. Some parallel port scanners may be detected bysane-find-scanner -p. At the time of writing this will only detect Mustek parallel port scanners. π«Ά
β¨ OPTIONS β¨
-?,-h,--helpβ Prints a short usage message. The lil "here's how u use me" moment.-vβ Verbose output. Use it once andsane-find-scannershows every device name and the test result. Use it twice and the SCSI inquiry information and the USB device descriptors get printed too. Go off, more info queen π-qβ Be quiet. Prints only the devices, no comments. Minimalist vibe. π€«-pβ Probe parallel port scanners.-fβ Force opening all explicitly given devices as SCSI and USB devices. That's useful ifsane-find-scanneris wrong in determining the device type. (Basically: "girl, I know better, just try both." π)-F filenameβfilenameis a file that contains USB descriptors in the format of/proc/bus/usb/devicesas used by Linux.sane-find-scannertries to identify the chipset(s) of all USB scanners found in such a file. This option is useful for developers when the output ofcat /proc/bus/usb/devicesis available but the scanner itself isn't.devnameβ Test device filedevname. No other devices are checked ifdevnameis given. It's giving loyal. π
π EXAMPLE π
sane-find-scanner -v
Check all SCSI and USB devices for available scanners and print a line for every device file.
sane-find-scanner /dev/scanner
Look for a (SCSI) scanner only at /dev/scanner and print the result.
sane-find-scanner -p
Probe for parallel port scanners.
π¦ SEE ALSO π¦
sane(7), sane-scsi(5), sane-usb(5), scanimage(1), xscanimage(1), xsane(1), sane-"backendname"(5)
π AUTHOR π
Oliver Rauch, Henning Meier-Geinitz and others
β SUPPORTED PLATFORMS β
USB support is limited to Linux (kernel, libusb), FreeBSD (kernel, libusb), NetBSD (libusb), OpenBSD (kernel, libusb). Detecting the vendor and device ids only works with Linux or libusb.
SCSI support is available on Irix, EMX, Linux, Next, AIX, Solaris, FreeBSD, NetBSD, OpenBSD, and HP-UX.
π BUGS π
- No support for most parallel port scanners yet. π
- Detection of USB chipsets is limited to a few chipsets.
That's the whole tea, bestie β this page is from the SANE Scanner Access Now Easy manual set, dated 13 Jul 2008. Stay iconic, go find those scanners. π β¨
π¦ where this page comes from
- alpine 3.24: sane-doc 1.4.0-r4 Β· GPL-2.0-or-later GPL-2.0-or-later-with-sane-exception Public-Domain
- arch rolling: sane 1.4.0-4 Β· GPL-2.0-or-later AND LicenseRef-GPL-2.0-or-later-with-linking-exception
- centos-stream 10: sane-backends 1.2.1-10.el10 Β· GPL-2.0-or-later WITH SANE-exception AND GPL-2.0-or-later AND GPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND IJG AND MIT
- debian bookworm: sane-utils 1.2.1-2 Β· GPL-2.0-or-later WITH sane exception
- debian trixie: sane-utils 1.3.1-3+b1 Β· GPL-2.0-or-later WITH sane exception
- fedora 43: sane-backends 1.4.0-4.fc43 Β· GPL-2.0-or-later WITH SANE-exception AND GPL-2.0-or-later AND GPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND IJG AND MIT
- fedora 44: sane-backends 1.4.0-6.fc44 Β· GPL-2.0-or-later WITH SANE-exception AND GPL-2.0-or-later AND GPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND IJG AND MIT
- nixos 26.05: sane-backends 1.4.0
- nixpkgs unstable: sane-backends 1.4.0
- opensuse-leap 16.0: sane-backends 1.3.0-bp160.1.14 Β· GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND SUSE-Public-Domain
- opensuse-leap 16.0: sane-backends 1.3.0-bp160.1.14 Β· GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND SUSE-Public-Domain
- opensuse-leap 16.0: sane-backends 1.3.0-bp160.1.14 Β· GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND SUSE-Public-Domain
- opensuse-leap 16.0: sane-backends 1.3.0-bp160.1.14 Β· GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND SUSE-Public-Domain
- ubuntu jammy: sane-utils 1.1.1-5 Β· GPL-2.0-or-later WITH sane exception
- ubuntu noble: sane-utils 1.2.1-7build4 Β· GPL-2.0-or-later WITH sane exception
- ubuntu questing: sane-utils 1.3.1-4build1
- ubuntu resolute: sane-utils 1.4.0-1ubuntu1 Β· GPL-2.0-or-later WITH sane exception
- ubuntu stonking: sane-utils 1.4.0-1ubuntu2 Β· GPL-2.0-or-later WITH sane exception
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms