# USB printer permissions on Linux

**Symptom:** the printer shows up when you scan, but printing fails with an access or permission error.

## Why it happens[​](#why-it-happens "Direct link to Why it happens")

On Linux a USB device belongs to `root` unless a rule says otherwise, so an app running as you cannot open it. The kernel's own printer driver may also have claimed the device already.

## Do this[​](#do-this "Direct link to Do this")

1. Find the printer's vendor and product ids:

   ```
   lsusb
   ```

   Look for your printer's line — the ids are the two four-character values after `ID`, for example `04b8:0e28`.

2. Create a rule file, replacing the ids with yours:

   ```
   sudo tee /etc/udev/rules.d/99-receipt-printer.rules <<'RULE'

   SUBSYSTEM=="usb", ATTRS{idVendor}=="04b8", ATTRS{idProduct}=="0e28", MODE="0666"

   RULE
   ```

3. Reload the rules and re-apply them:

   ```
   sudo udevadm control --reload-rules && sudo udevadm trigger
   ```

4. Unplug the printer, plug it back in, and restart the app. Print a test page.

Run the app as your normal user, not with `sudo` — a rule that works only for root defeats the point.

## Still stuck?[​](#still-stuck "Direct link to Still stuck?")

Use **Copy setup report** on the trouble screen and paste it into your message, along with the `lsusb` line for your printer.

[Discord Community](https://wcpos.com/discord)<support@wcpos.com>
