Configuração do Núcleo
Nota
Costumava existir um conflito entre a estrutura de retaguarda
libusb do Cups e o controlador de núcleo usblp. Esse
não mais é o caso e o CUPS funcionará com ambos habilitados.
Se você quiser usar o controlador usblp do núcleo (por exemplo, se
desejar usar o escputil oriundo do
Gutenprint-5.3.4), habilite as seguintes
opções na configuração do teu núcleo e recompile o núcleo:
Device Drivers --->
[*] USB support ---> [CONFIG_USB_SUPPORT]
<*/M> OHCI HCD (USB 1.1) support [CONFIG_USB_OHCI_HCD]
<*/M> UHCI HCD (most Intel and VIA) support [CONFIG_USB_UHCI_HCD]
<*/M> USB Printer support [CONFIG_USB_PRINTER]
Se você tiver uma impressora paralela, habilite as seguintes opções
na configuração do teu núcleo e recompile o núcleo:
Device Drivers --->
<*/M> Parallel port support ---> [CONFIG_PARPORT]
<*/M> PC-style hardware [CONFIG_PARPORT_PC]
Character devices --->
<*/M> Parallel printer support [CONFIG_PRINTER]
Instalação do Cups
Você precisará adicionar um(a) usuário(a) lp
, pois o Cups criará alguns arquivos de propriedade
desse usuário. (O(A) usuário(a) lp
é o padrão usado pelo Cups, mas
pode ser mudado para um(a) usuário(a) diferente passando-se um
parâmetro para o conjunto de comandos sequenciais configure). Use o seguinte
comando como o(a) usuário(a) root
:
useradd -c "Usuário(a) do Serviço de Impressão" -d /var/spool/cups -g lp -s /bin/false -u 9 lp
Você também precisará de um grupo dedicado que conterá usuários(as)
autorizados(as) a realizar tarefas administrativas do Cups. Adicione o grupo executando o seguinte
comando como o(a) usuário(a) root
:
groupadd -g 19 lpadmin
Se você deseja adicionar um(a) usuário(a) ao grupo administrativo
do Cups, execute o seguinte
comando como o(a) usuário(a) root
:
usermod -a -G lpadmin <nome_usuário(a)>
Se você não instalou o xdg-utils-1.1.3, use o seguinte sed para mudar o navegador padrão
que será usado para acessar a interface web do Cups:
sed -i 's#@CUPS_HTMLVIEW@#firefox#' desktop/cups.desktop.in
Substitua firefox
pelo navegador da web da tua escolha.
Construa o Cups executando os
seguintes comandos:
./configure --libdir=/usr/lib \
--with-system-groups=lpadmin \
--with-docdir=/usr/share/cups/doc-2.4.2 &&
make
Para testar os resultados, emita: LC_ALL=C make -k check. Uma
sessão gráfica já ativa com endereço de barramento é necessária
para se executar os testes. Certifique-se de que não exista outra
instância do Cups executando, caso
contrário, pelo menos quatro (4) testes falharão com "address in
use". Um teste, httpAddrGetList
, é
conhecido por falhar.
Agora, como o(a) usuário(a) root
:
make install &&
ln -svnf ../cups/doc-2.4.2 /usr/share/doc/cups-2.4.2
Crie um arquivo de configuração básica de cliente do Cups executando o seguinte comando como o(a)
usuário(a) root
:
echo "ServerName /run/cups/cups.sock" > /etc/cups/client.conf
Nota
Esse pacote instala arquivos de ícone na hierarquia /usr/share/icons/hicolor
e você pode melhorar o
desempenho do sistema e o uso de memória atualizando /usr/share/icons/hicolor /index.theme
. Para
realizar a atualização, você precisa ter o GTK+-2.24.33 ou
GTK+-3.24.36 instalado e emitir o seguinte
comando como o(a) usuário(a) root
:
gtk-update-icon-cache -qtf /usr/share/icons/hicolor
Explicações do Comando
sed ... configure:
Esse sed remove uma opção de compilador que não mais é suportada.
Deixando essa mudança de fora, a compilação executará, mas um aviso
acerca de uma opção inválida de aviso será emitido em cada
invocação do compilador.
CC=gcc CXX=g++
: Configure-as se você
preferir usar o gcc
em vez do clang, que
agora é preferido pelo(a) desenvolvedor(a).
--with-system-groups=lpadmin
: Essa
chave garante que somente o lpadmin
será usado como o grupo administrativo do Cups .
--disable-libusb
: Use essa chave se
você tiver instalado o libusb-1.0.26,
mas desejar usar o controlador usblp do núcleo.
--enable-libpaper
: Use essa chave se
você tiver instalado a libpaper e
desejar usá-lo com o Cups.
Configurando o Cups
Arquivos de
Configuração
/etc/cups/*
Informação de Configuração
Normalmente, impressoras são configuradas por intermédio de um
navegador da web. O servidor Cups normalmente se conectará por meio da
URL http://localhost:631. A partir daí, impressoras, tarefas de
impressão e a configuração do servidor podem ser configurados(as)
e gerenciados(as). A administração remota do sistema também pode
ser configurada. A configuração também pode ser feita a partir da
linha de comando por meio dos comandos lpadmin, lpoptions e lpstat.
A configuração do Cups é
dependente do tipo de impressora e pode ser complexa. Geralmente,
as impressoras PostScript são mais fáceis. Para instruções
detalhadas acerca da configuração e uso do Cups, veja-se https://www.cups.org/documentation.html.
Para impressoras não PostScript imprimirem com o Cups, você precisa instalar o ghostscript-10.00.0 para converter
PostScript em imagens raster; e um controlador (por exemplo,
proveniente de Gutenprint-5.3.4) para converter as
imagens raster resultantes em um formato que a impressora
entenda. Os controladores
Foomatic usam o ghostscript-10.00.0 para converter
PostScript diretamente em um formato imprimível, mas isso é
considerado abaixo do ideal pelos(as) desenvolvedores(as) do
Cups.
Configuração do Linux PAM
Se o CUPS tiver sido construído
com suporte ao Linux PAM, você
precisa criar um arquivo de configuração do PAM para fazê-lo funcionar corretamente com
o BLFS.
Emita o seguinte comando como o(a) usuário(a) root
para criar o arquivo de configuração
para Linux PAM:
cat > /etc/pam.d/cups << "EOF"
# Inicia /etc/pam.d/cups
auth include system-auth
account include system-account
session include system-session
# Termina /etc/pam.d/cups
EOF
Unidade do systemd
Para iniciar o processo de segundo plano cupsd quando algo tentar
acessá-lo, habilite as unidades do systemd instaladas
anteriormente executando o seguinte comando como o(a) usuário(a)
root
:
systemctl enable cups