Print from macOS to CUPS
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
e816b814a0
commit
b70fe4ea83
@ -0,0 +1,62 @@
|
|||||||
|
---
|
||||||
|
layout: post
|
||||||
|
title: "Fix: macOS 15 Sequoia CUPS printing fails with Validate-Job client-error-not-found"
|
||||||
|
date: 2026-03-08
|
||||||
|
tags: [macos, cups, printing, linux]
|
||||||
|
---
|
||||||
|
|
||||||
|
When adding a remote CUPS print server on macOS 15 Sequoia, print jobs may fail immediately with:
|
||||||
|
|
||||||
|
```
|
||||||
|
Validate-Job client-error-not-found
|
||||||
|
```
|
||||||
|
|
||||||
|
## Cause
|
||||||
|
|
||||||
|
macOS sends a `Validate-Job` IPP request before submitting the actual print job. If the queue URI is incorrect, the server cannot find the printer and rejects it with this error.
|
||||||
|
|
||||||
|
The most common culprit is the **queue name** field when adding the printer via System Settings → Printers & Scanners → Add Printer → IP tab. Leaving it blank or entering just the printer name causes macOS to target the wrong IPP endpoint.
|
||||||
|
|
||||||
|
## Fix
|
||||||
|
|
||||||
|
When adding the printer, set the **Queue** field to:
|
||||||
|
|
||||||
|
```
|
||||||
|
/printers/<printername>
|
||||||
|
```
|
||||||
|
|
||||||
|
(note `/printers/` prefix, it's not **just the CUPS queue name**)
|
||||||
|
|
||||||
|
For example, if your printer is named `office-laser`:
|
||||||
|
|
||||||
|
```
|
||||||
|
/printers/office-laser
|
||||||
|
```
|
||||||
|
|
||||||
|
The full URI should resolve to:
|
||||||
|
|
||||||
|
```
|
||||||
|
ipp://<server>:631/printers/<printername>
|
||||||
|
```
|
||||||
|
|
||||||
|
## Fixing an already-added printer
|
||||||
|
|
||||||
|
No need to remove and re-add it. Update the URI in place with `lpadmin`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
lpadmin -p <printername> -v ipp://<server>:631/printers/<printername>
|
||||||
|
```
|
||||||
|
|
||||||
|
## Verifying the correct URI
|
||||||
|
|
||||||
|
You can confirm the printer name and path on the CUPS server with:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
lpstat -v
|
||||||
|
```
|
||||||
|
|
||||||
|
And test the endpoint directly from the Mac before adding the printer:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ipptool -tv ipp://<server>:631/printers/<printername> get-printer-attributes.test
|
||||||
|
```
|
||||||
Loading…
Reference in New Issue