Envie suas digitalizações para uma máquina Linux pela sua rede
Configure um compartilhamento Samba para tornar um scanner facilmente acessível por um computador Linux em sua rede.
O famoso movimento do software livre começou por causa de uma impressora mal projetada. Décadas depois, os fabricantes de impressoras e scanners continuam a reinventar a roda, ignorando protocolos estabelecidos e universais. Como resultado, de vez em quando, você encontrará uma impressora ou scanner que parece não funcionar com o seu sistema operacional.
Isso aconteceu comigo recentemente com um scanner Canon 3 em 1 (o Canon Maxify MB2720). Consegui resolver o problema do scanner com código aberto. Especificamente, configurei um compartilhamento Samba para disponibilizar o scanner na minha rede.
O projeto Samba é um conjunto de programas de interoperabilidade do Windows para Linux e Unix. Embora seja principalmente um código de baixo nível com o qual muitos usuários nunca interagem conscientemente, o software facilita o compartilhamento de arquivos na rede local, independentemente das plataformas usadas.
Estou usando o Fedora, então estas instruções devem funcionar para qualquer distribuição Linux baseada em RPM. Pequenas modificações podem ser necessárias para outras distribuições. Veja como eu fiz isso.
Obtenha as ferramentas Canon
Baixe o software Windows Canon Quick Utility Toolbox necessário no site da Canon. O software é necessário porque é a única maneira de configurar o local e as credenciais da pasta de destino da impressora. Feito isso, você não precisará usar a ferramenta, a menos que queira fazer alguma alteração.
Antes de configurar a impressora, você deve configurar um compartilhamento Samba no seu computador ou servidor Linux. Instale o Samba com o seguinte comando:
$ sudo dnf -y install samba
Crie o arquivo /etc/smb.conf
com o seguinte conteúdo:
[global]
workgroup = WORKGROUP
netbios name = MYSERVER
security = user
#CORE needed for CANON PRINTER SCAN FOLDER
min protocol = CORE
#NTML AUTHV1 needed for CANON PRINTER SCAN FOLDER
ntlm auth = yes
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = no
cups options = raw
hosts allow = 127. 192.168.33.
max smbd processes = 1000
[homes]
comment = Home Directories
valid users = %S, %D%w%S
browseable = No
writable = yes
read only = No
inherit acls = Yes
[SCANS]
comment = MB2720 SCANS
path = /mnt/SCANS
public = yes
writable = yes
browseable = yes
printable = no
force user = tux
create mask = 770
Na linha force user
próxima ao final, altere o nome de usuário de tux
para seu próprio nome de usuário.
Infelizmente, a impressora Canon não funciona com protocolos Server Message Block (SMB) superiores à autenticação CORE ou NTML v2. Por esse motivo, o compartilhamento Samba deve ser configurado com o protocolo SMB mais antigo e as versões de autenticação NTML. Isso não é ideal de forma alguma e tem implicações de segurança, então criei um servidor Samba separado dedicado ao caso de uso do scanner. Meu outro servidor Samba, que compartilha todos os arquivos da rede doméstica, ainda usa o protocolo SMB 3 e autenticação NTML v2.
Inicie o serviço do servidor Samba e habilite-o para reinicialização:
$ sudo systemctl start smb
$ sudo systemctl enable smb
Crie um usuário Samba
Crie seu usuário Samba e uma senha para ele:
$ sudo smbpasswd -a tux
Digite sua senha no prompt.
Supondo que você queira montar suas varreduras Samba em um sistema Linux, você precisa seguir algumas etapas.
Crie um arquivo de credenciais do cliente Samba. O meu é assim:
$ sudo cat /root/smb-credentials.txt
username=tux
password=mySTRONGpassword
Altere as permissões para que não sejam legíveis por todos:
$ sudo chmod 640 /root/smb-credentials.txt
Crie um ponto de montagem e adicione-o em /etc/fstab
:
$ sudo mkdir /mnt/MB2720-SCANS
Adicione a seguinte linha em seu /etc/fstab
:
//192.168.33.50/SCANS /mnt/MB2720-SCANS cifs vers=3.0,credentials=/root/smb-credentials.txt,gid=1000,uid=1000,_netdev 0 0
Isso monta as varreduras de compartilhamento Samba no novo ponto de montagem usando CIFS, forçando o SMBv3 e usando o nome de usuário e a senha armazenados em /root/smb-credetials.txt
. Ele também passa o identificador de grupo do usuário (GID) e o identificador do usuário (UID), dando a você propriedade total da montagem do Linux. A opção _netdev
é necessária para que o ponto de montagem seja montado após a rede estar totalmente funcional (após uma reinicialização, por exemplo) porque esta montagem requer que a rede seja acessada.
Configurar o software Canon
Agora que você criou o compartilhamento Samba, configurou-o no servidor e configurou o compartilhamento para ser montado no seu cliente Linux, você precisa iniciar o Canon Quick Utility Toolbox para configurar a impressora. Como a Canon não lança esta caixa de ferramentas para Linux, esta etapa requer Windows. Você pode tentar executá-lo no WINE, mas se isso falhar, você terá que pegar emprestado um computador Windows de alguém ou executar uma máquina virtual de desenvolvedor Windows em GNOME Boxes ou VirtualBox.
Ligue a impressora e inicie o Canon Quick Utility Toolbox. Ele deve encontrar sua impressora. Se ele não conseguir ver sua impressora, você deverá primeiro configurá-la para rede LAN ou sem fio.
Na caixa de ferramentas, clique em Configurações da pasta de destino.
(Marc Skinner, CC BY-SA 4.0)
Digite a senha de administração da impressora – minha senha padrão era canon.
Clique no botão Adicionar.
Preencha o formulário com um Nome Exibido, seu local de compartilhamento do Samba e seu nome de usuário e senha do Samba.
Deixei o código PIN em branco, mas se quiser exigir que um PIN seja inserido sempre que digitalizar na impressora, você pode definir um. Isso seria útil em um escritório onde cada usuário possui seu próprio compartilhamento Samba e PIN para proteger suas digitalizações.
Clique em Teste de conexão para validar os dados do formulário.
Clique no botão OK.
Clique em Registrar na impressora para salvar sua configuração de volta na impressora.
(Marc Skinner, CC BY-SA 4.0)
Tudo está configurado. Clique em Sair. Agora você concluiu o Windows e provavelmente a caixa de ferramentas, a menos que precise alterar alguma coisa.
Comece a digitalizar
Agora você pode digitalizar a partir da impressora e selecionar sua pasta de destino no menu LCD. As verificações são salvas diretamente no compartilhamento Samba, ao qual você tem acesso no seu computador Linux.
Por conveniência, crie um link simbólico na área de trabalho do Linux ou no diretório inicial com o seguinte comando:
$ sudo ln -sd /mnt/MB2720-SCANS /home/tux/Desktop/MB2720-SCANS
Isso é tudo que há para fazer!