컵은 서비스로 실행될 때 avahi-daemon과 통신할 수 없습니다.

컵은 서비스로 실행될 때 avahi-daemon과 통신할 수 없습니다.

읽기 전용 모드에서 Raspberry Pi 설정을 마무리하고 있는데 컵 서비스가 문제를 일으키는 마지막 요소인 것 같습니다.

cup이 /etc에 구성을 쓰는 동안 나는 /etc/cups를 오버레이 시스템으로 마운트하기로 결정했습니다.

$ mount
...
overlay on /etc/cups type overlay (rw,relatime,lowerdir=/etc/cups_org,upperdir=/etc/cups_rw/upper,workdir=/etc/cups_rw/work)
...

컵 서비스가 성공적으로 시작되고 localhost:631 페이지에 액세스할 수 있지만 /admin 하위 페이지로 이동하면 "내부 서버 오류"가 발생하고 /printer 하위 페이지에 다음 메시지가 표시됩니다. 프린터 목록을 가져올 수 없습니다: 잘못된 파일 설명자.

서비스 시작 중에 로그에 다음이 표시됩니다.

E [03/Sep/2016:17:17:13 +0200] Unable to communicate with avahi-daemon: Daemon not running

avahi 데몬이 활성화되어 실행 중일 때

/admin 하위 페이지에 액세스하면 로그에 다음이 표시됩니다.

D [03/Sep/2016:18:22:39 +0200] [CGI] Started /usr/lib/cups/cgi-bin/admin.cgi (PID 5367)
I [03/Sep/2016:18:22:39 +0200] [Client 13] Started "/usr/lib/cups/cgi-bin/admin.cgi" (pid=5367)
D [03/Sep/2016:18:22:39 +0200] [Client 13] file=14
D [03/Sep/2016:18:22:39 +0200] [Client 13] Waiting for CGI data.
D [03/Sep/2016:18:22:39 +0200] Report: clients=1
D [03/Sep/2016:18:22:39 +0200] Report: jobs=0
D [03/Sep/2016:18:22:39 +0200] Report: jobs-active=0
D [03/Sep/2016:18:22:39 +0200] Report: printers=1
D [03/Sep/2016:18:22:39 +0200] Report: stringpool-string-count=654
D [03/Sep/2016:18:22:39 +0200] Report: stringpool-alloc-bytes=6392
D [03/Sep/2016:18:22:39 +0200] Report: stringpool-total-bytes=11720
D [03/Sep/2016:18:22:39 +0200] cupsd is not idle any more, canceling shutdown.
D [03/Sep/2016:18:22:39 +0200] [CGI] admin.cgi started...
D [03/Sep/2016:18:22:39 +0200] cupsd is not idle any more, canceling shutdown.
E [03/Sep/2016:18:22:39 +0200] [CGI] Unable to connect to cupsd: Bad file descriptor
E [03/Sep/2016:18:22:39 +0200] [CGI] Unable to connect to cupsd: Bad file descriptor
D [03/Sep/2016:18:22:39 +0200] [CGI] cupsServer()="/var/run/cups/cups.sock"
D [03/Sep/2016:18:22:39 +0200] [CGI] ippPort()=631
D [03/Sep/2016:18:22:39 +0200] cupsd is not idle any more, canceling shutdown.
D [03/Sep/2016:18:22:39 +0200] [CGI] cupsEncryption()=0
D [03/Sep/2016:18:22:39 +0200] cupsd is not idle any more, canceling shutdown.
D [03/Sep/2016:18:22:39 +0200] [Client 13] CGI data ready to be sent.
D [03/Sep/2016:18:22:39 +0200] PID 5367 (/usr/lib/cups/cgi-bin/admin.cgi) stopped with status 1.

그러나 서비스를 중지하고 프로그램을 수동으로 실행하면 다음과 같습니다.

/usr/sbin/cupsd -f

문제가 전혀 발생하지 않습니다. 로그에는 다음이 표시됩니다.

D [03/Sep/2016:18:25:33 +0200] Avahi server connection now available, registering printers for Bonjour broadcasting.

/admin(및 기타 모든 하위 페이지)에 액세스할 수 있습니다.

D [03/Sep/2016:18:25:36 +0200] [CGI] Started /usr/lib/cups/cgi-bin/admin.cgi (PID 6269)
I [03/Sep/2016:18:25:36 +0200] [Client 17] Started "/usr/lib/cups/cgi-bin/admin.cgi" (pid=6269)
D [03/Sep/2016:18:25:36 +0200] [Client 17] file=18
D [03/Sep/2016:18:25:36 +0200] [Client 17] Waiting for CGI data.
D [03/Sep/2016:18:25:36 +0200] cupsd is not idle any more, canceling shutdown.
D [03/Sep/2016:18:25:36 +0200] [CGI] admin.cgi started...
D [03/Sep/2016:18:25:36 +0200] cupsd is not idle any more, canceling shutdown.
D [03/Sep/2016:18:25:36 +0200] [Client 19] Accepted from localhost (Domain)
D [03/Sep/2016:18:25:36 +0200] [Client 19] Waiting for request.
D [03/Sep/2016:18:25:36 +0200] [CGI] http=0x554e9db8
D [03/Sep/2016:18:25:36 +0200] [CGI] cgiSetVariable: SECTION="admin"
D [03/Sep/2016:18:25:36 +0200] [CGI] cgiSetVariable: REFRESH_PAGE=""
D [03/Sep/2016:18:25:36 +0200] cupsd is not idle any more, canceling shutdown.
D [03/Sep/2016:18:25:36 +0200] [CGI] org.cups.sid cookie is "72b5efbcd72416115613b87b329ce911"
D [03/Sep/2016:18:25:36 +0200] [CGI] No form data, showing main menu...

이 동작의 원인이 무엇인지, 문제를 해결하는 방법(cups.service 파일의 구성 변경?) 또는 적어도 이 문제 해결을 더 발전시키는 방법에 대한 팁이 있습니까?

답변1

비슷한 문제가 있었는데 파일을 편집한 것이 도움이 되었습니다./usr/lib/systemd/system/org.cups.cupsd.service

[Unit]
Description=CUPS Scheduler
Documentation=man:cupsd(8)
After=network.target

[Service]
ExecStart=/usr/bin/cupsd -f

[Install]
Also=org.cups.cupsd.socket org.cups.cupsd.path
WantedBy=printer.target

root다음과 같이 서비스를 다시 시작하십시오 sudo.

# systemctl daemon-reload
# systemctl restart org.cups.cupsd

관련 정보