Tự tạo Print Server trên Ubuntu với CUPS

Nhà mình có cái máy in đời cũ HP LaserJet P1006 sử dụng cổng USB để kết nối với máy tính, trước giờ cắm vào máy PC để in giấy tờ linh tinh. Sẵn hôm nay vừa lục từ kho ra được con laptop Lenovo S10-3T đã mua hơn chục năm trước với cấu hình cực kỳ cùi bắp nên mình quyết định lấy em nó ra cho chạy Ubuntu Server để vọc vạch và sẵn làm print server luôn.

Trước khi bắt đầu, mình xin tóm tắc lại các lợi ích khi sử dụng CUPS làm print server:

Sau đây mình ghi lại các bước mình đã thực hiện để cấu hình em nó làm print server trên Ubuntu

1. Điều kiện tiên quyết

Để thực hiện các bước bên dưới, cần phải thoả điều kiện sau:

  • Máy tính đang chạy hệ điều hành Linux (Ubuntu)
  • Máy in đã kết nối với máy tính qua cổng USB

2. Cài đặt CUPS

CUPS (Common Unix Printing System) là một phần mềm mã nguồn mở giúp quản lý và chia sẻ máy in, được sử dụng rất phổ biến trên các hệ điều hành Linux. Vì CUPS sử dụng giao diện web để cấu hình và quản lý máy in nên rất phù hợp để làm print server chạy trên máy chủ Linux.

Để cài đặt CUPS cho Ubuntu, thực hiện lệnh sau:

$ sudo apt install cups

Mặc định thì CUPS chỉ cho phép truy cập nội bộ, từ localhost. Để cho phép truy cập từ các máy khác trên cùng mạng, thực hiện tiếp lệnh sau:

$ sudo cupsctl --remote-any
$ sudo systemctl restart cups

Mặc định thì CUPS sử dụng user “root” để quản lý máy in. Nếu không sử dụng user “root” mà sử dụng một user khác thì cần cấu hình lại file cups-files.conf như sau:

$ sudo nano /etc/cups/cups-files.conf

# tìm và thay thế <USER> thành tên user dùng đăng nhập Ubuntu
SystemGroup lpadmin <USER>

Ví dụ:
SystemGroup lpadmin myusername

Sau đó khởi động lại CUPS:

$ sudo systemctl restart cups

Cuối cùng thêm người dùng vào group “lpadmin” bằng lệnh:

$ sudo usermod -a -G lpadmin $USER

Sau bước này thì CUPS đã hoạt động. Tuy nhiên do mình cũng sẽ chia sẻ máy in cho các máy tính chạy hệ điều hành Windows nên mình phải làm thêm 1 bước nữa, đó là cài đặt Samba Server.

3. Cài đặt Samba Server

Samba Server là một phần mềm cung cấp giao thức SMB, cho phép chia sẻ tập tin giữa các thiết bị trong mạng nội bộ. Do Samba hỗ trợ cả Linux và Windows nên thường được dùng để chia sẻ tập tin qua lại giữa 2 hệ điều hành này.

Cách cài đặt Samba Server như sau:

$ sudo apt install samba

Sau khi cài đặt, tiếp tục cấu hình Samba bằng lệnh sau:

$ sudo nano /etc/samba/smb.conf

Kéo xuống dưới cùng của tập tin smb.conf, thực hiện các thay đổi sau:

[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
guest ok = yes
read only = yes
create mask = 0700


[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
browseable = yes
read only = no
guest ok = no

Sau đó khởi động lại Samba bằng lệnh:

$ sudo systemctl restart smbd

4. Quản lý máy in bằng CUPS

CUPS sử dụng giao diện web để quản lý máy in, bạn có thể truy cập vào trang này bằng tại địa chỉ:

https://<IP>:631/admin

# Lưu ý: thay thế <IP> bằng địa chỉ IP của máy chủ chạy CUPS

Ví dụ:
https://192.168.1.2:631/admin

Tài khoản đăng nhâp của CUPS cũng chính là tài khoản mà mình dùng để đăng nhập Ubuntu

Lưu ý

Để lấy địa chỉ IP của máy chủ chạy CUPS thực hiện lệnh sau:

$ hostname -I

4.1 Thêm máy in vào CUPS & chia sẻ máy in

Trước khi bắt đầu, đảm bảo mình đã ghim dây USB của máy in vào máy tính chạy CUPS, sau đó thực hiện như sau:

Nhấn vào “Add Printer”

Chọn máy in muốn thêm từ danh sách, sau đó nhấn “Continue”

Đánh dấu vào ô “Share This Printer” rồi nhấn “Continue”

Chọn mã của máy in trong phần “Model”

Nếu không tìm thấy mã máy in của mình ở đây có nghĩa là CUPS không hỗ trợ mặc định trình điều khiển (driver) cho máy in đó. Tuy nhiên, mình vẫn có thể tải driver tại trang https://openprinting.org/printers

Lưu ý

Trong trường hợp của mình, do máy in “HP LaserJet P1006” đã quá cũ nên không được CUPS hỗ trợ mặc định mà mình phải cài đặt thêm driver của HP bằng lệnh sau:

$ sudo apt install hplip hpijs-ppds
$ sudo hp-setup -i

Sau đó mình tải lại trang (reload) là thấy mã máy in của mình ở đây.

Chọn xong nhấn vào nút “Add Printer”

Khi thấy báo như trên là máy in của mình đã được thêm vào CUPS thành công.

Cuối cùng mình quay trở lại trang quản trị bằng cách nhấn vào menu “Administrator”

Đánh dấu vào ô “Share printers connected to this system” rồi nhấn nút “Change Settings”, sau đó đợi CUPS khởi động lại là xong!

4.2 Cấu hình và xoá máy in khỏi CUPS

Để thay đổi cấu hình và xoá máy in ra khỏi CUPS, vào menu Printers

Sau đó chọn tên máy in mình cần cấu hình

5. Kết nối máy in với máy tính Windows

Sau khi cài đặt máy in với CUPS thành công, mình mở laptop đang chạy hệ điều hành Windows 11 và kết nối với máy in như sau:

Nhấn vào nút Search trên Windows và gõ vào “Printer”

Chọn “Add a printer or scanner”

Khi thấy tên máy in xuất hiện, tiếp tục chọn “Add device”

Đợi Windows kết nối đến máy in và cài đặt trình điều khiển (driver). Sau khi thành công sẽ thấy báo “Ready” như trên.

Vậy là mình đã hoàn tất việc chia sẻ máy in của mình.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *