web-dev-qa-db-ja.com

systemdでの再起動時にCUPSサービスを無効にする方法は?

プリンターがたくさんあるネットワークによく接続しています。プリンタの検出が進行中の場合、GNOMEで多くの注意散漫なメッセージがポップアップ表示されます。私はめったにプリンタを使用しないので、ほとんどの場合CUPSを無効にしておくことを望みます。 CUPSを停止すると機能し、迷惑な通知を排除します。

systemctl stop cups

起動時に無効にしたいのですが。意外にも、無効にした後

systemctl disable cups

CUPSは再起動後も実行されます。ステータスコマンド

systemctl status cups

作り出す

● cups.service - CUPS Scheduler
   Loaded: loaded (/lib/systemd/system/cups.service; disabled; vendor preset: enabled)
  Drop-In: /etc/systemd/system/cups.service.d
   Active: active (running) since Tue 2018-11-06 02:35:50 PST; 11s ago

サービスを無効にすると、再起動後にサービスが実行されなくなると思っていました。プリセットのためにアクティベーションは発生しますか? 「無効」ステータスを--preset-modeで事前設定しようとしましたが、機能しませんでした。

私のOSはDebian Stretchです。

systemctl --version
systemd 232
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN
6

いいえ、プリセットのためアクティブ化は行われません。

systemctl disable cupsは自動起動を防ぐだけです。

別のサービスで必要だったため、とにかく起動された可能性があります。

これで確認できます。

systemctl --reverse list-dependencies cups.service

その場合は、それらのサービスも評価して無効にする必要があります。

または、影響を気にせず、完全に開始されないようにする場合は、マスクします。

systemctl mask cups

9
Joseph Tingiris

Cupsパッケージは3つのsystemdユニットファイルを出荷します:cups.servicecups.socketおよびcups.path

後者の2つは、ソケットのアクティブ化とパスのアクティブ化に使用され、サービスが有効になっていない場合でもサービスをトリガーします。

再起動時にソケットまたはパスのアクティブ化が原因でカップが起動しないようにするには、3つすべてを無効にする必要があります。

systemctl disable cups.service cups.socket cups.path
3
filbranden