1. 首页
  2. > 税务筹划 >

启动程序地址用英语怎么说(生活英语怎么说)


和往常一样,但凡是在 Linux 中看到什么稀奇古怪,新式猎奇,都会调出man页面一探究竟。因为第一次接触 systemctl 命生活令,所以我就运行了:


man systemctl

我发现在 Unit Commands(单元命令)下,有一个 start 命令怎么;而在 Unit File Commands 下,还有一个 enable 命令。突然我顿时慌了,感觉这几年的英文都白学了。原来这两个词的意思不一样啊。


吻说住自己之后,仔细打量了一番两者的区别:


start:





enable:





洋洋洒洒600多字英文,看完我更慌了。好在认识的单词不多,拣我程序们认识的唠唠。


大概意思是,enable 命令运行的时候说,后面需要跟上单元文件。如果你就给个单元名,那么enable命令会自动去各种单元文件的路径中搜索,寻找匹配单元名的文件。或者呢,你也可以给出指向单元文件的完整路径,这样就省得enable命令去一个个找了。不过如果这个路径不走寻常路,不在常规的单元文件路径当中,还会专门创建一个表征链接,熟悉Windows的朋友可以把它当作快捷方式。把这个奇葩单元文件连接到单元配置路径中去。确保比如 start 命令需要这个文件的时候,能够找着。


enable 命令还会根据单怎么元文件的 [Install] 段落启动的内容,在特定路径下,生成表征链接(类似Windows的快捷方式文件),其中就有用于自动启动的程序路径。如果在自动启动的路径下,创建表征链接,这样系统开机启动后,回到这个路径来,挨个启动表征链接就完事了。


好奇心促使我又看了一眼 nginx 和 docker 的单元文件的内容,重点就是 [Install] 段落。


分别运行命令:


systemctl cat nginx

systemctl cat docker

nginx 和 docker 的 [install] 段落内容一模一样:





这里有个新名词叫 mu地址lti-user.target ,.target 其实也是单元文件,后续文章将进一步展开。大体上,.target就类似我们去快餐店点的套餐,一个套餐里面,有汉生活堡、可乐、土豆泥、沙拉、地址玩具等等。那么nginx 和 docker 就相当于是汉堡和可乐。Ubuntu启动以后,默认点了一份 multi-user.target 套餐,店小二一听,好嘞,这位爷。等小的我给您上菜啊。挨个启动 nginx 和 doc英语ker 。这样就实现了开机自动启动服务的操作。


说了这么多,还是没有提到 enable(启用)英语和 start(启动)的区别啊。


别急,下面用专门有一段是说:别把 enable 和 start 搞混。看来和我一样水平的人不少啊。


enable 和 start 是互不相关的。一个单元可以启动不启用;用也可以启用不启动。之前我们提到,enable会在不同的特定路径下,创建表征链接。nginx 和 docker 默认都是在自动启动的路径下创建表征链接,所以对应于它们的enable行为就是开机自动启动。除了自动启动之外,还有用于其它目的的特殊路径。比如在插入U盘时,启动服务的路径。这样enable的行为就是在插入U盘时,启动某个单元。


而 start 命令,针对服务单元的话,就只是为服务生成一个守护进程。


所以如果你希望Ubuntu在自动启动的时候,就能够启动nginx 的话,可以运行


sudo systemctl enable nginx

但是如果nginx 现在并没有在运行,即使运行上面这个启动命令,也不会启动nginx,除非重启电脑。想要开机自动启动nginx,同时现在就需要nginx运行的话,可以:


sudo systemctl enable nginx --now


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至123456@qq.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息