How do I install Epson Perfection 3170 scanner on Ubuntu 12.04 64 bit version?

Installing a 32-bit Epson scanner drivers on a 64bit Ubuntu system

Please see my earlier post on installing Epson scanners on 32 bit Ubuntu.

Warning: if you follow the procedure given in an earlier post for installing iscan that is used for 32 bit Ubuntu on 64 bit Ubuntu, you may not be able to boot your machine.

Please reply in the comments section if you have success on your version of Ubuntu.

To install the Scanner Epson Perfection 4180 Photo on a 64bit system, you have to create a CHROOT enviroment as a first step.

What is a CHROOT?

Glad you asked…It is a method which allows you to have a file system from another distribution running on your machine which saves you the bother of using virtual box or some such thing.

You may find it easier to install the 32 bit version of Ubuntu rather than go through all this rigmarole. However, if you want to use the 64 bit Ubuntu on your machine, and you need to use the 32 bit iscan plug in for your Epson scanner, then what follows is the only way.

You have to open a terminal and copy and paste the following commands.

sudo mkdir / var/sid-386-chroot 
sudo aptitude install debootstrap
sudo debootstrap - arch i386 sid / var/sid-386-chroot 
sudo nano / etc / 

# Chroot i386 system libs 
/ Var/sid-386-chroot/lib 
/ Var/sid-386-chroot/usr/lib 
/ Var/sid-386-chroot/usr/X11R6/lib 
/ Var/sid-386-chroot/usr/local/lib 

cd / lib 
sudo ln-s / ld-var/sid-386-chroot/lib/ 

If you get:  “cannot create “” symlink: File exists

do this…

sudo ldconfig 
sudo nano / etc / fstab

# Ia32 chroot
/ Home / var/sid-386-chroot/home none bind 0 0
/ Tmp / var/sid-386-chroot/tmp none bind 0 0
/ Proc / proc defaults 0 0 var/sid-386-chroot/proc
/ Dev / var/sid-386-chroot/dev none bind 0 0
none / var/sid-386-chroot/sys sysfs defaults
/ Var / run / var/sid-386-chroot/var/run none bind 0 0

WARNING: The following command means that if you need to remove the chroot then ALL bind-mounted partitions including your $ HOME will be deleted! So be sure to remove the first place:

$ Rm-rf / var/sid-386-chroot /

Add your username to saned and scanner groups with users-admin (gnome-system-tools must be installed).  You can do this by going to system>administration>users and groups. Find the scanner group and add your login name to it.

You can do this manually by editing the file:

sudo nano / etc / group

Add and adjust according to your system the scanner user group saned: saned: x: 121: scanner, family
Add and adjust according to your system user saned to group scanner: scanner: x: 117: saned, family

Logout (yes really) and re-authenticate

sudo cp / etc / passwd / var/sid-386-chroot/etc /
sudo cp / etc / shadow / var/sid-386-chroot/etc /
sudo cp / etc / hosts / var/sid-386-chroot/etc /
sudo cp / etc / group / var/sid-386-chroot/etc /

To enter and see the software sources and thus confirm that there is a SID system

sudo chroot / var/sid-386-chroot 
cat / etc / apt / sources.list 

EPSON drivers are based on RPM. We must download Epson drivers for Linux and then convert them. deb (With Alien) in 32bit chroot you can install and then copy the iscan-plugin-gt-f600_1.0.0-2_i386.deb file iscan_2.10.0 -2_i386.deb in the home

A typical control Alien conversion

alien - to-deb / home / user / Desktop / mon_paquetage.rpm

Install Alien

apt-get install alien

and proceed with the conversion (I’ll let you figure out how to do) and keep following the tutorial …

sudo mount-a
sudo chroot / var/sid-386-chroot
local apt-get install
dpkg-reconfigure locales

Choose your language e.g. uk or us.

aptitude install libatk1.0-0 libglib2.0-0 libgtk2.0-0-3 libieee1284 libjpeg62 libpango1.0-0 single-scan xsane
dpkg-i / home/famille/iscan_2.10.0-2_i386.deb
dpkg-i / home/famille/iscan-plugin-gt-f600_1.0.0-2_i386.deb
dpkg-i / home/famille/iscan-plugin-gt-7200_1.0.0-2_i386.deb

Edit / etc / sane.d / dll.conf In this file, just check that the following line exists, otherwise add the word (be careful, it may be at the end)


disconnect and reconnect your scanner

Set the printer as the default printer (if xsane error (broken pipe)) With Gnome 3 must be changed “rules” of udev that are installed with this driver by replacing SYSFS and ATTRS commented out all other adding a small lines # before each line:

nano / etc/udev/rules.d/45-libsane.rules

Comment out the line:

# Perfection 4180 
# SYSFS {idVendor} == "04b8", SYSFS {idProduct} == "0118", MODE = "664", GROUP = "scanner" 

Edition 60_iscan.rules file

	nano / etc/udev/rules.d/60_iscan.rules 

# Epson 1250			 
SUBSYSTEM == "usb", ATTRS {idVendor} == "04b8", ATTRS {idProduct} == "010f", MODE = "0666", GROUP = "scanner"

# Epson 4180
SUBSYSTEM == "usb", ATTRS {idVendor} == "04b8", ATTRS {idProduct} == "0118", MODE = "0666", GROUP = "scanner"

	/ Etc / init.d / udev restart

(I had to restart the computer to make it work)

Back in the 64bit system …
I also create this script to detect and adjust the permissions of 4180 and start xsane from the 64bit system but if your permissions are in place you do not need.:


str = $ (lsusb | grep-Ze "04b8: 0118" | cut-d:-f1)
str1 = $ (echo $ str | (cut-c5-7))
str2 = $ (echo $ str | (cut-c16-18))
echo $ str1 "/" $ str2
gksudo chmod 666 "/ dev / bus / usb /" $ str1 "/" $ str2
dchroot sid386-c-d xsane

In the preferences (copy) xsane (U.S. letter size)
paper in the parameters copy: 21.6cm width, 27.5 cm in length, .350 left margin and bottom margin 1.7 3.

Start applications from 64bits chroot system

3.1) Exit chrootet dchroot install the package:

sudo apt-get install dchroot

3.2) Edit / etc / schroot / schroot.conf:

	pluma sudo / etc / schroot / schroot.conf

description = Debian sid (unstable) 
directory = / var/sid-386-chroot
users = family 
groups = scanner
# Root-groups = root 
# Aliases = unstable, default 

3.3) you can start applications as ordinary chroot a user:

dchroot sid386-c-d xsane
dchroot sid386-d-c simple-scan

3.4) Add if you want a script to simplify integration and launch applications as if everything was in the 64bit system and use the commands ‘xsane’ and ‘simple-scan’ seamlessly from the command line: in / usr / local / bin create the following script, named ‘do_chroot’ and do a chmod 755 on it:

#! / Bin / sh
ARGS = ""
for i in "$ @" do
        ARGS = "$ ARGS $ i"

dchroot sid386 exec-c-d-q "` basename $ 0 `" "$ ARGS"

3.5) Last step: Add a symbolic link to our script:

cd / usr / local / bin
ln-s do_dchroot xsane
do_dchroot ln-s simple-scan

3.6) Now from the 64-bit system, you can start xsane the chroot32bits like this:

/ Usr / local / bin / xsane

or more simply:


(/ Usr / local / bin is accessed before / usr / local!) All this works because the symbolic / / link-local usr / bin / xsane points to / usr / local / bin / do_chroot, verification that the name (in this case ‘xsane’), add all the arguments that you have added and uses dchroot to start chroot 32bit version of xsane.

Obviously, you need to add a new link for each application added to the 32bit chroot you want to run the 64-bit system.

For reference, here are the tools used to find relevant information when debugging, you probably will not need this command to install:
For the path:

sudo udevadm monitor - udev - environment

you restart the device and the magic happens on the screen

and then to get the attributes of the device:

sudo udevadm info - path / devices/pci0000: 00/0000: 00:1 d.7/usb2/2-2/2-2: 1.0 - attribute-walk