레이블이 Canon인 게시물을 표시합니다. 모든 게시물 표시
레이블이 Canon인 게시물을 표시합니다. 모든 게시물 표시

2016년 3월 5일 토요일

Canon Pixma MG2490 as CUPS print server on Fedora 23

A machine with Fedora 23 installed will act as a print server for both Linux and Windows clients.

What is really nice is that using ipp, CUPS can now share printers over the network to Windows clients without messing with Samba configuration!

At first, I naively thought that simply installing cups and xsane would be suffcient:

sudo dnf install cups xsane

However these packages and their dependencies are not sufficient for getting the MG2490 to print or scan.

Initially I also tried installing the package cnijfilter-mg2400-series.rpm.tar.gz but again, this package alone is not sufficient for setting up the printer/scanner. I therefore removed this package and was able to get the printer/scanner working just fine with the pure open-source drivers.

Referring to /var/log/dnf.log Here are all the packages I installed on Fedora 23 server for the Canon Pixma MG2490:

cups
gutenprint
gutenprint-libs
gutenprint-foomatic
gutenprint-cups

foomatic
foomatic-db
system-config-printer
(optional, but recommended)
sane
sane-backends-drivers-scanners
sane-backends
xsane (optional, but recommended)

Once everything is installed, start the cups systemd service:

systemctl start cups

Make sure the MG2490 is connected by USB cable to your CUPS print server and then run system-config-printer as root. Select "Add" and choose printer and your MG2490 should appear in a list. Choose the "USB MG2490" entry. The gutenprint-foomatic package includes a postscript PPD file for the Canon MG2400 series, so your printer should appear in the list under Canon printers





Since you will be sharing this printer on the network, in the printer properties make sure it is shared for all users. One of the dialog boxes will also offer to set up rules for CUPS and IPP in firewalld (how convenient!).
If you don't use system-config-printer, however, you will have to add several rules to firewalld manually using the gui firewall-config or on the command line with firewall-cmd.

In your default zone, open up port 631/tcp (for CUPS remote administration http interface) and also allow ipp-client traffic.There might be other settings required, but these are the ones that occur off the top of my head (I just used system-config-printer because I'm lazy).

Now from the server machine, open a browser and navigate to http://localhost:631, login to Printer Administration with root:password
 for your server, and print a test page. You can also print a test page from system-config-printer.

Other Linux clients can find the CUPS server if you enter it's IP address in the system-config-printer "Network Printer -> Find Network Printer" dialog box.

To add the Canon MG2490 for Windows clients, click on Control Panel -> Add New Printer, and select Network Printer.

In the address bar, enter the IPP address of your printer listed in CUPS. You can find this address in the CUPS web admin page on port 631 or through system-config-printer. In my case, the IPP address is:

ipp://192.168.30.6:631/printers/Canon_MG2400_series
But in the "Add Network Printer" dialog box on Windows clients, change this to http:

http://192.168.30.6:631/printers/Canon_MG2400_series

Note that the Windows client must have windows drivers for the MG2490 installed. Windows users will be prompted to select the printer driver. They should select the driver named "MG 2400 series". In the case of Windows 10, however, it will automatically detect the printer and install all drivers for the printer and scanner automatically! Once the printer is set up, have the Windows user print a test page. In my experience the initial test page took > 1 minute to print, but subsequent print jobs from Windows clients were processed much more quickly (< 30 sec).

It is such a relief to be able to set up a Linux print server for Windows clients without messing with Samba shares. Thank you, Linux + IPP!







2014년 2월 3일 월요일

Canon Pixma MG2400 Series (2490) support in Linux

I recently purchased a cheap inkjet/scanner Canon Pixma MG2490 for less than $50. I have had good results with the Canon Pixma MP 258 (MP250 series) which is fully supported in SANE.

After connecting the MG2490 to my machine I ran lsusb and got the following output:

[archjun@arch ~]$ lsusb
Bus 007 Device 006: ID 04a9:176c Canon, Inc.
...

Unfortunately, the MG2490 is not yet supported by SANE. Although sane-find-scanner returns

found USB scanner (vendor=0x04a9 [Canon], product=0x176c [MG2400 series]) at libusb:007:006

scanimage -L doesn't find any compatible scanners (not correct; see update below)

The proprietary Vuescan recognizes the MG2490 and provides basic scanner access in the free version (although a full-featured version costs $39.95 ~ $79.95). The free version embeds a full-page patterned watermark (Buy Vuescan Now!) throughout the scanned image, so this is a no-go for anyone who needs clean scans and wants to use FOSS.

UPDATE 2014-06-18: Actually SANE does recognize the MG2490. scanimage -L returns:

device `pixma:04A9176C_60C204' is a CANON Canon PIXMA MG2400 Series multi-function peripheral

Xsane also recognizes the MG2490, although it takes several minutes as it scans for devices. Once the scan interface appears, however, pressing "Scan" or "Acquire Preview" does nothing and just hangs.

Note that Canon provides .deb and .rpm packages for the MG2400 series. The scanner driver rpm can be found at:


The above package depends on the cnijfilter-mg2400 package whose rpm can be found at:


Printing works just fine OOTB without installing the Canon print driver -- if you install the gutenprint package, there is a ppd file that CUPS can use to detect the MG2940.

The problem right now is getting scanning to work, however...

UPDATE 2014-09-16 Pixma MG2400 series is now supported

According to this thread from sane-devel, Rolf Bensch has patched the latest sane backend in the sane git repo. I haven't yet had time to test the patched version of sane on the MG2490. When I get the chance, I will present my findings here.