比½正规的作法是,要关闭
cups.service
时,连同其他两个会唤醒
service
cups.socket
cups.path
通通关闭,那就没事了!
比½不正规的作法是,那就强迫
cups.service
注销吧!透过
mask
的方式来½这个服务注销看看!
# 1.
保持
刚刚
状态
关闭
cups.service
启动
cups.socket
,然后注
cups.servcie
[root@study ~]#
systemctl stop cups.service
[root@study ~]#
systemctl mask cups.service
ln
-
s '/dev/null'
'/etc/systemd/system/cups.service'
#
喔耶~其
实这个
mask
作,只是
让启动
½
成空的
置而已!
[root@study ~]#
systemctl status cups.service
cups.service
Loaded:
masked (/dev/null)
Active: inactive (dead) since Tue 2015
-
08
-
11 23:14:16 CST; 52s ago
[root@study ~]#
systemctl start cups.service
Failed to issue method call: Unit cups.service is masked.
#
再也
醒!
上面的范例你可以仔细推敲一下~原来整个启动的½本配置文件被连½到
/dev/null
这个空装置~因
此,无论如何你是再也无法启动这个
cups.service
了!
透过这个
mask
功能,你就可以不必管其他
相依服务可能会启动到这个想要关闭的服务了!虽然是非正规,不过很有效!
^_^
那如何取消注销呢?当然就是
unmask
即可啊!
[root@study ~]#
systemctl unmask cups.service
rm '/etc/systemd/system/cups.service'
[root@study ~]#
systemctl status cups.service
cups.service
-
CUPS Printing Service
Loaded: loaded (/usr/lib/systemd/system/cups.service; disabled)
Active
: inactive (dead) since Tue 2015
-
08
-
11 23:14:16 CST; 4min 35s ago
#
好佳在有恢复正常!
17.2.2
透过
systemctl
观察系统上所有的服务
上一小½谈到的是单一服务的启动
/
关闭
/
观察,以及相依服务要注销的功能。那系统上面有多少的服
务存在呢?这个时候就得要透过
list-units
list-unit-files
来观察了!
细部的用法如下:
[root@study ~]#
systemctl [command]
[
--
type=TYPE] [
--
all]
command:
list
-
units
:依据
unit
列出目前有
启动
unit
。若加上
--
all
列出
没启动
的。
list
-
unit
-
files
:依据
/usr/lib/systemd/system/
文件
½
所有
文件
列表
明。
--
type=TYPE
:就是之前提到的
unit type
,主要有
service, socket, target