우분투에 프린터 연결 설정하기
"리눅스는 대체 되는게 뭐야..?🤨"
이는 뼛속까지 문과인 친동생이 했던 발언이다.
그는 불시에 내 방을 방문하곤 하는데, 그 날은 내가 홈서버 커맨드를 열심히 뚜들기고 있었다.
bash에서? 아니 tty 콘솔에서 ^ㅅ^ㅎ
왜냐하면 디스플레이 매니저가 업뎃 오류로 반토막이 났기 때문이다. 이 경우 복구하기 전까진 GUI 세션을 쓸 수 없다.
동생은 어깨 너머로 오와 검은창 멋있다~ 하다가 나에게 물었다. "근데 지금 뭐하는거야?"
나는 문과 맞춤형으로 간단하게 줄여서 말했다. "업데이트가 깨져서 고치는 중이야"
그리고 덧붙였다. "윈도우는 쓰기 편하게 살짝 깨진건 알아서 복구해주는데 리눅스는 안되는 경우가 많아"
그러자 동생이 말했다.
"리눅스는 대체 되는게 뭐야..?"
이 말을 듣자마자 내 표정은 😦; 가 되었다. 아니 되는게 뭐냐니! 뭐든지 할 수 있는데! 커맨드로
리눅스의 아름다움을 모르는 당신이 참으로 불쌍하군요... 하며 그날은 넘어갔다.
그런데 최근 서류 뽑으려고 프린터 연결했다가 느낀 번거로움에, 그의 발언이 다시끔 떠올랐다.
드라이버 설치 딸깍 불가

윈도우는 그냥 제조사 홈페이지에서 관련 드라이버 설치 파일 받고 실행 딸깍하면 끝이었다.
근데 우분투는 apt install로 제조사의 드라이버 뭉탱이 패키지를 수동으로 설치하고, 여기서 맞는걸 찾아서 CUPS에 등록해줘야 했다.
처음엔 이게 제조사의 모든 제품에 대한 드라이버 뭉탱이인지도 몰랐다. 걍 통합 드라이버인줄 알았지 😂
그런데 내가 불편함을 느낀 것은 이후의 설정에서이다.
드라이버 설정이 이상해도 그냥 출력해버림
⚠️ 미리 용지 꽂아두지 마시오

나처럼 내부 에러 코드를 굳이 출력물로 보고 싶지 않다면 말이다... (usb 연결하니까 지가 갑자기 출력함)
⚠️ CUPS의 아묻따 출력 정책
CLI에서 조금이라도 설정 실수하면 출력 안되므로 CUPS 웹 인터페이스(http://localhost:631)에서 설정하자.
정확한 PPD를 설정해주는 것이 중요하다.

처음 CLI로 등록할때 잘 몰라서 GPT한테 물어봤는데 얘가 할루시네이션으로 잘못된 설정 데이터를 알려줬다. 뭉탱이 상에 존재하지 않는 드라이버명을 준 것이다. 이 때문에 CUPS의 PPD(드라이버) 설정 명령어에 들어가는 데이터 중 series를 Series라고 쓴다거나, 아니면 아예 안쓴다던가 하는 실수를 한적 있는데
이 때 애초에 뭉탱이에 없는 설정 데이터니까 등록시켜주질 말아야 하는 것 아닌가?
하지만 일단 등록은 시켜줬고, 막상 출력할때 잘못된 출력을 하는 식으로 동작했다.
이 경우 드라이버 비호환으로 거의 백지가 나오게 되는데 처음 설정해보는거라 왜 그런지 이유를 몰랐다.
알아보니 CUPS의 PPD 등록 옵션 중 lpadmin -m은 이후의 데이터를 그냥 URI마냥 문자열로 취급하는 옵션이었고,
출력할때 그제서야 PPD 로딩에 실패하면서 Generic 옵션이나 다름없는 상태에서 출력한 것이 원인이었다.
아니 이거 맞아요? warning이라도 해줘야 하는거 아님?
...놀랍게도 이러한 아묻따 출력은 CUPS의 의도된 설계라고 한다.
크롬 pdf 출력에서 버그 있음
크롬 인쇄 미리보기에서 설정을 어떻게 하든, 똑같이 y축 오프셋이 한참은 내려가게 출력된다.
로컬 프린터 설정에서 오프셋 조정해도 똑같다. 크롬 내부 렌더러(PDFium)와 CUPS 간의 이슈로 해당 버그가 흔하다고 한다.
그래서 pdf를 다운받아 로컬 뷰어에서 출력해보니 멀쩡했다.