1.15. 인쇄 서버로 Samba 설정
Samba를 출력 서버로 설정하면 네트워크의 클라이언트가 Samba를 사용하여 출력할 수 있습니다. 또한 Windows 클라이언트가 구성된 경우 Samba 서버에서 드라이버를 다운로드할 수 있습니다.
이 섹션의 일부는 Samba Wiki에 게시된 Print Server 설명서로 Samba 설정에서 채택되었습니다. 라이센스: CC BY 4.0. 작성자 및 기여자: Wiki 페이지의 기록 탭을 참조하십시오.
사전 요구 사항
Samba는 다음 모드 중 하나로 설정되었습니다.
1.15.1. Samba에서 출력 서버 지원 활성화
기본적으로 인쇄 서버 지원은 Samba에서 활성화되어 있지 않습니다. Samba를 인쇄 서버로 사용하려면 그에 따라 Samba를 구성해야 합니다.
출력 작업 및 프린터 작업에는 원격 프로시저 호출(RPC)이 필요합니다. 기본적으로 Samba는 RPC를 관리하기 위해 필요에 따라 rpcd_spool
s 서비스를 시작합니다. 첫 번째 RPC 호출 중 또는 CUPS에서 프린터 목록을 업데이트할 때 Samba는 CUPS에서 프린터 정보를 검색합니다. 이 경우 프린터당 약 1초가 걸릴 수 있습니다. 따라서 50개 이상의 프린터가 있는 경우 rpcd_spools
설정을 조정하십시오.
사전 요구 사항
프린터는 CUPS 서버에서 구성됩니다.
CUPS에서 프린터를 구성하는 방법에 대한 자세한 내용은 인쇄 서버의 CUPS 웹 콘솔(https://printserver:631/help)에 제공된 설명서를 참조하십시오.
절차
/etc/samba/smb.conf
파일을 편집합니다.[ECDHEs]
섹션을 추가하여 Samba에서 출력 백엔드를 활성화합니다.[printers] comment = All Printers path = /var/tmp/ printable = yes create mask = 0600
중요[databinds]
공유 이름은 하드 코딩되며 변경할 수 없습니다.CUPS 서버가 다른 호스트 또는 포트에서 실행되는 경우
[ECDHEs]
섹션에서 설정을 지정합니다.cups server = printserver.example.com:631
프린터가 많으면 CUPS에 연결된 프린터 수보다 유휴 초의 수를 더 높은 값으로 설정합니다. 예를 들어 프린터가 100개 있는 경우
[global]
섹션에 설정합니다.rpcd_spoolss:idle_seconds = 200
이 설정이 환경에서 확장되지 않는 경우
[global]
섹션의rpcd_spools
작업자 수도 늘립니다.rpcd_spoolss:num_workers = 10
기본적으로
rpcd_spools는
5개의 작업자를 시작합니다.
/etc/samba/smb.conf
파일을 확인합니다.# testparm
필요한 포트를 열고
firewall-cmd
유틸리티를 사용하여 방화벽 구성을 다시 로드합니다.# firewall-cmd --permanent --add-service=samba # firewall-cmd --reload
smb
서비스를 다시 시작하십시오.# systemctl restart smb
서비스를 다시 시작한 후 Samba는 CUPS 백엔드에 구성된 모든 프린터를 자동으로 공유합니다. 특정 프린터만 수동으로 공유하려면 특정 프린터를 수동으로 공유를 참조하십시오.
검증
출력 작업을 제출합니다. 예를 들어pdf 파일을 인쇄하려면 다음을 입력합니다.
# smbclient -Uuser //sambaserver.example.com/printer_name -c "print example.pdf"
1.15.2. 수동으로 특정 프린터 공유
Samba를 출력 서버로 구성한 경우 기본적으로 Samba는 CUPS 백엔드에 구성된 모든 프린터를 공유합니다. 다음 절차에서는 특정 프린터만 공유하는 방법을 설명합니다.
사전 요구 사항
- Samba가 인쇄 서버로 설정
절차
/etc/samba/smb.conf
파일을 편집합니다.[global]
섹션에서 설정을 설정하여 자동 프린터 공유를 비활성화합니다.load printers = no
공유할 각 프린터에 대해 섹션을 추가합니다. 예를 들어 CUPS 백엔드에
example
이라는 프린터를 Samba에서Example-
printer로 공유하려면 다음 섹션을 추가합니다.[Example-Printer] path = /var/tmp/ printable = yes printer name = example
각 프린터마다 개별 스풀 디렉터리가 필요하지 않습니다.
[915s]
섹션에서 설정한 것과 동일한 spool 디렉터리를 프린터의path
매개변수에 설정할 수 있습니다.
/etc/samba/smb.conf
파일을 확인합니다.# testparm
Samba 구성을 다시 로드합니다.
# smbcontrol all reload-config