Ubuntu Printing
In building 32 all users who wish to print must be on the CSAILPrivate wireless network or wired CSAIL Ethernet. In building 45 printing is available wirelessly via MIT Secure or wired Ethernet configured on CSAIL subnet (mostly 6th and 7th floors).
Ubuntu Printing
CSAIL Ubuntu machines use CUPS (Common Unix Printing System) for printing. For full documentation, see the CUPS help.
CUPS Info
You can monitor and manage print jobs through CUPS:
- View all printers and status: http://cups.csail.mit.edu:631/printers
- View current print jobs: http://cups.csail.mit.edu:631/jobs
Available Printers
<table>
Quick Start
Using the XFCE Printer Manager (GUI)
- Open XFCE Menu (upper left) → Settings → Printers
- View all available CSAIL printers
- Right-click your preferred printer and select “Set As Default”
- Select “Set as my personal default printer”
Using the Command Line
Print a file using:
lpr -Pprinter-name filename.pdf
Replace printer-name with the queue name from the printer list above.
Command Line Options
CUPS supports many printing options via the command line. Use the format:
lpr -Pqueue-name -o option=value filename
Multiple options can be specified by adding additional -o flags.
Common Options
| Option | Syntax | Notes |
|---|---|---|
| Duplex (2-sided) | -o sides=two-sided-long-edge |
Default |
| Simplex (1-sided) | -o sides=one-sided |
|
| No banner page | -o job-sheets=none |
|
| Print banner | -o job-sheets=standard |
|
| N-up printing | -o number-up=N |
N = 1, 2, 4, 6, 9, or 16 |
For more options, see the CUPS documentation.
Advanced Options
Printer-Specific Options
Different printers support different options (paper tray, quality, etc.). List all available options for a printer:
lpoptions -p printer-name -l
Output format:
OptionName/Long Option Name: value1 *value2 value3
The asterisk (*) indicates the default value. To use a different value for a single print job:
lpr -Pprinter-name -o OptionName=value3 file.pdf
Example: Print from tray 2 with high-resolution quality:
lpr -Pxerox0 -o InputSlot=Tray2 -o OutputMode=HiResPhoto file.pdf
Saving Custom Print Profiles
Repeatedly specifying multiple options is tedious. Save them as a printer instance using the format printer-name/instance-name:
lpoptions -p xerox0/photo -o number-up=4 -o sides=one-sided -o InputSlot=Tray2 -o OutputMode=HiResPhoto
Now print with all those options using:
lpr -Pxerox0/photo file.pdf
View your saved options:
lpoptions -p xerox0/photo
Options are stored in ~/.lpoptions.
Non-CSAIL Ubuntu Printer Setup
Access All CSAIL Printers
For Ubuntu/Debian machines not running CSAIL’s TIG-managed configuration:
-
Create
/etc/cups/client.conf:sudo nano /etc/cups/client.conf
-
Add this line:
ServerName cups.csail.mit.edu
-
Restart CUPS:
sudo systemctl restart cups.service
Access Specific CSAIL Printers
To add individual CSAIL printers to a non-CSAIL machine:
sudo lpadmin -p printer-name -v ipp://cups.csail.mit.edu/printers/printer-name
sudo cupsenable printer-name
sudo cupsaccept printer-name
Replace printer-name with the queue name from the CUPS printer list.
Note: You can omit sudo if you’re in the lpadmin group. This approach is useful if you print to both CSAIL and home printers.
Troubleshooting
Printer not appearing in list:
- Verify you’re on CSAILPrivate or wired CSAIL Ethernet
- Check CUPS printer status
- Try restarting CUPS:
sudo systemctl restart cups.service
Print jobs stuck in queue:
- View jobs:
lpstat -o - Cancel a job:
cancel job-id - Clear all jobs:
cancel -a
Permission denied errors:
-
Add your user to the
lpadmingroup:sudo usermod -aG lpadmin $USER
-
Log out and back in
Still having issues? Contact help@csail.mit.edu or visit TIG at 32-270.
Resources:


