lprm/cancel 모두 인쇄 작업을 취소할 수 없습니다.

lprm/cancel 모두 인쇄 작업을 취소할 수 없습니다.

취소하고 싶은 인쇄 작업이 2개 있습니다.

Tux # lpq
photosmart_7200 is not ready
Rank    Owner   Job     File(s)                         Total Size
1st     unknown 190     unknown                         8192 bytes
2nd     unknown 191     unknown                         8192 bytes

루트가 아닌 일부 localhost 사용자(그러나 lp 및 lpadmin 그룹의 구성원)가 생성한 ASCII 텍스트를 lp. )

하지만:

Tux # lprm -
lprm: Forbidden
Tux # cancel -a
cancel: cancel-job failed: Forbidden

말할 필요도 없이 cup의 브라우저 인터페이스를 통해 동일한 결과를 얻었습니다. /var/log/cups_error.log는 다음과 같이 말합니다.

E [21/Sep/2022:08:41:10 +0200] [Client 9] Returning HTTP Interdit for Cancel-Job (ipp://localhost/jobs/190) from localhost
E [21/Sep/2022:08:47:00 +0200] [Client 14] Returning HTTP Interdit for Cancel-Job (ipp://localhost/jobs/191) from localhost

이러한 작업, 해당 d 파일 및 관련 제어 파일은 /var/spool/cups에 있습니다.

Tux /var/spool/cups # ls -ails
878712 4 -rw------- 1 root lp   1032  6 juin   15:18 c00190
878713 4 -rw------- 1 root lp    940  6 juin   15:18 c00191
878714 4 -rw------- 1 root lp    832  6 juin   15:18 c00192
891424 4 -rw------- 1 root lp    954 17 sept.  22:42 c00193
891442 4 -rw------- 1 root lp    954 17 sept.  22:42 c00194
891435 4 -rw------- 1 root lp    954 17 sept.  22:42 c00195
878708 8 -rw-r----- 1 root lp   7288  6 juin   15:17 d00190-001
878711 8 -rw-r----- 1 root lp   7288  6 juin   15:18 d00191-001
885657 4 drwxrwx--T 2 root lp   4096 29 août  08:32 tmp

linux-5.4에서 cup-2.4.2 실행(대부분 cup-2.3.3을 실행할 때 생성된 작업일 가능성이 높음)

그렇다면 이러한 명령이 실제로 작업을 취소하지 않는 이유와 작업을 정중하게 취소할 수 있는 방법은 무엇입니까(스풀 디렉터리에서 작업을 실행하지 않도록 방지).
그리고 이러한 일자리의 소유자가 어떻게 신고되었는지 설명해 주시겠습니까?"알려지지 않은" 문자열 제어 파일을 통해 lpq유효한 사용자 이름을 표시하시겠습니까 ?

답변1

/etc/cups/cupsd.conf음, @meuh의 의견은 더 광범위한 문제를 가리키고 있으며 특히 작업 취소에 관한 정책이 정의된 cup 구성 파일을 자세히 살펴보았습니다 .

<Limit … Cancel-Jobs…>
    AuthType Default
    Require @OWNER @SYSTEM
    Order deny,allow
</Limit>

그런 다음 /etc/cups/cups-files.conf에서 @SYSTEM 정의를 찾으세요.

# Administrator user group, used to match @SYSTEM in cupsd.conf policy rules...
# This cannot contain the Group value for security reasons...
SystemGroup lpadmin

기본적으로 SystemGroup은 lpadmin 그룹으로 나타납니다!

루트로 취소 명령을 실행했는데 루트 그룹이 SystemGroup 목록에 나열되지 않고 루트 사용자가 lpadmin 그룹의 구성원이 아니기 때문에... 아무 것도 아닌 no-no 대답이 나옵니다. 이상: 논리적.

이 문제는 루트 사용자를 lpadmin 그룹에 추가하여 해결되었습니다.
lpq는 이제 소유자의 사용자 이름에 대해 더 장황해졌습니다.

관련 정보