人生でもうプリンタなんて設定する事も無かろう、
と思ってたのになぜか居なくなりませんよね。紙じゃないと死んじゃう人。
レガシーオブレガシーだなと思いつつ、
クソほど使いづらいWindowsサーバで疲弊してる同僚たちを救うために
最小の手間でプリントサーバを立ててみました。
以前、Ubuntu18で書いた記事なのですがありがたいことに定期的にLGTMを頂きますので、最新LTSで再検証しました。
ubuntu24がセットアップされた状態から、ざくざく行きます。
大本はこちらを参考にさせて頂きました。
https://www.linuxbabe.com/ubuntu/set-up-cups-print-server-ubuntu-bonjour-ipp-samba-airprint
いつも最初にやること
sudo apt update
sudo apt upgrade
先に avahi (mDNS) の設定をしておく。
# ネットワーク上のサーバやプリンタを勝手に見つけてくれる便利なデーモン。iOSやAndroidで自動的に出てくる
sudo apt install -y avahi-daemon
sudo systemctl start avahi-daemon
sudo systemctl enable avahi-daemon
sudo ufw allow 5353/udp
CUPS 入れる
# CUPS 入れる
sudo apt install -y cups
# CUPS 起動する
sudo systemctl start cups
# CUPS 毎回起動するように設定
sudo systemctl enable cups
# CUPS 動いてるの確認
sudo systemctl status cups
CUPS 設定弄る
# nano で CUPS設定ファイル修正 (nano の終了は ctrl-x)
sudo nano /etc/cups/cupsd.conf
/etc/cups/cupsd.confの中を4箇所変える:
1:
16行目辺り
# Only listen for connections from the local machine.
Listen localhost:631
Listen localhost:631 を
Port 631 に
2:
19行目 あたり
# Show shared printers on the local network.
Browsing Off
Browsing Off を
Browsing On に
# 2025 追記 Ubuntu24だと表記が変わってました
Browsing No を
Browsing Yes に
3, 4 :
29行目、
35行目あたり (2回・同内容) / Ubuntu24 だと4回くらい
<Location />
Order allow,deny
</Location>
を、
<Location />
Order allow,deny
Allow @LOCAL
</Location>
に
他の部分もこんな感じで
# Restrict access to log files...
<Location /admin/log>
AuthType Default
Require user @SYSTEM
Order allow,deny
Allow @LOCAL
</Location>
これが出来たら「ctrl - x」でnanoを終了する。
CUPS再起動して、ファイヤウォール開く:
# CUPS 再起動
sudo systemctl restart cups
# ポート631をLANに開放
sudo ufw allow in from 192.168.0.0/24 to any port 631
# 192.168.0.0 はご自分の環境に合わせてください
http://サーバ名:631
をブラウザで開くと、cupsの設定画面が開くので、後は画面の指示にしたがって
プリンタを追加する
ここでつまづいた
以下のグループにユーザを追加しておかないとフォビドゥンされてします。ubuntuだけみたい
# これちょっとハマりポイント。
# WEBから "add printer" した時に「forbidden」が出る。
sudo usermod -a -G lpadmin taiyodayo
# ubuntuだと、プリンタ管理用の特権グループが最初から作ってある。
# centosとかだとまた違う流儀みたい
色んなガイドに「Linuxマシンにプリンタドライバインストール」と書いてるが
必要無い。
プリンタ追加時に、webUIから直接PPDファイル上げたほうが早いと思う。
非公式だが、Mac用のドライバからPPD持ってくればだいたい動く(同じCUPS用なので)
Macの方は、これ叩くと既にCUPSが稼働してる所が覗ける
cupsctl WebInterface=yes
これ叩いてから http://localhost:631
「既存プリンタの設定」が覗けるのでものすごく参考になります。
設定をコピペするだけで動くと思われます。
カタリナは cups 2.2.7、ubuntu18.04 では 2.2.9 がデフォルトでした。
Ubuntu24でも検証したので追記だよ
ありがたいことに結構な方から今も見て頂けているようで最新LTSの ubuntu24 でも検証しました!
上記に一部表記が変わったくらいで、ほぼそのまま動きますね
CUPS は 2.4.7
に上がって、UIがダークモードに対応していました。笑
なんかもう、以前より更に進化したのかポチポチプリンタ選ぶだけで、勝手にドライバのインストールまで進んでくれて
もうほぼほぼ全自動で認識してくれましたね。
カンタン過ぎるやろ!良い時代ですねー