LoginSignup
2
1

More than 3 years have passed since last update.

cupsサーバ on Ubuntu Server

Last updated at Posted at 2021-06-29

当研究室のシステム

概要

cupsサーバの設定記録.ブラウザ経由でのプリンタの追加などがhttps経由でないと出来なくなったみたい.そのためCUI/CLIでプリンタの管理を行うための記録.cupsサーバに関する情報のみとする.

  • Ubuntu Server上でcupsサーバを動かすことを考えているが,サーバの設定には言及しない.
  • クライアントの設定も多様(当研究室で使用しているLTSPサーバなら設定ファイルに一行加えるだけ)なので,クライアントの設定についても言及しない.

インストール・設定

例として使用するサーバ情報

  • FQDN
    • cups.mylab.ac.jp
      • サーバの名前
        • cups
      • サーバが所属するドメイン
        • mylab.ac.jp
  • IP
    • 192.168.0.1/24
      • IP
        • 192.168.0.1
      • ネットワークアドレス
        • 192.168.0.0
      • ネットマスク
        • 255.255.255.0

インストール

$ sudo apt install cups

設定

編集対象ファイルは以下の通り.

  • /etc/cups/cupsd.conf

変更点・重要な部分のみ記載.

cupsd.conf
Listen *:631
ServerAlias cups.mylab.ac.jp
BrowseLocalProtocols all
<Location />
  Allow 192.168.0.0/24
</Location>
<Location /admin>
  Allow 192.168.0.0/24
</Location>
<Location /admin/conf>
  Allow 192.168.0.0/24
</Location>
  • ServerAlias
    • cupsのFQDNとあっていないとブラウザ経由でアクセスした時にBad Requestとなる
  • BrowseLocalProtocols all
    • 印刷プロトコル全てブラウズ可能とする
  • <Location /{,admin,admin/conf}>Allow *</Location>
    • ブラウザ経由でのアクセス制限
    • CUI/CLIで設定するから一部無用かもしれない

起動・自動起動設定

$ sudo systemctl start cups
$ sudo systemctl enable cups

ブラウザ経由でcup.mylab.ac.jpにアクセスして起動確認.
ページ上部の「プリンター」をクリックすると管理しているプリンタ一覧を見ることができる(が,もちろんまだ空).

運用

プリンタ管理コマンド

プリンタ管理コマンドlpadminを使用.基本的な使い方は以下の通り.

  • プリンタの追加・設定
    • lpadmin -p プリンタ名 + オプション
      • 指定されたプリンタ名の登録が無ければプリンタの追加となる
      • 指定されたプリンタ名が既に登録されていれば設定の変更となる
      • オプション
        • -E
          • 使用可能にしてジョブ受付を開始する
          • -d, -p , -xの前に付けると暗号化してサーバに接続する
        • -L "文字例"
          • 設置場所を文字列情報として登録する
        • -v device-uri
          • プロトコルの設定を行う
        • -P ppdファイル
          • 設定に使用するppdファイルを指定する
  • デフォルトプリンタの指定
    • lpadmin -d プリンタ名
      • 指定されたプリンタ名が登録されていなければならない
  • プリンタの削除
    • lpadmin -x プリンタ名
      • 指定されたプリンタ名が登録されていなければならない
      • 対応するppdファイルも削除される

プリンタの追加

説明用の例を以下の通りとする.

  • プリンタのIP
    • 192.168.0.2
  • プリンタのppdファイル名
    • printer.ppd
      • メーカーからダウンロードし/root/bin/以下に保存
  • プリンタの登録名
    • myprinter
  • プリンタの設置場所
    • "うちの部屋"
      • 別に設置場所を登録しなくてもいいけど例として...

LPD/LPRプロトコルの場合

$ sudo lpadmin -p myprinter -E -L "うちの部屋" -v lpd://192.168.0.2/8080 -P /root/bin/printer.ppd

確認

ブラウザ経由で「プリンター」の一覧を見ると登録されている.
またppdファイルも/etc/cups/ppd/myprinter.ppdとしてprinter.ppdがコピーされている.

各種情報

印刷プロトコル

  • LPD/LPR (Line Printer Daemon protocol / Line Printer Remote protocol)
    • リモートプリンタに印刷ジョブを送信するためのもの.
  • AppSocket
    • RAW, JetDirect, Windows TCPmonとも呼ぶ.
  • IPP(Internet Printer Protocol)
    • ローカルまたはインターネット上で実行できるもので,一番新しくとりあえずおすすめ
  • dnssd
    • Mac用?
2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1