미분류

리눅스에서 삼성 복합기 SL-C472W 스캔 기능 활용하기

이제는 HP로 매각된 삼성 프린터/복합기에 관한 내용입니다. 집에서 출력하는 양은 많지는 않지만 가끔을 출력이 필요할 때가 있고, 또한 스캐너도 심심치 않게 필요한 점을 감안하여 삼성 복합기인 SL-C472W를 구입했습니다. 성능이 약간 떨어지더라도 국산, 특히 국내 생산품을 사자는 주의라서 타사 프린터/복합기는 고려하지는 않았습니다. 기본 모델이 있고, 기본 모델명에 F가 붙으면 FAX, W가 붙으면 Wifi가 가능한 기종이 됩니다.

이 복합기에서 스캐너 기능으로 가장 많이 쓰는 것은 바로 아래 사진의 “스캔 보내기”입니다. 스캔하고자 하는 A4 용지를 스캐너 평판위에 올려 놓고 이 “스캔 보내기” 버튼을 누르면 지정된 PC에 PDF/JPEG 등으로 저장이 됩니다. 요즘에는 예전 스캔 했던 것처럼 스캔할 용지를 스캐너 위에 올려 놓고, PC로 돌아와서 스캔 프로그램을 띄워서 스캔을 하지는 않지요.

SL-C472W의 “스캔 보내기”

SL-C472W 기종에서 이 “스캔 보내기” 기능을 활용하기 위해서는 스캔한 파일을 저장하고자 하는 PC에 미리 프로그램이 띄워져 있어야 한다는 것입니다. 복합기/프린터와 함께 제공되는 Easy Printer Manager가 미리 PC에서 적절하게 설정되어서 실행되고 있어야 합니다. 예전에는 집의 HTPC/간이NAS로 Windows Homeserver 2012를 썼었는데요, 이것도 윈도 호환이다 보니 여기에 Easy Printer Manager를 깔아서 24시간 돌렸습니다. 언제든지 스캔해서 간이 NAS에 넣을 수 있도록.

문제는 HTPC/NAS를 리눅스로 이전하기로 결정하고 나서입니다. 리눅스에서 이 SL-C472W 용 프린터 드라이버는 있으나, 이 “스캔 보내기” 기능을 활용하기 위한 Easy Printer Manager 같은 프로그램이 없었기 때문입니다. 하지만 역시나 삼성 프린터. 외국에서 누가 리버스 엔지니어링을 통해서 이 “스캔 보내기” 기능을 구현해 놨습니다. 구현한 내용과 소스코드를 보니, 이 “스캔 보내기” 기능이란 것이 결국, 미리 PC에서 복합기에 저장할 장소를 등록하고, “스캔 보내기” 버튼을 눌러서 스캔을 시작하면, 복합기가 PC를 호출해서 PC에서 스캔을 하기 위한 SANE(Scanner Access Now Easy) 프로그램을 구동해서 스캔을 하는 구조입니다.

리눅스(데비안, 우분투)에서도 이 “스캔 보내기” 기능을 활용할 수 있습니다. 여기서 기술하는 대부분의 내용은 여기 The Samsung Unified Linux Driver Repository를 참고한 것입니다. 여기 포럼(forum)에 가면 Scanner Server에 대한 개발 과정을 자세하게 알 수 있습니다. 리눅스에서 이 Scanner Server 를 설치하기 위한 순서는 다음과 같습니다, 1. suldr을 리눅스 패키지 레포지토리로 추가, 2. Scanner Server (scantopc) 설치, 3. Scanner Server 설정.

1. 리눅스 패키지 레포지토리에 suldr 추가하기

이 내용은 The Samsung Unified Linux Driver Repository를 참고하시는 것이 가장 좋습니다.

  • /etc/apt/sources.list에 suldr을 추가합니다. vi와 같은 편집기로 /etc/apt/sources.list 를 열어 마지막 줄에 deb http://www.bchemnet.com/suldr/ debian extra를 추가합니다.

  • apt-get update를 실행서 패키지 리스트를 업데이트 합니다. 에러가 날텐데요, 걱정하지 마십시오. 키링(key-ring)이 설치되어 있지 않아서 그런 것입니다.

  • 키링(key-ring)을 설치합니다. 다음과 같이 wget 으로 key-ring을 받아서 설치합니다. 이렇게 하면 suldr 레포지토리로부터 Scanner Server 를 설치할 수 있습니다.

2. Scanner Server (scantopc) 설치

이제 본격적으로 Scanner Server를 설치할 것입니다. Scanner Server 는 파이썬으로 작성되었습니다. 위에서도 Scanner Server의 작동 방식을 간단하게 말씀드렸는데요, Scanner Server 는 SL-C472W 복합기에 스캐너 레포지토리를 등록하고, 복합기에서 신호를 받으면 SANE을 실행하여 스캔을 하고 그 결과 파일(PDF, JPEG 등)을 저장합니다. SANE 이나 PDF 를 만들기 위한 프로그램도 모두 파이썬으로 작성되어 있습니다. 따라서 Scanner Server 프로그램은 간단한 프로그램이지만 그 과정에서 파이썬, 파이썬 SANE 패키지, PDF 패키지 등 많은 프로그램을 설치할 것입니다.

  • apt-get install suld-scantopc 를 해서 Scanner Server를 설치합니다. 설명했다시피, 많은 패키지 설치를 요구할 것입니다. 모두 설치해 주십시오.

3. Scanner Server 설정

Scanner Server를 설정해야 합니다. /etc/sansumgScanServer.conf가 설정 파일입니다. 내용을 보시면 이해하기 어렵지 않습니다. 중요한 변수는 SCANNER_SANE_NAME, OWNER_UID, OUTPUT_PREFIX 입니다.

  • SCANNER_SANE_NAME: scanimage -c로 찾을 수 있습니다. 아래 파일에서 내부 ip 주소(192.168.219.20)만 자신의 복합기 ip로 바꿔 주셔도 무방할 것이라 생각합니다.

  • OWER_UID: 0을 root의 UID입니다. 자신의 UID를 찾아 넣어주셔도 되고, 별 문제 없다고 생각하면 root uid 그대로 사용하셔도 됩니다.

  • OUTPUT_PREFIX: 어느 디렉토리로 저장될지 결정하는 부분입니다. 여기서는 /root 디렉토리에 SCAN으로 시작하는 파일로 저장되도록 되어 있습니다. 위의 OWER_UID와 같이 owner가 그 디렉토리에 쓸(writable) 수 있어야 합니다.

  • 설정했으면 Linux 시작과 함께 시작되도록 서비스를 등록합니다. update-rc.d samsungScanServer defaults 서비스를 시작하려면 service samsungScanServer start 명령어를 내려주면 됩니다.

  • 설정파일에도 나와 있지만, 로그는 /var/log/samsungScannerServer.log에 기록됩니다. 뭔가 안될때는 로그를 보면 단서를 찾을 수 있습니다.

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다